溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux系統(tǒng)中的/etc/passwd文件和etc/shadow文件該怎么理解

發(fā)布時間:2022-01-26 09:24:04 來源:億速云 閱讀:228 作者:kk 欄目:開發(fā)技術

這篇文章將為大家詳細講解有關Linux系統(tǒng)中的/etc/passwd文件和etc/shadow文件該怎么理解,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關知識有一定的了解。

在Linux系統(tǒng)中 /etc/passwd文件和etc/shadow文件是兩個非常重要的文件。

/etc/passwd文件介紹

  首先,我們通過命令行cat /etc/passwd進行查看/etc/passwd文件內(nèi)容:

 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
 sys:x:3:3:sys:/dev:/usr/sbin/nologin
 sync:x:4:65534:sync:/bin:/bin/sync
 games:x:5:60:games:/usr/games:/usr/sbin/nologin
 man:x:6:12:man:/var/cache/man:/usr/sbin/nologin
 lp:x:7:7:lp:/var/spool/lpd:/usr/sbin/nologin
 mail:x:8:8:mail:/var/mail:/usr/sbin/nologin
 news:x:9:9:news:/var/spool/news:/usr/sbin/nologin
 uucp:x:10:10:uucp:/var/spool/uucp:/usr/sbin/nologin
 proxy:x:13:13:proxy:/bin:/usr/sbin/nologin
 www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin
 backup:x:34:34:backup:/var/backups:/usr/sbin/nologin
 list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
 irc:x:39:39:ircd:/var/run/ircd:/usr/sbin/nologin
 gnats:x:41:41:Gnats Bug-Reporting System (admin):/var/lib/gnats:/usr/sbin/nologin
 nobody:x:65534:65534:nobody:/nonexistent:/usr/sbin/nologin
 libuuid:x:100:101::/var/lib/libuuid:
 syslog:x:101:104::/home/syslog:/bin/false
 messagebus:x:102:106::/var/run/dbus:/bin/false
 usbmux:x:103:46:usbmux daemon,,,:/home/usbmux:/bin/false
 dnsmasq:x:104:65534:dnsmasq,,,:/var/lib/misc:/bin/false
 avahi-autoipd:x:105:113:Avahi autoip daemon,,,:/var/lib/avahi-autoipd:/bin/false
 kernoops:x:106:65534:Kernel Oops Tracking Daemon,,,:/:/bin/false
 rtkit:x:107:114:RealtimeKit,,,:/proc:/bin/false
 saned:x:108:115::/home/saned:/bin/false
 whoopsie:x:109:116::/nonexistent:/bin/false
 speech-dispatcher:x:110:29:Speech Dispatcher,,,:/var/run/speech-dispatcher:/bin/sh
 avahi:x:111:117:Avahi mDNS daemon,,,:/var/run/avahi-daemon:/bin/false
 lightdm:x:112:118:Light Display Manager:/var/lib/lightdm:/bin/false
 colord:x:113:121:colord colour management daemon,,,:/var/lib/colord:/bin/false
 hplip:x:114:7:HPLIP system user,,,:/var/run/hplip:/bin/false
 pulse:x:115:122:PulseAudio daemon,,,:/var/run/pulse:/bin/false
 yaofei:x:1000:1000:ubuntu14.04,,,:/home/yaofei:/bin/bash
 sshd:x:116:65534::/var/run/sshd:/usr/sbin/nologin
 mysql:x:117:125:MySQL Server,,,:/nonexistent:/bin/false

  從文件中我們可以看到,/etc/passwd中一行記錄對應著一個用戶,每行記錄又被冒號(:)分隔為7個字段,其格式和具體含義如下: 用戶名:口令:用戶標識號:組標識號:注釋性描述:主目錄:登錄Shell

  • 用戶名(login_name):是代表用戶賬號的字符串。通常長度不超過8個字符,并且由大小寫字母和/或數(shù)字組成。登錄名中不能有冒號(:),因為冒號在這里是分隔符。為了兼容起見,登錄名中最好不要包含點字符(.),并且不使用連字符(-)和加號(+)打頭。

  • 口令(passwd):一些系統(tǒng)中,存放著加密后的用戶口令字。雖然這個字段存放的只是用戶口令的加密串,不是明文,但是由于/etc/passwd文件對所有用戶都可讀,所以這仍是一個安全隱患。因此,現(xiàn)在許多Linux系統(tǒng)(如SVR4)都使用了shadow技術,把真正的加密后的用戶口令字存放到/etc/shadow文件中,而在/etc/passwd文件的口令字段中只存放一個特殊的字符,例如“x”或者“*”。

  • 用戶標識號(UID):是一個整數(shù),系統(tǒng)內(nèi)部用它來標識用戶。一般情況下它與用戶名是一一對應的。如果幾個用戶名對應的用戶標識號是一樣的,系統(tǒng)內(nèi)部將把它們視為同一個用戶,但是它們可以有不同的口令、不同的主目錄以及不同的登錄Shell等。取值范圍是0-65535。0是超級用戶root的標識號,1-99由系統(tǒng)保留,作為管理賬號,普通用戶的標識號從100開始。在Linux系統(tǒng)中,這個界限是500。

  • 組標識號(GID):字段記錄的是用戶所屬的用戶組。它對應著/etc/group文件中的一條記錄。

  • 注釋性描述(users):字段記錄著用戶的一些個人情況,例如用戶的真實姓名、電話、地址等,這個字段并沒有什么實際的用途。在不同的Linux系統(tǒng)中,這個字段的格式并沒有統(tǒng)一。在許多Linux系統(tǒng)中,這個字段存放的是一段任意的注釋性描述文字,用做finger命令的輸出。

  • 主目錄(home_directory):也就是用戶的起始工作目錄,它是用戶在登錄到系統(tǒng)之后所處的目錄。在大多數(shù)系統(tǒng)中,各用戶的主目錄都被組織在同一個特定的目錄下,而用戶主目錄的名稱就是該用戶的登錄名。各用戶對自己的主目錄有讀、寫、執(zhí)行(搜索)權限,其他用戶對此目錄的訪問權限則根據(jù)具體情況設置。

  • 登錄Shell(Shell):用戶登錄后,要啟動一個進程,負責將用戶的操作傳給內(nèi)核,這個進程是用戶登錄到系統(tǒng)后運行的命令解釋器或某個特定的程序,即Shell。Shell是用戶與Linux系統(tǒng)之間的接口。Linux的Shell有許多種,每種都有不同的特點。常用的有sh(BourneShell),csh(CShell),ksh(KornShell),tcsh(TENEX/TOPS-20typeCShell),bash(BourneAgainShell)等。系統(tǒng)管理員可以根據(jù)系統(tǒng)情況和用戶習慣為用戶指定某個Shell。如果不指定Shell,那么系統(tǒng)使用sh為默認的登錄Shell,即這個字段的值為/bin/sh。

