設定しようとしています。SSHキーベースのログインサーバーAからサーバーBへ。
私はssh-keygen
サーバーAで実行しており、ssh-copy-id
id_rsa.pubをサーバーBにコピーするために使用しました。サーバーAからコピーしようとすると、ssh user@serverB
エラーが発生し続けます。
Permission denied (publickey).
/etc/ssh/sshd_config file
すべてが正しく設定されていることを再確認しました。また、両方のサーバーでSELinuxを無効にします。この問題の原因が何であるかを調べてください。
答え1
私がログインした新しいサーバー(サーバーA)のRSAキーサイズは、私がログインした古いサーバー(サーバーB)が処理できるものよりも大きかったです。新しいサーバーでed25519キーを生成し、それをAuthorized_keysファイルに追加しました。 RSAキーを放棄するのは良い理由です。
答え2
次の点を確認する必要があります。
- サーバーBが許可できるキーの種類
- ssh pubkeyがそのキーでログインしたいユーザーのAuthorized_keysファイルに正しく適用されている場合(通常
~/.ssh/authorized_keys
) - 秘密鍵に対する権限(他のユーザーに公開する必要はありません)
- ファイル権限
authorized_keys
(上記と同じ) - ファイルの所有者
authorized_keys
(ユーザーでなければなりません)
出力はもっと役に立ちますが、現在のところこれは私が考えることができるすべてです。