命令名称“chage”是“change age”的首字母缩写。此命令用于更改用户的密码老化/到期信息。
作为系统管理员,您的任务是强制执行密码更改策略,以便在一段时间后,用户将被迫重置密码。
没有其他未经授权的用户可以查看密码的过期/到期信息。作为root用户,可以执行该命令修改老化信息。
句法
chage [-m mindays] [-M maxdays] [-d lastday] [-I inactive] [-E expiredate] [-W warndays] user
实际上,您也可以通过下面的/etc/login.defs文件强制用户定期更改密码。
# Password aging controls:
#
# PASS_MAX_DAYS Maximum number of days a password may be used.
# PASS_MIN_DAYS Minimum number of days allowed between password changes.
# PASS_MIN_LEN Minimum acceptable password length.
# PASS_WARN_AGE Number of days warning given before a password expires.
#
PASS_MAX_DAYS 99999
PASS_MIN_DAYS 0
PASS_MIN_LEN 5
PASS_WARN_AGE 7
但是/etc/login.defs会影响在系统中注册的每个用户。如果您想为不同的用户设置不同的规则,那么 chage 是适合您的工具。
如果你输入 chage 没有任何参数,那么将显示快速指导。我们可以通过一些例子来更好地理解这个命令。
要查看用户的密码到期详细信息,请运行以下命令
chage –l testuser
输出:
Last password change : May 01, 2012
Password expires : never
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 99999
Number of days of warning before password expires : 7
如您所见,该用户禁用了密码过期。
如果已启用,这将禁用用户的密码到期。
chage -I -1 -m 0 -M 99999 -E -1 testuser
• -I -1:这会将“密码无效”设置为从不
• -m 0:这会将密码更改之间的最小天数设置为 0
• -M 99999:这会将密码更改之间的最大天数设置为 99999
• -E -1:这会将“帐户过期”设置为从不。
大多数情况下,作为管理员,您需要为所有用户设置密码到期日期,以提高安全性。为用户启用密码到期日期后,用户将在到期日期后下次登录时强制更改密码。
将密码设置为 20 天后过期。为此,我们将使用 -m 选项,如图所示
chage -M 20 testuser
Output
Last password change : May 01, 2012
Password expires : May 21, 2012
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 20
Number of days of warning before password expires : 7
chage 命令可用于设置用户的密码到期日期。这是使用 -E 选项实现的,如下所示。请注意,日期的格式是 YYYY-MM-DD。下面的命令显示用户“james”的密码将于 2012 年 5 月 28 日到期。
chage –E “2012-05-28” james
Output
Last password change : May 01, 2012
Password expires : May 21, 2012
Password inactive : never
Account expires : May 28, 2012
Minimum number of days between password change : 0
Maximum number of days between password change : 20
Number of days of warning before password expires : 7
默认情况下,此值设置为 7。因此,当用户在 7 天到期之前登录时,他们将开始收到有关即将到期的密码到期的警告。如果您想将其更改为 10 天,您可以执行以下操作:
chage –W 10 testuser
当您创建一个新的用户帐户时,您可以将其设置为强制用户在首次登录时更改密码,如下所示:
chage –d 0 testuser
这会将“上次密码更改”重置为“必须更改密码”。
结束时需要注意的几点