/etc/shadow文件介紹

  /etc/shadow文件格式與/etc/passwd文件格式類似,同樣由若干個字段組成,字段之間用“:”隔開。

  通過命令行輸入sudo cat /etc/shadow進行文件內(nèi)容查看:

 root:!:17043:0:99999:7:::
 daemon:*:16652:0:99999:7:::
 bin:*:16652:0:99999:7:::
 sys:*:16652:0:99999:7:::
 sync:*:16652:0:99999:7:::
 games:*:16652:0:99999:7:::
 man:*:16652:0:99999:7:::
 lp:*:16652:0:99999:7:::
 mail:*:16652:0:99999:7:::
 news:*:16652:0:99999:7:::
 uucp:*:16652:0:99999:7:::
 proxy:*:16652:0:99999:7:::
 www-data:*:16652:0:99999:7:::
 backup:*:16652:0:99999:7:::
 list:*:16652:0:99999:7:::
 irc:*:16652:0:99999:7:::
 gnats:*:16652:0:99999:7:::
 nobody:*:16652:0:99999:7:::
 libuuid:!:16652:0:99999:7:::
 syslog:*:16652:0:99999:7:::
 messagebus:*:16652:0:99999:7:::
 usbmux:*:16652:0:99999:7:::
 dnsmasq:*:16652:0:99999:7:::
 avahi-autoipd:*:16652:0:99999:7:::
 kernoops:*:16652:0:99999:7:::
 rtkit:*:16652:0:99999:7:::
 saned:*:16652:0:99999:7:::
 whoopsie:*:16652:0:99999:7:::
 speech-dispatcher:!:16652:0:99999:7:::
 avahi:*:16652:0:99999:7:::
 lightdm:*:16652:0:99999:7:::
 colord:*:16652:0:99999:7:::
 hplip:*:16652:0:99999:7:::
 pulse:*:16652:0:99999:7:::
 yaofei:$1$5M0Rbozg$1fWsJaQB.TFAL24b96xi41:17043:0:99999:7:::
 sshd:*:17043:0:99999:7:::
 mysql:!:17048:0:99999:7:::

  文件中字段主要含義為:登錄名:加密口令:最后一次修改時間:最小時間間隔:最大時間間隔:警告時間:不活動時間:失效時間:標志

  1. “登錄名”是與/etc/passwd文件中的登錄名相一致的用戶賬號

  2. “口令”字段存放的是加密后的用戶口令字:

    1. 如果為空,則對應用戶沒有口令,登錄時不需要口令;

    2. 星號代表帳號被鎖定;

    3. 雙嘆號表示這個密碼已經(jīng)過期了;

    4. $6$開頭的,表明是用SHA-512加密;

    5. $1$表明是用MD5加密;

    6. $2$ 是用Blowfish加密;

    7. $5$ 是用 SHA-256加密;

  3. “最后一次修改時間”表示的是從某個時刻起,到用戶最后一次修改口令時的天數(shù)。時間起點對不同的系統(tǒng)可能不一樣。例如在SCOLinux中,這個時間起點是1970年1月1日。“最小時間間隔”指的是兩次修改口令之間所需的最小天數(shù)。

  4. “最小時間間隔”指的是兩次修改口令之間所需的最小天數(shù)。

  5. “最大時間間隔”指的是口令保持有效的最大天數(shù)。

  6. “警告時間”字段表示的是從系統(tǒng)開始警告用戶到用戶密碼正式失效之間的天數(shù)。

  7. “不活動時間”表示的是用戶沒有登錄活動但賬號仍能保持有效的最大天數(shù)。

  8. “失效時間”字段給出的是一個絕對的天數(shù),如果使用了這個字段,那么就給出相應賬號的生存期。期滿后,該賬號就不再是一個合法的賬號,也就不能再用來登錄了。

