-I:查看一个账户和密码有关的时间参数。
-d:YYYY-MM-DD,修改最近一次更改密码的时间。
-E:YYYY-MM-DD,修改账号的失效时间。
-l:天数,设置密码几天后失效。
-m:天数,设置密码至少保留几天。
-M:天数,设置密码多久后需要更新。
-W:天数,设置密码过期前警告时间。
-I:查看一个账户和密码有关的时间参数。
红色下划线:chage -l user9 查看 user9 用户的密码参数。
Last password change : May 17, 2021(最后一个修改密码时间:2021年5月17日)。
Password expires : never(密码过期时间:从不)。
Password inactive : never(密码失效时间:从不)。
Account expires : never(账户到期时间:从不)。
Minimum number of days between password change : 0 (两次修改密码之间相距的最小天数:0)。
Maximum number of days between password change : 99999。 (两次修改密码之间相距的最大天数:99999)。
Number of days of warning before password expires : 7(密码过期前的警告天数:7)。
-d:YYYY-MM-DD,修改最近一次更改密码的时间。
红色下划线:原来 user9 最近一次更改密码的时间 2021-5-17。
黄色下划线:chage -d 修改了最后一次更改密码的时间 2020-1-1。
-E:YYYY-MM-DD,修改账号的失效时间。
1、红色下划线:chage -E 2020-1-1 把 user9 的账号失效时间设置为 2020-1-1。
2、修改账号的失效时间后,user9 已经达到了账号失效的标准。所以,重新登录 user9 账号的时候已经不能登录此账号。
3、黄色下划线:chage -E -1 把 user9 的账号失效时间设置为 从不失效。
4、恢复账号后,user9可以重新登录。
tips:chage -E 后面可以跟准确的日期 也 可以跟天数。准确日期就是账号失效的日期,而跟天数则从1970年1月1日开始算起,到达了设置天数的日期就是账号失效的日期。
如:chage -E 30 user9,就是从1970年1月1日开始算起。30天后 user9 失效,1970年1月1日 + 30天,就是1970年1月31日。
-M:天数,设置密码多久后需要更新。
红色下划线:user9 此时的密码过期时间:从不。两次修改密码之间相距的最大天数:99999
黄色下划线:chage -M 10 把 user9 的密码更新时间设置在10天后。两次修改密码之间相距的最大天数:10。
-l:天数,设置密码几天后失效。
红色下划线:user9 密码过期的时间是 May 28, 2021。
黄色下划线:chage -I 3 把 user9 的密码失效时间设置为3天后,密码失效后用户将无法登陆系统了。
-m:天数,设置密码至少保留几天。
红色下划线:user9 两次改变密码之间相距的最小天数:0。即随时可以修改。
黄色下划线:chage -m 7 把 user9 两次改变密码之间相距的最小天数设置为 7。即 7 天内不能修改密码。
蓝色下划线:最后一次修改密码的时间是 May 18, 2021。由于设置了7天不能修改密码。即25号以内不能修改密码。
Xshell 登录 user9 用户。date 查看当前时间 May 19,2021。passwd 尝试修改密码,被提示You must wait longer to change your password (你必须等待更长时间才能更改密码)。即设置了密码至少保留几天,这段时间内不能修改密码。
root 更改时间,把系统时间设置为 2021-5-25。
25号 离上次设置密码 18号已相隔7天。所以,可以设置密码成功。
-W:天数,设置密码过期前警告时间。
红色下划线:user9 的密码过期前警告时间是 7 天。
黄色下划线:chage -W 11 把 user9 密码过期前警告时间设置为 11 天。
蓝色下划线:user9 密码过期时间是 2021年5月29日。现在是2021年5月19日,结合密码过期前 11 天有警告提示。user9登录系统应该会有 密码过期 提示。
红色下划线:user9 用户登录系统,正如预期出现了密码过期提醒。
在Unix/Linux系统中,passwd这个指令可以用来变更使用者的密码,对于一般使用者而言(非root),执行passwd之后,会需要输入目前现行的密码,才可以允许密码的变更;而如果是root管理者的话,则可以在不需要现行密码的情况下,变更任何使用者的密码(包含root自己的密码)。
变更使用者密码一般的使用者执行passwd即可变更自己的密码:
如果是root管理者的话,可以变更任何使用者的密码:
sudo passwd xxx
如果变更root管理者的密码,就跟一般使用者一样直接执行passwd即可。
显示密码状态资讯若要显示密码的状态资讯,可以加上-S参数:
这个输出包含七个栏位:
帐号名称。
密码状态,状态包含锁定密码(L)、无密码(NP)与可用密码(P)。
上次修改密码的时间。
密码最短使用期限(minimum password age),单位为天。
密码最长使用期限(maximum password age),单位为天。
密码过期前警告期间(password warning period),单位为天。
密码过期后可使用的期间(password inactivity period),单位为天。
如果是root管理者,则可以查看特定使用者的密码资讯:
sudo passwd -S gtwang
root管理者可以使用-aS参数查阅所有使用者的密码状态资讯:
sudo passwd -a
移除使用者的密码若要移除使用者的密码,可以使用-d参数,并加上使用者的名称:
sudo passwd -d xxxx
移除使用者的密码之后,可以检查一下状态资讯:
sudo passwd -S xxxx
xxxx NP 09/30/2015 0 99999 7 -1
在密码被移除之后,该使用者的帐号也会同时被停用,无法登入。
设定密码为过期状态
有时候因为某些原因(像是重新设定密码之后),我们会希望使用者立刻更改自己的密码,这时候我们可以使用-e参数:
sudo passwd -e xxx
passwd: password expiry information changed.
检查一下状态资讯:
sudo passwd -S xxx
xxx P 01/01/1970 0 99999 7 -1
这时候如果使用者使用SSH 登入的话,系统就会强制变更密码:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)