为帐户设置未来的到期日期有问题

为帐户设置未来的到期日期有问题

命令的输出passwd -S显示了一个非常令人困惑的日期。请看下面的命令

root@cluster:~# passwd  -S 9240305
9240305 LK 1970-01-01 0 99999 7 -1 (Password locked.)
root@cluster:~#
root@cluster:~# passwd -u 9240305
Unlocking password for user 9240305.
passwd: Success
root@cluster:~# passwd  -S 9240305
9240305 PS 1970-01-01 0 99999 7 -1 (Password set, SHA512 crypt.)
root@cluster:~# date
Sun Jul  3 22:18:22 IRDT 2016
root@cluster:~# usermod --lock --expiredate 2016-09-01 9240305
root@cluster:~# passwd  -S 9240305
9240305 LK 1970-01-01 0 99999 7 -1 (Password locked.)

第一个命令显示帐户已锁定。日期是 1970 年,这对我来说很模糊。第二个命令启用帐户,但我们再次看到(第三个命令)日期是 1970 年。第五个命令设置到期日期并锁定帐户。我预计该帐户将在2016年9月1日被锁定。第 6 个命令仍然显示 1970。

这意味着什么?

答案1

返回的日期passwd -S是密码上次更改的时间,而不是密码到期的日期。 1970 年 1 月 1 日是“unix 纪元”——即时间零。

如果你看一下,/etc/shadow你会发现第三个字段是一个数字;这是密码设置时间过去的天数。

相关内容