chage命令:修改账号密码的过期信息

时间:2022-04-25 17:50:42

说明

chage命令用来指定修改密码后密码的有效天数。 系统会根据此值来限定用户必须更改密码的日期。

语法

chage [options] LOGIN

LOGIN:用户名

选项

  • -m days: 表示密码可更改的最小天数。
  • -M days: 表示密码有效(可更改)的最大天数
  • -E Date :表示在该日期之后密码失效,格式YYYY-MM-DD
  • -l username: 可以查看用户的当前设置信息
  • -W days: 指定口令过期前要警告用户的天数。
  • -d:上一次更改的日期。

示例

/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/default/useradd的EXPIRE变量也可以设置密码过期的默认值。

# useradd defaults file
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes

要求用户demo5天内不能更改口令,并且口令最长的有效期为30天,口令过期前5天通知用户:

$chage -m 5 -M 30 -W 5 user1