web-dev-qa-db-ja.com

期限切れのパスワードを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の設定オプションが表示されません。

誰か提案がありますか?

3
newellista

期限切れのアカウントを再度有効にできるのは、rootユーザーのみです。 Sudo chage -E -1 <username>を実行して、再度有効にします。通常のユーザーは、$ passwdでログインしたら、パスワードを手動で変更することを忘れないでください。

2
leif81