Linux使用者及組相關檔案介紹

2022-08-23 06:36:11 字數 4495 閱讀 2774

1. 使用者和組相關的配置檔案

linux使用者和組的主要配置檔案:

/etc/passwd: 使用者及其屬性資訊(名稱、uid、主組id等),可以用vipw=vi /etc/passwd進行修改資訊 通過pwck驗證;

/etc/group: 組及其屬性資訊,同樣可以通過vigr = vi /etc/group 進行修改資訊 通過grpck驗證;

/etc/shadow: 使用者密碼及其相關屬性;

/etc/gshadow: 組密碼及其相關屬性。

1.1. /etc/passwd 檔案 (1行7列)

系統使用者配置檔案,是使用者管理中最重要的乙個檔案。

它記錄了linux系統中每個使用者的一些基本屬性,並且 對所有使用者可讀。

/etc/passwd中 每一行記錄 對應 乙個使用者,每行記錄又被冒號 (:)分割,其格式和具體含義如下:

使用者名稱 : 口令 : 使用者標識號 : 組標識號 : 注釋性描述 : 主目錄 : 預設shell

使用者名稱: 是代表使用者賬號的字串。

口令: 存放著加密後的使用者口令,雖然這個字段存放的只是使用者口令的加密串,不是明文,但是由於/etc/passwd檔案對所有使用者都可讀,所以這仍是乙個安全隱患。

因此,現在許多linux 版本都使用了shadow技術,把真正加密後的使用者口令存放到/etc/shadow檔案中,而在/etc/passwd檔案的口令欄位中只存放乙個特殊的字元,例如用「x」或者「*」 來表示。

使用者標識號: 就是使用者的uid,每個使用者都有乙個uid,並且是唯一的,通常uid號的取值範圍是0~65535,0是超級使用者root的標識號,1~99由系統保留,作為管理賬號;

普通使用者的標識號從100開始。而在linux系統中,普通使用者uid預設從500開始。uid是linux下確認使用者許可權的標誌,使用者的角色和許可權都是通過uid來實現的,因此多個使用者公用乙個uid是非常危險的,會造成系統許可權和管理的混亂。

例如:將普通使用者的uid設定為0後,這個普通使用者就具有了root使用者的許可權,這是極度危險的操作。因此要盡量保持使用者uid的唯一性。

組標識號: 就是組的gid,與使用者的uid類似,這個字段記錄了使用者所屬的使用者組。

它對應著/etc/group檔案中的一條記錄。

注釋性描述: 欄位是對使用者的描述資訊,比如使用者的住址、**、姓名等等。

主目錄: 也就是使用者登入到系統之後預設所處的目錄,也可以叫做使用者的主目錄、家目錄、根目錄等等。

預設shell: 就是使用者登入系統後預設使用的命令直譯器,shell是使用者和linux核心之間的介面,使用者所作的任何操作,都是通過shell傳遞給系統核心的。linux下常用的shell有:sh、bash、csh等。

管理員可以根據使用者的習慣,為每個使用者設定不同的shell。

1.2. /etc/shadow 檔案(1行9列)

使用者影子檔案,由於/etc/passwd檔案是所有使用者都可讀的,這樣就導致了使用者的密碼容易出現洩露,因此,linux將使用者的密碼資訊從/etc/passwd中分離出來,單獨的放到了乙個檔案中,這個檔案就是/etc/shadow,該檔案只有root使用者擁有讀許可權,從而保證了使用者密碼的安全性。

下面介紹下/etc/shadow檔案內容的格式:

使用者名稱 : 加密口令 : 最後一次修改時間 : 最小時間間隔 : 最大時間間隔 : 警告時間 : 不活動時間 : 失效時間 : 保留字段

使用者名稱: 與/etc/passwd檔案中的使用者名稱有相同的含義。

加密口令: 存放的是加密後的使用者口令字串,如果此字段是「*」、「!」、「x」等字元,則對應的使用者不能登入系統。

最小時間間隔: 表示兩次修改密碼之間的最小時間間隔。

最大時間間隔: 表示兩次修改密碼之間的最大時間間隔,這個設定能增強管理員管理使用者的時效性。

保留字段: linux的保留字段,目前為空,以備linux日後發展之用。

1.3. /etc/group 檔案(1行4列)

使用者組配置檔案,使用者組的所有資訊都存放在此檔案中。

下面介紹下/etc/group檔案內容的格式:

組名 : 口令 : 組標識號 : 組內使用者列表

組名: 是使用者組的名稱,由字母或數字構成。與/etc/passwd中的使用者名稱一樣,組名不能重複。

口令: 存放的是使用者組加密後的口令字串,密碼預設設定在/etc/gshadow檔案中,而在這裡用 「x」 代替,linux系統下預設的使用者組都沒有口令,可以通過gpasswd來給使用者組新增密碼。

組標識號: 就是gid,與/etc/passwd中的組標識號對應。

組內使用者列表: 顯示屬於這個組的所有使用者,多個使用者之間用逗號分隔。

1.4. /etc/gshdow 檔案(1行4列)

組密碼及其相關屬性。

