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).