CentOS7下賬號與用戶


  /etc/passwd用戶記錄文件,文件記錄着ID和賬號與一般身份用戶的對應關系

用戶至少會有2個ID,用戶ID(UserID簡UID)和用戶組ID(GroupID簡GID)。

  /etc/group用戶組記錄文件,文件記錄着ID和用戶組名的對應關系

文件利用UID和GID判別所有者和用戶組。當要顯示文件屬性需求時,系統會根據/etc/passwd和/etc/group的內容,找到UID/GID對應的賬號與用戶組名再顯示出來。

  /etc/shadow為專門管理密碼相關數據文件

/etc/passwd

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin

adm:x:3:4:adm:/var/adm:/sbin/nologin

lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

sync:x:5:0:sync:/sbin:/bin/sync

shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown

halt:x:7:0:halt:/sbin:/sbin/halt

mail:x:8:12:mail:/var/spool/mail:/sbin/nologin

  • operator:x:11:0:operator:/root:/sbin/nologin

games:x:12:100:games:/usr/games:/sbin/nologin

ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

nobody:x:99:99:Nobody:/:/sbin/nologin

systemd-network:x:192:192:systemd Network Management:/:/sbin/nologin

dbus:x:81:81:System message bus:/:/sbin/nologin

polkitd:x:999:998:User for polkitd:/:/sbin/nologin

sshd:x:74:74:Privilege-separated SSH:/var/empty/sshd:/sbin/nologin

postfix:x:89:89::/var/spool/postfix:/sbin/nologin

chrony:x:998:996::/var/lib/chrony:/sbin/nologin

jiangshan:x:1000:1000::/home/jiangshan:/bin/bash

jinyan:x:1001:1001::/home/jinyan:/bin/bash

以‘jinyan’用戶為例,其中,1001:1001為UID:GID,UID標識用戶,GID標識用戶組。

/etc/group

root:x:0:

bin:x:1:

daemon:x:2:

sys:x:3:

adm:x:4:

tty:x:5:

disk:x:6:

lp:x:7:

mem:x:8:

kmem:x:9:

wheel:x:10:

cdrom:x:11:

mail:x:12:postfix

man:x:15:

dialout:x:18:

floppy:x:19:

games:x:20:

tape:x:33:

video:x:39:

ftp:x:50:

lock:x:54:

audio:x:63:

nobody:x:99:

users:x:100:

utmp:x:22:

utempter:x:35:

input:x:999:

systemd-journal:x:190:

systemd-network:x:192:

dbus:x:81:

polkitd:x:998:

ssh_keys:x:997:

sshd:x:74:

postdrop:x:90:

postfix:x:89:

chrony:x:996:

jiangshan:x:1000:

jinyan:x:1001:

/etc/shadow

root:$6$Ue1tISumzuerjoaq$1Y696T4DwWQdL5m9HU3XAvlT3z3TGR2eVSxo5vBId7x2T8hti9SQenCetayvF6UxOR4am0uXWbeg5Kagavzfe0::0:99999:7:::

bin:*:17834:0:99999:7:::

daemon:*:17834:0:99999:7:::

adm:*:17834:0:99999:7:::

lp:*:17834:0:99999:7:::

sync:*:17834:0:99999:7:::

shutdown:*:17834:0:99999:7:::

halt:*:17834:0:99999:7:::

mail:*:17834:0:99999:7:::

  • operator:*:17834:0:99999:7:::

games:*:17834:0:99999:7:::

ftp:*:17834:0:99999:7:::

nobody:*:17834:0:99999:7:::

systemd-network:!!:17960::::::

dbus:!!:17960::::::

polkitd:!!:17960::::::

sshd:!!:17960::::::

postfix:!!:17960::::::

chrony:!!:17960::::::

jiangshan:$6$ZPd3YtMU$4.SDHumdEN9V4jD4L2sa.MZ318jx3yl2ByKQV3mxjxmMfDCXM2IFTEl1MqG/UAqJeSVsltjcnB4NWr4j9X7Hy1:17962:0:99999:7:::

