首頁 >運維 >linux運維 >linux的使用者設定檔是什麼

linux的使用者設定檔是什麼

青灯夜游
青灯夜游原創
2023-02-14 11:37:395205瀏覽

linux使用者設定檔有四個:1、“/etc/passwd”,系統使用者花名冊,儲存了系統中所有使用者的基本信息,並且所有使用者都可以對此檔案執行讀取操作; 2、“/etc/shadow”,用於儲存系統中使用者的密碼資訊;3、“/etc/group”,用於儲存系統中使用者群組的所有資訊;4、“/etc/gshadow”,用於儲存群組使用者的密碼資訊。

linux的使用者設定檔是什麼

本教學操作環境:linux7.3系統、Dell G3電腦。

Linux 使用者設定檔

以下將討論 Linux 使用者管理中涉及的四個設定檔。

這四個檔案是使用者管理的核心,系統中使用者和使用者群組的任何操作,最終的落腳點就是這四個檔案。這四個文件可分為兩組,第一組文件存放著用戶相關配置數據,第二組文件中存放著用戶組相關配置數據。

  • 使用者相關設定資料
    • /etc/passwd:系統使用者花名冊,儲存了系統中所有使用者的基本信息,並且所有使用者都可以對此文件執行讀取操作。
    • /etc/shadow:系統使用者影子文件,用於儲存Linux 系統中使用者的密碼訊息,又稱為「影子文件」。
  • 使用者群組相關配置資料
    • #/etc/group:系統使用者群組花名冊,是使用者群組配置文件,即使用者群組的所有資訊都存放在此文件中。
    • /etc/gshadow:系統使用者群組影子文件,用於儲存群組使用者的密碼資訊

用法

/etc/passwd 裡面有很多行,每行儲存了一個使用者的信息。每行有七個字段,每個字段用冒號分隔:

  • 第一個字段:用戶名
  • 第二個字段 :密碼(用x 來代替,真的密碼是放在/etc/shadow 文件中)
  • #第三字段:用戶UID
  • 第四欄位:使用者的主用戶群組GID
  • 第五欄位:使用者描述(如果不設定就是空白)
  • ##第第六欄位:用戶家目錄所在位置
  • 第七個欄位:使用者使用的Shell 類型

/etc/shadow 是/etc /passwd 的影子檔案。一般來說,shadow 檔案內容的行數與 passwd 檔案內容行數應該是相同的。 shadow 檔案每行也儲存著使用者的信息,和 passwd 檔案互為補充。兩個檔案合在一起就可以完整的描述系統中的每個使用者。 shadow 檔案每行有九個欄位:

  • 第一個欄位:用戶名
  • 第二個欄位:加密的用戶密碼(如果該欄位是星號或感嘆號,表示該使用者不能作為普通使用者正常登入系統)
  • #第三個欄位:密碼最後一次修改(從1970/1/1 日起到密碼最後一次被修改的天數)
  • 第四欄位:密碼修改最小時間間隔(兩次修改使用者密碼之間所需的最小天數,預設為0,表示可以隨時修改使用者密碼)
  • 第五欄位:密碼修改最大時間間隔(使用者密碼保持有效的最大天數,預設是99999,大概273 年來,也就是不強制定期更好的意思)
  • 第六欄位:密碼失效警告時間(從系統開始警告使用者到使用者密碼正式失效之間的天數,預設是7,表示不啟用此功能)
  • 第七字段:用戶口令作廢多少天后,系統會停用此用戶,停用後系統將不允許此用戶登錄,也不會提示用戶過期(預設為空,表示不啟用此功能)
  • 第八欄位:使用者失效時間(相當於規定了使用者的生存期,單位為天,相對的起始時間也是1970/1/1。期滿後該使用者就無法登入了,預設為空,表示此使用者永久可用)
  • 第九欄位:保留欄位。目前為空。

/etc/group 裡面有很多行,每行儲存了一個使用者群組的資訊。每行有四個字段,每個字段用冒號分隔:

  • 第一個欄位:使用者群組名稱
  • 第二欄位:使用者群組密碼(使用者群組密碼很少用到,只有在大型伺服器上針對許多使用者和群組指定一些關係結構比較複雜的權限模型時,設定使用者群組密碼才有必要。預設用x 替代,真的密碼放在/etc/gshadow 檔案中)
  • 第三字段:用戶群組GID
  • 第四字段:從屬該用戶群組的用戶列表,如果多個用戶,使用逗號分隔。如果該欄位為空,並不一定表示該用戶群組沒有用戶,因為如果該用戶群組是某個用戶的主用戶群組,則該用戶是不會顯示在清單中的。

/etc/gshadow 是 /etc/group 的影子檔案。一般來說,gshadow 檔案內容的行數與 group 檔案內容行數應該是相同的。 gshadow 檔案每行也儲存使用者群組的信息,和 group 檔案互為補充。兩個檔案合在一起就可以完整的描述系統中的每個使用者群組。 gshadow 檔案每行有四個欄位:

  • 第一個欄位:使用者群組名稱
  • 第二個欄位:使用者群組加密後面的密碼(空或感嘆號表示沒有密碼)
  • 第三欄位:群組管理員(可以為空,如果有多個使用者群組管理員需要用逗號分隔)
  • 第四欄位:從屬該用戶群組的用戶清單

當我們使用useradd 指令新增用戶,並使用passwd 指令為剛新增的用戶設定密碼時,就會自動將使用者資訊寫入/etc/passwd 和/etc/shadow 檔案中。同理,使用 groupadd 指令新增使用者群組時,也會自動將訊息寫入 /etc/group 和 /etc/gshadow。理論上,我們可以透過修改這些設定檔的內容來修改使用者或使用者群組的任意屬性,但卻不建議這麼做。因為手動修改設定檔很容易造成系統使用者或使用者群組管理混亂。

為什麼要將使用者資訊分開存到兩個檔案呢?出於系統需求,passwd 檔案對於所有使用者都是可讀的,因為使用者需要保護的資訊如密碼就不能放在 passwd 中了,這部分資訊就放在了 shadow 檔案中。 shadow 檔案只有根使用者才能查看和修改,相對更加安全。使用者群組資訊分開存放的原因和使用者資訊分開存放的原因完全相同。

root@centos:~# ls -l /etc/passwd
-rw-r--r-- 1 root root 4500 6月   1 00:30 /etc/passwd

root@centos:~# ls -l /etc/shadow
-rw-r----- 1 root shadow 5251 6月   1 00:30 /etc/shadow

root@centos:~# ls -l /etc/group
-rw-r--r-- 1 root root 1664 6月   1 00:30 /etc/group

root@centos:~# ls -l /etc/gshadow
-rw-r----- 1 root shadow 1354 6月   1 00:30 /etc/gshadow

相關推薦:《Linux影片教學

#

以上是linux的使用者設定檔是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn