通过 ssh 更改过期密码

new*_*sta 6 ssh password

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

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

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

Your account has expired; please contact your system administrator
Run Code Online (Sandbox Code Playgroud)

我查了一下/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]
Run Code Online (Sandbox Code Playgroud)

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

有人有什么建议吗?

小智 7

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

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