
リモートサーバーから別のリモートサーバーにファイルをコピーしようとしています。サーバーAを介して公開鍵を生成し、ssh-keygen -t rsa
公開鍵の内容を.ssh/authorized_keys
サーバーBのファイルにコピーしました。
ただし、接続をテストするためにSSHを介してサーバーBに接続しようとすると、許可拒否エラーが発生します。何か抜けましたか?
答え1
IdentityFile ~/.ssh/identity
設定ファイルにフラグを追加することで問題を解決できました。 @Kamilが述べたように、これは秘密鍵~/.ssh/identity
がロードされるパスがローカルのデフォルトとして解決されないためです。指定されたパスをssh
明示的に追加すると、IdentityFile
sshは秘密鍵を確認できます。
答え2
答え3
SSH プロトコルバージョン 1 のデフォルト値は~/.ssh/identity
(現在ほとんど使用されていません)です. SSH バージョン 2 の場合、~/.ssh/id_rsa
所有者の秘密鍵ファイルへの一般的なパスまたはシンボリックリンクです。だからこそid_rsa.pubで言及SSHコピーID上記の例はSSHキージェネレータデフォルトでは、~/.ssh/id_rsa
秘密鍵と公開鍵を使用することをお勧めします~/.ssh/id_rsa.pub
。