web-dev-qa-db-ja.com

公開鍵でSSHを使用する場合、ユーザーアカウントのパスワードの有効期限が切れることはありますか?

したがって、公開鍵/秘密鍵でSSHを使用してUnixボックスに接続していて、そのボックスのユーザーアカウントのパスワードの有効期限が切れた場合でも、接続できますか?

6
Fraggle

はい、「接続」できますが、少なくともUbuntuディストリビューションでは、パスワードを変更する必要があります。一部のサーバーは異なる動作をします。

debug1: Authentications that can continue: publickey,password
debug3: start over, passed a different list publickey,password
debug3: preferred gssapi-keyex,gssapi-with-mic,gssapi,publickey,keyboard-interactive,password
debug3: authmethod_lookup publickey
debug3: remaining preferred: keyboard-interactive,password
debug3: authmethod_is_enabled publickey
debug1: Next authentication method: publickey
debug1: Trying private key: /home/testsftpuser/.ssh/id_rsa
debug1: read PEM private key done: type RSA
debug3: sign_and_send_pubkey
debug2: we sent a publickey packet, wait for reply
debug3: Wrote 656 bytes for a total of 1799
debug1: Authentication succeeded (publickey).
debug1: channel 0: new [client-session]
debug3: ssh_session2_open: channel_new: 0
debug2: channel 0: send open

パスワードが変更されるまで、アクセスは許可されません。

You are required to change your password immediately (password aged)
Linux devftp01 2.6.66-38-server #43-Ubuntu SMP Thu Sep 16 16:05:42 UTC 2010 x86_64     GNU/Linux
Ubuntu 12.04.4 LTS
WARNING: Your password has expired.
You must change your password now and login again!
Changing password for testsftpuser.
(current) UNIX password:
2
The Lizard
1
paradd0x
  1. パスワードがロックまたは期限切れになると、rootは!パスワードの前とユーザーがログインしようとしたときに署名します。ハッシュ化された提供されたパスワードは、!パスワードが一致しない前。

  2. Rootユーザーのロックを解除している間、!パスワードの前に署名して、パスワードエントリが一致し、ユーザーがログインできるようにします。

今あなたの状況を考えています。

  • ユーザーがロックまたは期限切れ
  • 提供されたパスワードがパスワードデータベースと一致しないため、ユーザーはターミナルでログインしようとし、ブロックされました。
  • 彼がssh-keysでログインしようとしたとき。それはimを記録します。
<snip>
debug3: authmethod_lookup publickey
debug3: remaining preferred: keyboard-interactive,password
debug3: authmethod_is_enabled publickey
debug1: Next authentication method: publickey
debug1: Offering public key: [email protected]
debug3: send_pubkey_test
debug2: we sent a publickey packet, wait for reply
debug3: Wrote 528 bytes for a total of 1637
debug1: Authentications that can continue: publickey,gssapi-with-mic,password
debug1: Trying private key: /home/atolani/.ssh/identity
debug3: no such identity: /home/atolani/.ssh/identity
debug1: Trying private key: /home/atolani/.ssh/id_rsa
debug3: no such identity: /home/atolani/.ssh/id_rsa
debug1: Trying private key: /home/atolani/.ssh/id_dsa
debug3: no such identity: /home/atolani/.ssh/id_dsa
debug2: we did not send a packet, disable method
debug3: authmethod_lookup password
debug3: remaining preferred: ,password
debug3: authmethod_is_enabled password
debug1: Next authentication method: password
</snip>

与えられているのは、sshログインの詳細な出力です。

これにより、sshログインは最初にID秘密鍵をチェックし、上記が利用できない場合は対話型パスワードに移動しようとすることがわかります。これは、ssh-keysを使用してログを記録している間、ユーザーはパスワードをチェックしないため、パスワードがロックされているかどうかをチェックできないことを示しています。

そうです、パスワードの有効期限が切れているかロックされている場合、パスワードキーが設定されていればログインできます。

0
atolani