https://www.cnblogs.com/paul8339/p/7145788.html
/etc/shadow 内容详解
root:$1$WAYl3Bch$Kfefeefefsf3V5x/UD0:18253:0:99999:7:::
weblogic:$1$MUzEfjB3$3fefe4bI28v.Xy2IHsjOzupxs.:18087:0:99999:7:::
tomcat:$1$Hee5HnyB$vXfefen.di1QWtFC/IvS5g99F.:18361:0:99999:7:365:18482:
:为分隔符
1)用户名 root
2)加密后的密码 $1$WAYl3Bch$Kfefeefefsf3V5x/UD0
3)最近改动密码的日期 18253
4)密码不可被更改的天数 0
5)密码需要重新设定的天数,如果设置为99999,则永不修改(与第8列,账号失效日期冲突)
6)密码到期前多少天就发出告警 7
7)密码过期后的宽限时间,(默认为空),如果到期,则到期后的多少天内,仍然可用
8)帐号失效日期,(默认为空),一旦设置,则到期立即禁止账号登录
9)这一列是保留的,,(默认为空),暂无用
注意如果设置了99999,那么账号失效日期应该为空,否则到失效日期,用户会被直接拒绝登录
语法
chage [选项] 用户名
选项
-m:密码可更改的最小天数。为零时代表任何时候都可以更改密码。
-M:密码保持有效的最大天数。
-w:用户密码到期前,提前收到警告信息的天数。
-E:帐号到期的日期。过了这天,此帐号将不可用。
-d:上一次更改的日期。
-i:停滞时期。如果一个密码已过期这些天,那么此帐号将不可用。
-l:例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期。
查看密码有效期详情
chage -l tomcat
chage -l guoliangya
设置用户密码永不过期(注意如果设置了99999,那么账号失效日期应该为空,否则到失效日期,用户还是会被拒绝登录)
chage -M 99999 -E -1 tomcat
设置密码有效期为90天
chage -M 90 tomcat
强制用户登录修改密码
chage -d 0 tomcat
强制用户下次登陆时修改密码,并且设置密码最低有效期0和最高有限期90,提前15天发警报提示
chage -d 0 -m 0 -M 90 -W 15 tomcat
设置账号的有效期是为指定日期2014-09-30,过了这天,此帐号将不可用
chage -E '2014-09-30' tomcat
chage -E $(date -d +120days +"%Y-%m-%d") tomcat
chage -E $(date -d +120days +"%Y-%m-%d") developer
usermod -e $(date -d +120days +"%Y-%m-%d") tomcat
修改用户密码
passwd tomcat
cat /etc/shadow
cat /etc/shadow | grep ^tomcat