etc/passwd 文件记录全名和使用的 shell 的路径名。要更改记录名,请输入 passwd -f 命令。要更改登录 shell,请输入 passwd -s 命令。
根据密码限制,在 /etc/security/user 配置文件中构造本地定义的密码。此文件包含下列限制:
minalpha 指定字母字符的最小数目。
minother 指定其它字符的最小数目。
minlen 指定字符的最小数目。
注:
此值由 minalpha 值加上 minother 值和 minlen 值中的大者。
mindiff 指定出现在新密码中但没出现在旧密码中的字符的最小数。
注:
此限制并不考虑位置。如果新密码是 abcd 并且旧密码是 edcb ,不同字符数就是 1。
maxrepeats 指定在密码中单个字符使用的最大次数。
minage 指定密码能够更改的最小寿命。密码必须保持一个最小周期。此值用周来评测。
maxage 指定密码的最大寿命。密码必须在指定的周数后更改。
maxexpired 指定用户可以更改密码的超出最大寿命 maxage 的最大周数。
histexpire 指定用户不能重用密码的周数。
histsize 指定用户不能重用的前几个密码的数目。
dictionlist 指定更改密码时要检查的字典文件列表。
pwdchecks 指定更改密码时要调用的外部密码限制方法的列表。
如果 root 用户添加了 NOCHECK 属性到在 /etc/security/passwd 文件中的标志条目中,密码就不必满足这些限制。另外,root 用户也可指定新密码给其它用户而不遵循密码的限制。
如果 root 用户在标志条目中添加了 ADMIN 属性或者如果在 /etc/passwd 文件中的 password 字段包含 * (星号),则只有 root 用户才能更改密码。如果在 /etc/passwd 中的 password 字段包含有 !(感叹号)和在 /etc/security/passwd 文件中的 password 字段包含有 * (星号),则 root 用户拥有更改您的密码的超级特权。
如果 root 用更改您的密码,则 ADMCHG 属性就会自动地添加到在 /etc/security/passwd 文件中的标志条目上。这种情况下,您必须在下次登录时更改密码。
如果 /etc/security/user 文件中用户的 registry 值是 DCE 或者 NIS,则密码更改只能在指定的数据库中进行。
标志
-f 更改由 finger 命令访问的用户信息。可以使用此标志提供在 /etc/passwd 文件中的全名。
-s 更改登录 shell。
-R load_module 指定可装入 I&A 模块,来更改用户的密码。
安全性
访问控制:安装此程序为可信计算库的一部分,并可让所有用户执行。另外,此程序应该运行 setuid 以成为 root 用户来获取对密码文件的写访问。
文件存取:
方式 文件
r /etc/security/user
rx /usr/lib/security/DCE
rx /usr/lib/security/NIS
rw /etc/passwd
rw /etc/security/passwd
r /etc/security/login.cfg
审计事件:
事件 信息
PASSWORD_Change user
示例
1. 要更改密码,请输入:
passwd
passwd 命令提示输入旧密码,如果它存在并且您不是 root 用户。输入旧密码后,命令提示输入两次新密码。
2. 要更改 /etc/passwd 文件中的全名,请输入:
passwd -f
passwd 命令显示为您的用户标识存储的名称。例如,对于登录名 sam , passwd 命令能够显示以下消息:
sam's current gecos:
"Sam Smith"
是否更改?>
如果输入 Y(是),passwd 命令提示输入新名。 passwd 命令记录输入的名称到 /etc/passwd 文件中。
3. 要在下次登录时使用不同的 shell,请输入:
passwd - s
passwd 命令列出可用的和当前使用的 shell 的路径名。此命令也显示提示:
是否更改?>
如果输入 Y(是),passwd 命令提示输入要使用的 shell。下次登录时系统提供在此指定的 shell。
文件
/usr/bin/passwd 包含 passwd 命令。
/etc/passwd 包含用户 ID、用户名、主目录、登录 shell 和 finger 的信息
/etc/security/passwd 包含加密的密码和安全性信息。