SSHキーを設定すると、SSHパスワードでパスワードの入力を求められます。

SSHキーを設定すると、SSHパスワードでパスワードの入力を求められます。

リモートコンピュータに公開鍵を入れましたが、まだsshパスワードプロンプトが表示されます。ssh -vv役に立つ出力(最後の数行のみ)は次のとおりです。

debug2: service_accept: ssh-userauth
debug1: SSH2_MSG_SERVICE_ACCEPT received
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
debug1: Next authentication method: publickey
debug1: Offering RSA public key: /Users/lior/.ssh/id_rsa  <-- THAT's MY PRIVATE KEY!
debug2: we sent a publickey packet, wait for reply
debug1: Authentications that can continue: publickey,gssapi-keyex,gssapi-with-mic,password
debug1: Trying private key: /Users/lior/.ssh/id_dsa
debug1: Trying private key: /Users/lior/.ssh/id_ecdsa
debug1: Trying private key: /Users/lior/.ssh/id_ed25519
debug2: we did not send a packet, disable method
debug1: Next authentication method: password

重要:同じプロセスを実行した後、パスワードなしで別のシステムにSSHで接続できたため、特定のリモートシステム(CentOS 6で実行)に問題があるとします。

どんなアイデアがありますか?

答え1

リモートユーザーのホームディレクトリから:

  • homedirの所有者は誰ですか?
  • homedir/.sshの所有者は誰ですか?
  • homedir/.ssh/authorized_keysの所有者は誰ですか?

〜、〜/.ssh、〜/.ssh/authorized_keysへのアクセス権は何ですか?

~/.ssh/authorized_keysに許可された読み取りおよび/または書き込み権限を付与すると、sshdはファイルを信頼しなくなります。

答え2

この方法で問題が100%解決されるかどうかはわかりませんが、試してみてください。ディレクトリにファイルを作成します~/.ssh/config。設定ファイルにvimを適用するときは、次のことを試すことができます。

Host <host_name_of_server>
HostName <ip_address_of_server>
User <user_created_for_server>
Port 22
PasswordAuthentication No
IdentityFile <path_to_key>

したがって、これが追加されたら、次のことができます。

ssh <host_name_of_server>

これにより、サーバーに割り当てられているホストにSSHで接続するときにパスワードの入力を求められません。結果がどうなるか教えてください。

関連情報