鍵認証を使用する2つのリモートホスト間のscp

鍵認証を使用する2つのリモートホスト間のscp

scpキーベース認証を使用して2つのリモートホスト間でファイルをコピーしたいと思います。

scp -i /home/user/.ssh/id_rsa user@host1:/tmp/myfile user@host2:/tmp/

問題は、host2公開鍵を両方のサーバーにコピーしても、まだパスワードを入力するように求められます。これを行う方法はありますか?

答え1

host1またはで始めましたかhost2?この場合、冗長性がありhost_、両方のユーザーが同じで開始ホストが同じ場合、冗長user@性があります。

要約すると、host1から始まるとします。

  • コンテンツをホスト2id_rsa.pubにコピーauthorized_keys
  • リモートファイルのインポート(リモートからローカル)

    scp -i /home/user/.ssh/id_rsa host2:/tmp/somedistantfile /tmp
    
  • 送信(ローカルからリモートへ)

    scp -i /home/user/.ssh/id_rsa /tmp/somelocalfile host2:/tmp
    

答え2

次のコマンドを使用して、リモートコンピュータ間で直接コピーできます。

ssh -A -t -v user-1@source-host scp /path/to/source/file user-2@dest-host:/path/to/dest/file

これは、ローカルコンピュータを使用せずにファイルをローカルコンピュータに直接コピーするため、大容量ファイルに役立ちsource-hostますdest-host

上記のコマンドで最初にssh-add .ssh/my-private-keyparamを実行または使用する必要があります。-i .ssh/my-private-key

関連情報