Linux用戶和密碼文件格式詳解

   本文介紹了Linux系統下/etc/passwd以及/etc/shadow兩個文件的格式。這兩個文件,一個是用戶賬戶信息數據的存儲,另一個是用戶密碼信息以及密碼超期相關信息的存儲。 這兩個文件都是使用冒號做爲分隔符來分隔字段的。爲了安全起見,這兩個文件都只有超級管理員可以讀寫。

一、 /etc/passwd 文件的格式,使用冒號分隔的7段用戶賬戶信息

account:password:UID:GID:GECOS:directory:shell (帳號:密碼:用戶ID:組ID:一般的信息:目錄:shell)

示例:root:x:0:0:root:/root:/bin/bash

  1. 賬戶名稱
  2. 密碼佔位符,用x代替
  3. 用戶標識
  4. 基本組標識
  5. GECOS,可以理解爲用戶全名
  6. 用戶家目錄
  7. 用戶shell

二、/etc/shadow文件格式,使用冒號分隔的9段密碼相關信息

liuqing:$6$HE1uq5GI$1BUG8ACoUscfpvuW:18192:0:99999:7:::

1.login name 登錄名:必須是有效的賬戶名,且已經存在於系統中。

  1. date of last password change 加密了的密碼:加密了的密碼,這個密碼是加了salt這個隨機數的密碼。用$進行分隔的。這樣,就不會讓使用相同密碼的用戶得到同一個加密的值。 而在驗證密碼時,將用戶輸入的密碼與salt(存在於shaodw文件對應用戶行中的)組合,與加密密碼進行一致性驗證。
  2. date of last password change 最後一次更改密碼的日期: 密碼上一次更改時的日期,這個日期是從1970年1月1日開始計算的。0表示用戶在下次登錄時應該更改密碼,空字段表示密碼老化功能被禁用。
  3. date of last password change 密碼的最小使用期限: 用戶更改完一次密碼後,最小需要多少天才能再次更改密碼。空字段或者0表示沒有最小密碼使用期限。
  4. maximum password age 密碼最長使用期限:用戶的密碼最長使用多少天后,必須進行更改。過了這個時間點後,密碼仍舊是有效的,但下次登錄的時候需要更改密碼。如果這個字段爲空則表示沒有最長密碼使用期限,沒有密碼行告警時間段,沒有密碼禁用時間段。如果最大密碼期限小於最小密碼期限,則用戶不能更改密碼。
  5. password warning period 密碼警告時間段:密碼過期之前,提前警告用戶的天數。空字段或者0表示沒有密碼警告期限。
    7.password inactivity period 密碼禁用期:密碼過期(密碼最長使用期限)後,仍然接受此密碼的天數(在此期間,用戶應該在下次登錄時修改密碼)。密碼到期並且過了這個寬限期以後,使用當前密碼將不能登錄。空字段表示沒有強制密碼過期。
  6. account expiration date 賬戶過期日期:賬戶的過期的日期,表示從1970年1月1日開始的天數。注意,賬戶過期不同於密碼過期,賬戶過期時,用戶將不被允許登錄;密碼過期時,用戶將不被允許使用其密碼進行登錄。空字段表示賬戶永不過期。
  7. 保留字段:此字段保留以作將來使用。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章