/etc/group文件介紹

Linux /etc/group文件與/etc/passwd和/etc/shadow文件都是有關于系統(tǒng)管理員對用戶和用戶組管理時相關的文件。linux /etc/group文件是有關于系統(tǒng)管理員對用戶和用戶組管理的文件,linux用戶組的所有信息都存放在/etc/group文件中。具有某種共同特征的用戶集合起來就是用戶組(Group)。用戶組(Group)配置文件主要有 /etc/group和/etc/gshadow,其中/etc/gshadow是/etc/group的加密信息文件。

將用戶分組是Linux系統(tǒng)中對用戶進行管理及控制訪問權限的一種手段。每個用戶都屬于某個用戶組;一個組中可以有多個用戶,一個用戶也可以屬于不同的組。當一個用戶同時是多個組中的成員時,在/etc/passwd文件中記錄的是用戶所屬的主組,也就是登錄時所屬的默認組,而其他組稱為附加組。

用戶組的所有信息都存放在/etc/group文件中。此文件的格式是由冒號(:)隔開若干個字段,這些字段具體如下:

組名:口令:組標識號:組內(nèi)用戶列表

具體解釋:  組名:組名是用戶組的名稱,由字母或數(shù)字構成。與/etc/passwd中的登錄名一樣,組名不應重復。  口令:口令字段存放的是用戶組加密后的口令字。一般Linux系統(tǒng)的用戶組都沒有口令,即這個字段一般為空,或者是x。  組標識號:組標識號與用戶標識號類似,也是一個整數(shù),被系統(tǒng)內(nèi)部用來標識組。別稱GID.

 組內(nèi)用戶列表:是屬于這個組的所有用戶的列表,不同用戶之間用逗號(,)分隔。這個用戶組可能是用戶的主組,也可能是附加組。

使用實例:

 [root@localhost test6]# cat /etc/group
 root:x:0:root,linuxsir
 bin:x:1:root,bin,daemon
 daemon:x:2:root,bin,daemon
 sys:x:3:root,bin

我們以root?0:root,linuxsir 為例: 用戶組root,x是密碼段,表示沒有設置密碼,GID是0,root用戶組下包括root、linuxsir以及GID為0的其它用戶。

什么是Linux系統(tǒng)

Linux是一種免費使用和自由傳播的類UNIX操作系統(tǒng),是一個基于POSIX的多用戶、多任務、支持多線程和多CPU的操作系統(tǒng),使用Linux能運行主要的Unix工具軟件、應用程序和網(wǎng)絡協(xié)議。

關于Linux系統(tǒng)中的/etc/passwd文件和etc/shadow文件該怎么理解就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權內(nèi)容。

AI