1、查看密码过期时间
你能够使用chage -l命令来查看指定用户的密码过期信息。例如,查看用户example的密码过期时间,可执行以下命令:
chage -l 用户示例
[root@host-172-18-93-229 ~]# chage -l root 最近一次密码修改时间 :6月 04, 2025 密码过期时间 :9月 02, 2025 密码失效时间 :从不 帐户过期时间 :从不 两次改变密码之间相距的最小天数 :0 两次改变密码之间相距的最大天数 :90 在密码过期之前警告的天数 :72、修改密码过期时间(命令)
若要修改密码的过期时间,可使用chage命令搭配不同参数来实现。下面是一些常见的用法。
设置密码在指定天数后过期
执行以下命令,能让用户example的密码在 30 天后过期:
chage -M 30 用户设置密码永不过期
通过执行下面的命令,可让用户example的密码永远不会过期:
chage -M -1 用户设置密码立即过期
若要使用户example在下次登录时必须更改密码,可执行
chage -d 0 用户综合设置密码过期参数
你还可以一次性设置多个密码过期相关参数。例如:
chage -M 90 -m 7 -W 14 -I 7 用户上述命令的参数含义如下:
-M 90:密码的有效期为 90 天。-m 7:两次修改密码之间至少需要间隔 7 天。-W 14:密码过期前 14 天开始提醒用户。-I 7:密码过期 7 天后,账号将被锁定。
3、修改密码过期时间(修改配置文件)
你也可以通过编辑/etc/login.defs文件来修改系统的默认密码策略,不过这种方式会对所有新建用户产生影响。找到并修改以下参数:
PASS_MAX_DAYS 90 # 密码有效期(天) PASS_MIN_DAYS 0 # 两次修改密码的最小间隔(天) PASS_WARN_AGE 7 # 密码过期前的警告天数- PASS_MAX_DAYS:这个参数用于控制密码的最大有效天数。当设置为
-1时,密码就不会因为时间到期而失效。 - PASS_WARN_AGE:它表示在密码过期前多少天开始提醒用户。设置为
-1后,系统就不会进行密码过期提醒。
修改完成后,新创建用户的密码策略会按照修改后的参数生效。但对于已存在的用户,需要使用chage命令单独修改。
永不失效配置
在文件中找到并修改以下参数,将它们的值设置为-1(-1代表 “永不过期”):
# 密码有效期(天)- 设置为 -1 表示永不过期 PASS_MAX_DAYS -1 # 密码过期前的警告天数 - 设置为 -1 表示不警告 PASS_WARN_AGE -14、注意事项
- 要执行上述操作,你需要拥有 root 权限,或者使用
sudo命令。 - 频繁更改密码策略可能会给用户带来不便,所以在修改时要谨慎考虑。
- 如果你的系统使用 LDAP 或 Active Directory 进行集中身份验证,那么密码策略需要在中央服务器上进行配置。