下面介紹下/etc/gshdow檔案內容的格式:

群組名稱 : 群組密碼 : 組管理員列表 : 以當前組為附加組的使用者列表

群組名稱: 就是群組名稱

群組密碼:

組管理員列表: 組管理員的列表,更改組密碼和成員

以當前組為附加組的使用者列表: (分隔符為逗號)

1.5. 總結4個檔案

/etc/passwd檔案格式 一共7列:

login name:登入用名(wang)

passwd:密碼 (x) 在早期版本這裡存的的確是密碼目前已經變成佔位符x,真正的密碼檔案已經移動到/etc/shodow下

uid:使用者身份編號 (1000)

gid:登入預設所在組編號 (1000)

gecos:使用者全名或注釋

home directory:使用者主目錄 (/home/wang)

shell:使用者預設使用shell (/bin/bash)

/etc/shadow檔案格式 一共有9列:

登入用名

使用者密碼:一般用sha512加密

從2023年1月1日起到密碼最近一次被更改的時間

密碼再過幾天可以被變更(0表示隨時可被變更)

密碼再過幾天必須被變更(99999表示永不過期)

密碼過期前幾天系統提醒使用者(預設為一周)

密碼過期幾天後帳號會被鎖定

從2023年1月1日算起,多少天後帳號失效

保留字段

/etc/group檔案格式 一共分為4列:

群組名稱:就是群組名稱

群組密碼:通常不需要設定,密碼是被記錄在 /etc/gshadow

gid:就是群組的 id

以當前組為附加組的使用者列表(分隔符為逗號)

/etc/gshdow檔案格式 一共分為4列:

群組名稱:就是群組名稱

群組密碼:

組管理員列表:組管理員的列表,更改組密碼和成員

以當前組為附加組的使用者列表:(分隔符為逗號)

2./etc/login.defs檔案

用來定義建立乙個使用者時的預設設定,比如指定使用者的uid和gid的範圍,使用者的過期時間、是否需要建立使用者主目錄等等。

3./etc/default/useradd檔案

當通過useradd命令不加任何引數建立乙個使用者後,使用者預設的主目錄一般位於/home下,預設使用的shell是/bin/bash,這些都是存在於/etc/default/useradd這個檔案中。

/etc/default/useradd檔案定義了新建使用者的一些預設屬性,比如使用者的主目錄、使用的shell等等,通過更改此檔案,可以改變建立新使用者的預設屬性值。

改變此檔案有兩種方法:

useradd命令加「-d」引數後,就可以修改配置檔案/etc/default/useradd,使用的一般格式為:

1|useradd -d [-g group] [-b base] [-s shell] [-f inactive] [-e expire ]

每個選項詳細含義如下:

-g default_group

表示新建使用者的起始組名或者gid,組名必須為已經存在的使用者組名稱,gid也必須是已經存在的使用者組gid。與/etc/default/useradd檔案中「group」行對應。

-b default_home

指定新建使用者主目錄的上級目錄,也就是所有新建使用者都會在此目錄下建立自己的主目錄。與/etc/default/useradd檔案中home行對應。

-s default_shell

指定新建使用者預設使用的shell,與/etc/default/useradd檔案中「shell」行對應。

-f default_inactive

指定使用者帳號過期多長時間後就永久停用,與/etc/default/useradd檔案中「inactive」行對應。

-e default_expire_date

指定使用者帳號的過期時間。與/etc/default/useradd檔案中「expire」行對應。

4./etc/skel目錄

在建立乙個新使用者後,會在新使用者的主目錄下看到類似.bash_profile, .bashrc, .bash_logout等檔案,這些檔案是怎麼來的呢,如果想讓新建立的使用者在主目錄下預設擁有自己指定的配置檔案,該如何設定呢?

/etc/skel目錄就是解決這個問題的,/etc/skel目錄定義了新建使用者在主目錄下預設的配置檔案,更改/etc/skel目錄下的內容就可以改變新建使用者預設主目錄的配置檔案資訊。

Linux使用者及組相關檔案介紹

一,使用者賬號檔案 passwd 1,etc passwd 用於儲存使用者的登入名,加密的使用者口令,使用者id uid 預設的使用者組id gid 使用者資訊,使用者主目錄及使用者登入後使用的shell。etc passwd 檔案中域的含義 username 登入名 password 加密的使用者...

Linux使用者及組相關檔案介紹

passwd 使用者賬戶檔案 shadow 使用者影子檔案 group和gshadow 使用者組賬號檔案 用於設定使用者的認證資訊,包括使用者密碼 密碼過期時間等。系統管理者則能用它管理系統使用者的密碼。只有管理者可以指定使用者名稱,一般使用者只能變更自己的密碼。選項 d 刪除密碼,僅有系統管理者才...

linux使用者組相關檔案介紹

1 與使用者 user 相關的配置檔案 如下 etc passwd 注 使用者 user 的配置檔案 如下 etcadow 注 使用者 user 影子口令檔案 2 與使用者組 group 相關的配置檔案 如下 etc group 注 使用者組 group 配置檔案 如下 etc gshadow 注 ...