通过 ssh 更改过期密码

通过 ssh 更改过期密码

我添加了一些新用户并设置了默认密码。

使用chage -d 0,我已经使它们过期,希望他们在第一次登录时会被提示更改密码。

不幸的是,访问这台机器的唯一方式是通过 SSH。当用户通过 ssh 连接到该机器时,他们会得到:

Your account has expired; please contact your system administrator

我检查了一下/var/log/auth.log,发现了以下内容:

Feb 27 10:19:01 gitlabci sshd[6793]: pam_unix(sshd:account): account <USER> has expired (account expired)
Feb 27 10:19:01 gitlabci sshd[6793]: Failed password for <USER> from <MY_IP> port 1939 ssh2
Feb 27 10:19:01 gitlabci sshd[6793]: fatal: Access denied for user <USER> by PAM account configuration [preauth]

我没有看到任何/etc/ssh/sshd_config允许提示输入新密码的配置选项。

有人有什么建议吗?

答案1

只有根用户可以重新启用过期的帐户。

  1. 运行sudo chage -E -1 <username>以重新启用它。
  2. 然后,普通用户必须记住在登录后手动更改密码$ passwd

相关内容