jinyan:$6$3/Py/FGX$RgIA8mFS1CWvSM7GcNYa0CDe3IHcEpbPuZOWrKgPzugEQBnRiNbAsLdliMjcVefoXj9jYOqCofjONbmHRuOiu1:17962:0:99999:7:::

若某用戶登錄主機以取得shell的環境:在計算機前面利用tty1~tty2的終端機提供的login接口,輸入賬號和密碼;若通過網絡,還需要設置ssh遠程訪問功能;系統后台替你完成的工作:

  1. 系統在/etc/passwd文件中找到輸入的賬號,並讀取出該賬號對應的UID與GID(在/etc/group中讀取),另外賬號的主文件夾與shell設置也一並讀出。
  2. 核對密碼表,系統在/etc/shadow文件中找出對應的賬號與UID,然后核對輸入的密碼和/etc/shadow文件中賬號對應的密碼是否相符。
  3. 一切OK,則進入shell階段。

/etc/passwd文件結構

每一行代表一個賬號,有幾行系統就有幾個賬號,大多數為系統所必需的賬號。

以/etc/passwd文件第一行為例解讀:

root:x:0:0:root:/root:/bin/bash

共7個字段,用:分隔,每個字段分別是:

  1. 賬號名稱    賬號用來對應UID的,例如root的UID對應就是0第3個字段。
  2. 密碼,早期是將密碼放入該字段中,由於不安全,后來將密碼放置在/etc/shadow中,用x填入。
  3. UID  用戶標識符,UID的限制如下:

                                   i.              0   系統管理員

                                 ii.              1~499   系統賬號(保留給系統使用)

                               iii.               500~2^32-1   可登錄賬號 給一般用戶使用

  1. GID  與/etc/group有關   /etc/group與/etc/passwd差不多,只是它用來規定組名與GID的對應而已。
  2. 用戶信息列表  解釋賬號而已
  3. 主文件夾  當用戶登錄后,就會立刻進入到該目錄中
  4. Shell   當用戶登陸系統后就會取得一個Shell來與系統的內核通信以進行用戶操作,這個字段指定shell會使用bash,如該字段為“/bin/bash”。注意:/sbin/nologin Shell可以用來替代成讓賬號無法取得shell環境的登錄操作,如可以用來制作純pop郵件賬號者的數據。

/etc/shadow文件結構  共有9個字段

程序運行都與權限有關,而權限與UID/GID有關,因此各程序需要讀取/etc/passwd文件來了解不同賬號的權限,因此/etc/passwd文件的權限設置為“-rw-r-r--”。早期密碼放置在/etc/passwd文件中,存在着風險,因此發展后期將密碼移至/etc/shadow文件中,進行分隔開來,例如:

root:$6$Ue1tISumzuerjoaq$1Y696T4DwWQdL5m9HU3XAvlT3z3TGR2eVSxo5vBId7x2T8hti9SQenCetayvF6UxOR4am0uXWbeg5Kagavzfe0::0:99999:7:::

  1. 賬號名稱   由於密碼也需要和賬號對應  必須要和/etc/passwd相同
  2. 密碼   經過加密的密碼
  3. 最近更動密碼的日期
  4. 密碼不可被更動的天數(與第3個字段相比)
  5. 密碼需要重新更改的天數(與第3個字段相比)
  6. 密碼需要更改期限前的警告天數(與第5個字段相比)
  7. 密碼過期后的賬號寬限時間(密碼失效日)(與第5個字段相比)
  8. 賬號失效日期   常用來做“收費服務”
  9. 保留字段

/etc/group文件結構  共有4個字段

每一行代表一個用戶組。例如:

root:x:0:

  1. 用戶組名稱
  2. 用戶組密碼   通常不需要設置,這個設置通常是給“用戶管理員”使用,但是密碼早已移動到/etc/gshadow文件中了,此字段只會存在一個“x”
  3. GID  用戶組ID
  4. 此用戶組支持的賬號名稱   一個賬號可以加入多個用戶組,某個賬號想要加入此用戶組,將該賬號填入該字段即可。例如想讓 jeshy 加入root這個用戶組,那么在該字段加入“,jeshy”即“root,jeshy”------ root:x:0:root,jeshy

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM