设置新用户缺省密码的过期时间
#vi /etc/login.defs
修改PASS_MAX_DAYS的值即可
以上设置只适用于进行该设置以后,新添加的用户,即把这个设置作为新添用户的缺省设置
对于系统已经存在的账号
#passwd -x 90 account
例如修改root账户
#passed -x 90 root
设置某个用户的密码有效期
chage -m 0 -M 90 -W 15 root
说明:
(1)以上命令表示设置用户root的密码最小有效期为0天,最长有效期为90天,在密码过期前15天对用户进行提醒
(2)chage的参数包括
-m 密码可更改的最小天数。为零时代表任何时候都可以更改密码。
-M 密码保持有效的最大天数。
-W 用户密码到期前,提前收到警告信息的天数。
-E 帐号到期的日期。过了这天,此帐号将不可用。
-d 上一次更改的日期
-i 停滞时期。如果一个密码已过期这些天,那么此帐号将不可用。
-l 例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期。
查看某个用户的密码状态
#chage -l root
Last password change : Oct 23, 2013 【最近一次修改密码的时间】
Password expires : Jan 23, 2014 【密码过期时间】
Password inactive : never 【密码失效时间】
Account expires : never 【账户过期时间】
Minimum number of days between password change : 0 【两次改变密码之间相距最小天数】
Maximum number of days between password change : 92 【两次密码改变密码相距最大天数】
Number of days of warning before password expires : 7 【密码过期前开始警告的天数】
通过例子来理解一个账号各种期限
首先 查看一个用户期限信息
#chage -l liz
Last password change : Jan 14, 2013
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
Password expires 的意思
chage 加M 选项有两个作用
一,Last passwrd change + M天数 = Password expires
二,Maximum number of days between password chang=M天数
其实,一和二本质上是一样的。
修改密码过期天数
# chage -M 10 liz
#chage -l liz
Last password change : Jan 14, 2013
Password expires : Jan 24, 2013
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 10
Number of days of warning before password expires : 7
上一次修改密码日期是 2013/1/14 现在添了密码过期天数10天,如果你在2013/20/14 前一个星期用这个账号登陆,系统会提示你多少天后密码会到期。
如果2013/20/14之前没改密码,然后2013/20/14之后去登陆账号,系统会提示用户强制改密码才能用这个用户登陆。
然后你用root用户登陆 查看liz用户信息
#chage -l liz
Last password change : Mar 11, 2013
Password expires : Mar 21, 2013
Password inactive : never
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 10
Number of days of warning before password expires : 7
Last password change 已经变成了 2013/5/11 Password expires 也已经相应的增加了10天
接下来看 Password inactive 这个参数
Password expires + I 天数 = Password inactive
#chage -I 5 liz
chage -l liz
Last password change : Mar 11, 2013
Password expires : Mar 21, 2013
Password inactive : Mar 26, 2013
Account expires : never
Minimum number of days between password change : 0
Maximum number of days between password change : 10
Number of days of warning before password expires : 7
看到此时 Password inactive 改成了在 Password expires基础上再加5天
1.如果你在 3月21日前一星期登陆 系统会提示你改密码
2.如果你在 3月24日登陆 也就是Password expires过了,而在Password inactive之前登陆,系统会强制你改密码才能登陆,改完密码后Last password change,Password expires,Password inactive 都会根据你改时候的系统日期和相应的M和I的参数改变,改完系统照常进入。
3.如果你在 3月25登陆,过了Password inactive,会提示你账号过期,需要联系系统管理员,没有修改密码的机会。
写了这么多其实就是
密码到期(Password expires)登陆改完还能进系统,密码失效(Password inactive)就得找管理员啦~