Scroll to navigation

SHADOW(5) 文件格式和转化 SHADOW(5)

名称

shadow - 影子化了的密码文件

描述

shadow 是一个文件,它包含系统账户的密码信息和可选的年龄信息。
如果没有维护好密码安全,此文件绝对不能让普通用户可读。
此文件的每行包括 9 个字段,使用半角冒号 (“:”) 分隔,顺序如下:
登录名
必须是有效的账户名,且已经存在于系统中。
加密了的密码
请参考 crypt(3) 来了解关于解析此字符串的细节信息。
如果密码字段包含一些不是 crypt(3) 合法结果的字符,比如 ! 或 *,用户将无法使用 unix 密码登录(但是可以通过其它方法登录系统)。
此字段可以为空,此时认证为特定的登录名时,不要求密码。然而,一些读取 /etc/shadow 文件的应用程序,在密码字段为空时,可能决定禁止任何访问。
以叹号开始的密码字段意味着密码被锁定。该行的剩余字符表示锁定之前的密码。
最后一次更改密码的日期
最近一次更改密码的时间,表示从1970年1月1日开始的天数。
0 有特殊意思,表示用户应该在下次登录系统时更改密码。
空字段表示密码年龄功能被禁用。
密码的最小年龄
最小密码年龄是指,用户一次更改密码之后,要等多长时间才再次被允许更改密码。
空字段或 0 表示没有最小密码年龄。
最大密码年龄
最大密码年龄是指,这写天之后,用户必须更改密码。
这写天之后,密码仍然可用。用户将会在下次登录的时候被要求更改密码。
空字段表示没有最大密码年龄,没有密码警告时间段,没有密码禁用时间段(请看下边)。
如果最大密码年龄小于最小密码年龄,用户将会不能更改密码。
密码警告时间段
密码过期之前,提前警告用户的的天数(请参考上边的密码的最大年龄)。
空字段或者 0 表示没有密码警告期。
密码禁用期
密码过期(查看上边的密码最大年龄)后,仍然接受此密码的天数(在此期间,用户应该在下次登录时修改密码)。
密码到期并且过了这个宽限期之后,使用用户的当前的密码将会不能登录。用户需要联系系统管理员。
空字段表示没有强制密码过期。
账户过期日期
账户过期的日期,表示从1970年1月1日开始的天数。
注意,账户过期不同于密码过期。账户过期时,用户将不被允许登录;密码过期时,用户将不被允许使用其密码登录。
空字段表示账户永不过期。
应该避免使用 0,因为它既能理解成永不过期也能理解成在1970年1月1日过期。
保留字段
此字段保留作将来使用。

文件

/etc/passwd
用户账户信息。
/etc/shadow
安全用户账户信息。
/etc/shadow-
/etc/shadow 的备份文件。
注意,此文件由 shadow 工具集使用,而不是所有的用户和密码管理工具都会使用。

参见

chage(1), login(1), passwd(1), passwd(5), pwck(8), pwconv(8), pwunconv(8), su(1), sulogin(8).
2017-05-17 shadow-utils 4.2