口令老化(Password aging)是一种增强的系统口令生命期认证机制,虽然它会一定程序的削弱用户使用的便利性,但是它能够确保用户的口令定期更换,这是一种非常好的安全措施。大部分的Linux发行版默认都不会打开口令老化功能,但是我们可以很容易地启用它。
1、编辑/etc/login.defs文件,我们可以通过以下参数来修改口令老化的默认配置:
# Password aging controls:
#PASS_MAX_DAYS 密码有效期天数设置为9999,实际上就是关闭了口令老化功能
#PASS_MIN_DAYS 表示自从上次密码修改以来多少天后用户才被允许修改口令
#PASS_MIN_LEN
#PASS_WARN_AGE 表示在口令到期前多少天开始通知用户口令即将到期
PASS_MAX_DAYS 9999
PASS_MIN_DAYS 0
PASS_WARN_AGE 7
2、另外,我们也可以编辑/etc/default/useradd文件,在其中查找INACTIVE和EXPIRE关键字:
# useradd defaults file
GROUP=100
HOME=/home
INACTIVE=14
//设置在口令已过期而用户一直没有修改口令多少天后用户帐户将置为不可用而锁定,以上设置是14天,
EXPIRE=
//直接指明新用户的口令的失效日期,格式为YYYY-MM-DD。
SHELL=/bin/bash
以上的设置都只对配置修改后创建的新用户有效,如果要更改已经创建的用户配置,可以使用chage工具:
[root@rhel4 ~]#chage -M 60 shangwen
以上将设置用户shangwen的PASS_MAX_DAYS为60天,并且相应的更新shadow文件。我们可以使用-l选项查看用户密码老化相关信息,-m设置PASS_MIN_DAYS,-W设置PASS_WARN_AGE等等。 chage工具可以让我们设置口令老化的方方面面参数。以下是chage的详细参数信息:
用法:chage [选项] 用户名
选项:
-d, --lastday 最近日期 将最近一次密码设置时间设为“最近日期”
-E, --expiredate 过期日期 将帐户过期时间设为“过期日期”
-h, --help 显示此帮助信息并退出
-I, --inactive 失效密码 将因过期而失效的密码设为“失效密码”
-l, --list 显示帐户年龄信息
-m, --mindays 最小天数 将两次改变密码之间相距的最小天数设为“最小天数”
-M, --maxdays 最大天数 将两次改变密码之间相距的最大天数设为“最大天数”
-W, --warndays 警告天数 将过期警告天数设为“警告天数”