Linux賬號相關文檔解讀
1.passwd解讀:這個檔案是這樣構造的,每一行代表一個賬號,有幾行就代表有幾個賬號,裡面有好多賬號是系統正常運行所必須的,如bin,daemon,adm等,路徑/etc/passwd
eg:root:x:0:0:root:/bin/bash
每一行用:分開,共七段,分別是:
1)賬號名稱,用來對應UID
2)密碼:早起Unix系統直接在這裡存放密碼,但因為這個檔案所有程序都能夠讀取,這樣一來容易造成密碼數據被竊取,因此這個字段的密碼數據的被放到/etc/shadow中了
3)UID:使用者的標識符,不同的權限對應不同的ID段,具體如下:
0:當UID是0時,代表這個賬號是系統賬號,所以當你要讓其他賬號名稱也具有root權限時,將該賬號的UID改成0即可。
1~499:保留給系統使用的ID,其實除了0之外,其他的UID權限與特性並沒有不一樣。默認500以下的數字讓給系統作為保留賬號只是一個習慣。
由於系統上面啟動的服務希望使用較小的權限去運作,因此不希望使用root身份去運作,所以我們就得要提供這些運作中程序的擁有者賬號才行,這些賬號是不可登陸的。
根據系統賬號的由來,通常系統賬號又約略被區分為兩種:
1~99:有distributions自行建立的系統賬號
100~499:若用戶有系統賬號需求時,可以使用的賬號UID
500~65535:給一般使用者用。不過linux核心2.6.x版可以支持到2^32-1=4294967295這麼大的UID賬號
4)GID:與/etc/group有關
5)用戶信息說明欄:解釋系統這個賬號的意義,可以通過finger指令查閱到該信息
6)家目錄:root,/root;其他,/home/用戶名
8)Shell:用戶使用的bash指令庫
2.shadow解讀:存放用戶密碼,路徑,/etc/shadow。eg:
root:$1$/30QqE5e$y9N/D0bh6rAACBEz.hqo00:14126:0:99999:7:::
shadow同樣以:作為分割符,共分為九個字段,這九個字段代表:
1)賬號名稱
2)密碼:該檔案只有root才有權限讀寫,現在一般都使用md5加密後的密文,由於固定的編碼系統產生的密碼長度必須一致,因此當你讓這個字段的長度改變後,該密碼就會失效。
3)最近改動密碼的日期:時間戳的形式顯示
4)密碼不可被改動的天數:這個賬號的密碼在最近一次被修改後,需要經過幾天才可以被更改。0,表示可以隨時被修改
5)密碼需要重新被修改的天數:即指定在最近一次更改密碼後,在多少天之內需要再次修改密碼,如果不修改密碼,則改密碼將過期。
6)密碼需要變更期限前的警告天數:當用戶的密碼有效期言論給這個快要到的時候,系統會依據這個字段的設定發出警告言論給這個賬號,提醒他再過多少天密碼就過期了,請盡快修改密碼喲。
7)密碼過期後的賬號寬限的時間:密碼過期後,用戶在該期限內仍然可以登陸系統,不過登陸後,系統會強制用戶修改密碼,然後重新登錄系統
8)賬號失效日:到達該日期後,該賬號將被禁用不管其密碼是否過期。
9)保留:最後一個是保留字段,看以後有沒有新功能加入
3.group解讀:這個檔案每一行代表一個群組,以:作為分隔符,共分為4欄,代表的意義為:
1)組名
2)群組密碼:通常不設定,這個設定通常是給群組管理員使用的,目前很少有這個機會設定群組管理員,同樣,密碼已經移動到/etc/gshadow,因此這個字段只會存在一個x而已。
3)GID:群組ID
4)該群組支持的賬號名稱:用逗號隔開,要讓用戶加入該群組,只需將用戶面加到這裡即可
4.groups:顯示當前用戶所屬的群組,其中第一個是有效群組,即用戶新建檔案時,所在組名為該組名
5.newgrp 有效群組名:在所支持(所屬)的群組中切換有效群組,另外該指令執行之後,系統會啟用新的shell,重新讀取GID,因此,要想切換到原先的環境需要exit退出登錄
6.gshadow解讀:存放組密碼,路徑,/etc/gshadow,分隔符“:”
eg:root:::root,各段的含義,
1)組名
2)密碼欄,開頭若為!則表示無合法密碼,即無群組管理員
3)群組管理員賬號
4)該群組的所有賬號