chage命令是Linux系统中用于管理用户密码过期策略的重要工具,它允许系统管理员查看和修改用户账户的密码时效设置。下面我将详细介绍chage命令的用法和实际应用场景。
chage [选项] 用户名
选项 | 描述 |
---|---|
-d, --lastday LAST_DAY | 设置密码最后修改日期(从1970-1-1起的天数) |
-E, --expiredate EXPIRE_DATE | 设置账户过期日期(YYYY-MM-DD) |
-I, --inactive INACTIVE | 密码过期后账户被锁定的宽限天数 |
-l, --list | 显示账户时效信息 |
-m, --mindays MIN_DAYS | 设置密码修改最小间隔天数 |
-M, --maxdays MAX_DAYS | 设置密码有效最大天数 |
-W, --warndays WARN_DAYS | 设置密码过期前警告天数 |
sudo chage -l username
输出示例:
Last password change : Jan 01, 2023
Password expires : Apr 01, 2023
Password inactive : Apr 08, 2023
Account expires : never
Minimum number of days between password change : 7
Maximum number of days between password change : 90
Number of days of warning before password expires : 14
sudo chage -M 90 -m 7 -W 14 username
sudo chage -E 2023-12-31 username
设置用户账户在2023年12月31日过期
sudo chage -d 0 username
将密码最后修改日期设为0(1970-1-1),强制用户下次登录时必须修改密码
sudo chage -M 99999 username
将密码最大有效期设为非常大的数值(约273年),相当于禁用密码过期
for user in user1 user2 user3; do
sudo chage -M 90 -m 7 -W 14 $user
done
sudo chage -d "2023-01-01" username
sudo chage -I 7 username
密码过期后7天内账户仍可登录,之后将被锁定
passwd -x
或LDAP客户端工具/etc/shadow
- 存储用户密码和时效信息/etc/login.defs
- 系统默认密码策略配置通过合理使用chage命令,系统管理员可以有效地管理用户密码策略,提高系统安全性。