chage命令:修改账号密码的过期信息
说明
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