Linux 05 口令字文件

概述

由于 /etc/passwd 文件是所有用户都可读的,如果用户的密码太简单或者规律比较明显,很容易被破解。

因此对安全性要求较高的 Linux 系统都把加密后的口令字分离出来,单独存放在一个文件中,这个文件是 /etc/shadow 文件。

超级用户才拥有该文件读权限,这就保证了用户密码的安全性。

/etc/shadow 中的记录行与 /etc/passwd 中的内容是一一对应的,它由 pwconv 命令根据 /etc/passwd 中的数据自动生成。

文件内容

[root@sail etc]# cat /etc/shadow
root:$6$tayfZCYF.$EaUXCh2NF1scPeygMBIRz1wvsdiCtCu3EPd1SqrApl.2etnpZ1SY42vS1XdGxAqn4rGbfr4JrwexJ96vZYvf6/:18925: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:!!:18088::::::
dbus:!!:18088::::::
polkitd:!!:18088::::::
sshd:!!:18088::::::
postfix:!!:18088::::::
chrony:!!:18088::::::
ntp:!!:18088::::::
tcpdump:!!:18088::::::
nscd:!!:18088::::::
admin:!!:18925:0:99999:7:::

它的文件格式与 /etc/passwd 类似,由若 8 个字段组成,字段之间用 : 隔开。

登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志

登录名

/etc/passwd 文件中的登录名相一致的用户账号。

加密口令

加密后的用户口令字,长度为 13 个字符。

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

如果含有不属于集合 { ./0-9A-Za-z } 中的字符,则对应的用户不能登录。

最后一次修改时间

从某个时刻起,到用户最后一次修改口令时的天数。

时间起点对不同的系统可能不一样。

例如在 SCO Linux 中,这个时间起点是 1970年1月1日

最小时间间隔

两次修改口令之间所需的最小天数。

最大时间间隔

口令保持有效的最大天数。

警告时间

从系统开始警告用户到用户密码正式失效之间的天数。

不活动时间

用户没有登录活动但账号仍能保持有效的最大天数。

失效时间

一个绝对的天数,如果使用了这个字段,那么就给出相应账号的生存期。

期满后,该账号就不再是一个合法的账号,也就不能再用来登录了。

标志

这个字段目前没有使用,等待新功能的加入。


参考

https://www.bilibili.com/video/BV187411y7hF?spm_id_from=333.999.0.0

版本

7.6

posted @ 2022-07-26 21:21  天航星  阅读(168)  评论(0编辑  收藏  举报