创新路
我们一直在努力

/etc/passwd和/etc/shadow详解

Linux系统中,所有用户(包括系统管理员)的账号和密码都可以在/etc/passwd和/etc/shadow这两个文件中找到, /etc/passwd文件中的每个用户都有一个对应的记录行,记录着这个用户的一下基本属性。/etc/passwd只有系统管理员才可以修改的,该文件对所有用户可读。而/etc/shadow文件正如他的名字一样,他是passwd文件的一个影子,/etc/shadow文件中的记录行与/etc/passwd中的一一对应,它由pwconv命令根据/etc/passwd中的数据自动产生。但是/etc/shadow其他用户看不了,/etc/shadow文件只有系统管理员才能够进行修改和查看。

image.png

/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

avahi-autoipd:x:170:170:Avahi IPv4LL Stack:/var/lib/avahi-autoipd:/sbin/nologin

systemd-bus-proxy:x:999:997:systemd Bus Proxy:/:/sbin/nologin

systemd-network:x:998:996:systemd Network Management:/:/sbin/nologin

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

polkitd:x:997:995:User for polkitd:/:/sbin/nologin

unbound:x:996:993:Unbound DNS resolver:/etc/unbound:/sbin/nologin

tss:x:59:59:Account used by the trousers package to sandbox the tcsd daemon:/dev/null:/sbin/nologin

colord:x:995:992:User for colord:/var/lib/colord:/sbin/nologin

usbmuxd:x:113:113:usbmuxd user:/:/sbin/nologin

geoclue:x:994:991:User for geoclue:/var/lib/geoclue:/sbin/nologin

saslauth:x:993:76:Saslauthd user:/run/saslauthd:/sbin/nologin

libstoragemgmt:x:992:990:daemon account for libstoragemgmt:/var/run/lsm:/sbin/nologin

abrt:x:173:173::/etc/abrt:/sbin/nologin

setroubleshoot:x:991:988::/var/lib/setroubleshoot:/sbin/nologin

rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin

rtkit:x:172:172:RealtimeKit:/proc:/sbin/nologin

chrony:x:990:987::/var/lib/chrony:/sbin/nologin

radvd:x:75:75:radvd user:/:/sbin/nologin

qemu:x:107:107:qemu user:/:/sbin/nologin

rpcuser:x:29:29:RPC Service User:/var/lib/nfs:/sbin/nologin

nfsnobody:x:65534:65534:Anonymous NFS User:/var/lib/nfs:/sbin/nologin

pulse:x:171:171:PulseAudio System Daemon:/var/run/pulse:/sbin/nologin

gdm:x:42:42::/var/lib/gdm:/sbin/nologin

gnome-initial-setup:x:989:984::/run/gnome-initial-setup/:/sbin/nologin

avahi:x:70:70:Avahi mDNS/DNS-SD Stack:/var/run/avahi-daemon:/sbin/nologin

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

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

ntp:x:38:38::/etc/ntp:/sbin/nologin

tcpdump:x:72:72::/:/sbin/nologin

czz:x:1000:1000:czz:/home/czz:/bin/bash

image.png

从文件中我们可以看到,/etc/passwd中一行记录对应着一个用户,每行记录又被冒号(:)分隔为7个字段,其格式和具体含义如下:

第一列为账户名称

第二列为密码占位符(x表示该账户需要密码才能登录,为空时,账户无须密码即可登录)

第三列为账户UID 取值范围是0-65535。0是超级用户root的标识号,1-99由系统保留,作为管理账号,普通用户的标识号从100开始。在Linux系统中,这个界限是500。

第四列为GID 字段记录的是用户所属的用户组。它对应着/etc/group文件中的一条记录。

第五列为账户附加基本信息,一般存储账户名全称,联系方式等信息

第六列为账户家目录位置

第七列为账户登录Shell,/bin/bash为可登录系统Shell,/sbin/nologin表示账户无法登录系统。

/etc/shadow文件介绍

etc/shadow文件格式与/etc/passwd文件格式类似,同样由若干个字段组成,字段之间用“:”隔开。

root:$6$5ph5fTxdxsxC3mjo$emuF6GVI3H/CCdyfasTd9w39SET3iM3g0BGBgLNhHqzs1.YxuJc2awEQW7IX8oPKho.KO3D6xC9s.96PSKA5F0::0:99999:7:::

bin:*:16579:0:99999:7:::

daemon:*:16579:0:99999:7:::

adm:*:16579:0:99999:7:::

lp:*:16579:0:99999:7:::

sync:*:16579:0:99999:7:::

shutdown:*:16579:0:99999:7:::

halt:*:16579:0:99999:7:::

mail:*:16579:0:99999:7:::

operator:*:16579:0:99999:7:::

games:*:16579:0:99999:7:::

ftp:*:16579:0:99999:7:::

nobody:*:16579:0:99999:7:::

avahi-autoipd:!!:18124::::::

systemd-bus-proxy:!!:18124::::::

systemd-network:!!:18124::::::

dbus:!!:18124::::::

polkitd:!!:18124::::::

unbound:!!:18124::::::

tss:!!:18124::::::

colord:!!:18124::::::

usbmuxd:!!:18124::::::

geoclue:!!:18124::::::

saslauth:!!:18124::::::

libstoragemgmt:!!:18124::::::

abrt:!!:18124::::::

setroubleshoot:!!:18124::::::

rpc:!!:18124:0:99999:7:::

rtkit:!!:18124::::::

chrony:!!:18124::::::

radvd:!!:18124::::::

qemu:!!:18124::::::

rpcuser:!!:18124::::::

nfsnobody:!!:18124::::::

pulse:!!:18124::::::

gdm:!!:18124::::::

gnome-initial-setup:!!:18124::::::

avahi:!!:18124::::::

postfix:!!:18124::::::

sshd:!!:18124::::::

ntp:!!:18124::::::

tcpdump:!!:18124::::::

czz:$6$vH.h4cc3K8ahID.m$z4mEzf0tGnV7sQIZuOj/usoni46jS/zFJYta1HNvIHdWZqEwcaV0b9/4I7fHYqVuL1YkF4chHbOiPpdlyPCg41:18124:0:99999:7:::

image.png

文件以冒号为分隔符

说明:

第一列为账户名称

第二列为密码(账户未设置密码时为!!,设置密码后加密显示,)

第三列为上次修改密码的时间距离1970年01月01日多少天

第四列为密码最短有效天数,0表示无限制

第五列为密码最长有效天数(默认位99999天,可以理解为永不过期)

第六列为密码过期后的宽限天数(密码过期后,预留几天给账号修改密码,此时已无法使用旧密码登录)

第八列为账户失效日期(从1970年01月01日起多少天后账户失效)

第九列暂时保留未使用。

注意:

第二列

“口令”字段存放的是加密后的用户口令字:

如果为空,则对应用户没有口令,登录时不需要口令;

星号代表帐号被锁定;

双叹号表示这个密码已经过期了;

$6$开头的,表明是用SHA-512加密;

$1$表明是用MD5加密;

$2$ 是用Blowfish加密;

$5$ 是用 SHA-256加密;

未经允许不得转载:天府数据港官方信息博客 » /etc/passwd和/etc/shadow详解

客官点个赞呗! (0)
分享到:

评论 抢沙发

评论前必须登录!

天府云博 - 做有态度的开发&运维&设计学习分享平台!

联系我们百度云主机