1./etc/passwd
root@root:~# cat /etc/passwd root:x:0:0:root:/root:/bin/bash daemon:x:1:1:daemon:/usr/sbin:/usr/sbin/nologin bin:x:2:2:bin:/bin:/usr/sbin/nologin admin:x:3:3:admin:/dev:/usr/sbin/nologin
字段與字段之間以:隔開,每個字段代表的意思如下:
1.用戶名。
2.用戶的密碼占位符。(之前用戶的密碼原本存儲在該字段,處於安全考慮,最后專門有了/etc/shadow文件,現在默認均由x替代)
3.用戶UID值,一般情況下,root的UID為0,1-499默認為系統賬號,有的更大些到1000,500-65535為用戶的可登錄賬號,有的系統從1000開始。
4.用戶的gid,linux的用戶都會有兩個ID,一個是用戶uid,一個是用戶組id。(在我們登錄的時候,輸入用戶名和密碼,首先到/etc/passwd查看是否有你輸入的賬號或者用戶名,有的話將該賬號與對應的UID和GID(在/etc/group中)讀出來。然后讀出主文件夾與shell的設置,然后再去檢驗密碼是否正確,正確的話正常登錄)
5.用戶的賬號說明解釋。
6.用戶的家目錄文件夾。
7.用戶使用的shell,如果換成/sbin/nologin時默認是沒有登錄環境的。
2./etc/shadow
root@www:~# cat /etc/shadow root:$6$X9iEgIhv$wGtrUhjiNRp72LgCTzC1qdi.myfSU9S5nqsfr.m1KInUFoeOUBN73AmMy5sTe91biJLdHgsoimZQzeD9EvGlv1:16769:0:99999:7::: daemon:*:16547:0:99999:7::: bin:*:16547:0:99999:7::: sys:*:16547:0:99999:7::: sync:*:16547:0:99999:7::: games:*:16547:0:99999:7::: man:*:16547:0:99999:7:::
字段與字段之間以:隔開,每個字段代表的意思如下:
1.用戶名,與/etc/passwd中的第一個字段一致。
2.用戶的密碼加密字段(“該字段存放的是加密后的用戶口令字,如果為空,則對應用戶沒有口令,登錄時不需要口令; 星號代表帳號被鎖定; 雙嘆號表示這個密碼已經過期了。 $6$開頭的,表明是用SHA-512加密的, $1$ 表明是用MD5加密的 $2$ 是用Blowfish加密的 $5$ 是用 SHA-256加密的。)
3.“最后一次修改時間”表示的是從某個時刻起,到用戶最后一次修改口令時的天數。(一般這個時間起點是1970年1月1日)
4.“最小時間間隔”指的是兩次修改口令之間所需的最小天數。
5.“最大時間間隔”指的是口令保持有效的最大天數。
6.“警告時間”字段表示的是從系統開始警告用戶到用戶密碼正式失效之間的天數。
7.“不活動時間”表示的是用戶沒有登錄活動但賬號仍能保持有效的最大天數。
8.“失效時間”字段給出的是一個絕對的天數,如果使用了這個字段,那么就給出相應賬號的生存期。期滿后,該賬號就不再是一個合法的賬號,也就不能再用來登錄了。
9.最后一個字段,為保留字段,暫時沒有任何含義。
