gue*_*tli 3 ssh password expired
为什么密码会过期?
几天以来,我一直在使用公钥(无密码)登录。今天我收到这条消息:
> ssh modlink_foo_q@server
You are required to change your password immediately (password expired)
Last login: Wed Nov 14 09:26:48 2018 from 10.130.4.3
WARNING: Your password has expired.
You must change your password now and login again!
Changing password for modlink_foo_q.
Run Code Online (Sandbox Code Playgroud)
这是 /etc/shadow 中的匹配行
server:~ # grep modli /etc/shadow
modlink_foo_q:!:17757:1:90:7:::
Run Code Online (Sandbox Code Playgroud)
我认为没有设置密码。那么谁可以过期呢?
操作系统:SUSE Linux Enterprise Server 12 SP3
您的加密密码的值(或缺少密码)不会改变已设置密码过期策略的事实。
见https://linux.die.net/man/3/shadow和https://linux.die.net/man/5/shadow
当前密码是在 2018 年 8 月 14 日星期二设置的
(第三个字段是sp_lstchg- 自 1970 年 1 月 1 日上次更改密码以来的天数:date --date '1970-01-01 +17757days')
(很可能是在创建帐户时),有效期为 90 天。
(字段#5 sp_max- 必须更改密码的天数)即密码有效期至date --date '1970-01-01 +17757days +90days'
2018 年 11 月 12日星期一。
您目前处于密码到期日后的 7 天宽限期,除非您更改密码或更改/更新策略字段(带有chage),否则该帐户将在 2018 年 11 月 19 日星期一之前被视为无效和禁用。
chage --lastday 2018-11-14 modlink_foo_q
Run Code Online (Sandbox Code Playgroud)
将sp_lstchg使用今天的日期更新该字段,这将允许您在模拟新密码重置之前继续使用该帐户 90。