如何在第一次使用ssh登录时强制用户更改密码?


28

我试图强迫新创建的用户在第一次使用ssh登录时更改密码。为了安全起见,我想给他一个安全的密码,直到他第一次登录。到目前为止,我做了以下工作:

useradd -s /bin/bash -m -d /home/foo foo
passwd foo

这样做chage -d 0 foo只会给我Your account has expired; please contact your system administratorssh登录错误。

Answers:


40

将密码使用期限更改为0天

句法 chage -d 0 {user-name}

在这种情况下

chage -d0 foo

这对我来说也超过SSH


14

根据passwd的版本,您可以尝试

  • passwd -f:通过使用户名的密码过期,强制用户在下次登录时更改密码。

  • passwd -epasswd --expire:立即使帐户密码失效。实际上,这可以迫使用户在下次登录时更改其密码。


passwd -e更改登录shell。
2016年

2
passwd -e为我工作(Linux Mint 17.3)
Joril

passwd -e在RHEL 7.0中工作
Crypteya

@schily passwd每个发行版的选项有所不同。在RHEL上,-e在下次登录时强制更改密码。
jrw32982

@ jrw32982不幸的是,Linux人员为与UNIX中已存在的长期存在冲突的程序创建了选项。选项-f使密码过期已经有30多年的历史,并且比Linux早许多年。甚至-e更改登录Shell的选项也早于完整的Linux。
schily
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.