'scp'を使用してリモートホストから別のリモートホストにディレクトリをコピー中にエラーが発生しました。

'scp'を使用してリモートホストから別のリモートホストにディレクトリをコピー中にエラーが発生しました。

[email protected]私のラップトップからあるRaspberry Pi()から別のRaspberry Pi()にファイルディレクトリをコピーしようとしています[email protected]

~/example$ scp -r [email protected]:~/example/files_to_send [email protected]:~/example

ただし、[email protected](ディレクトリをコピーするホストの)パスワードを入力した後、次のエラーメッセージが表示され続けます。

[email protected]'s password:
Permission denied, please try again.
Permission denied, please try again.
Permission denied (publickey,password).
lost connection

~/.ssh/known_hosts各デバイスのECDSA指紋を削除しますssh。また、ホームディレクトリ(およびすべてのコンテンツ)に正しい権限、所有者、およびグループがあることを確認しました。

また、[email protected]Raspberry Piへのアクセスを使用している場合()からコピーを試み、ssh次のことを行いました。

~/example$ scp - r files_to_send [email protected]:~/example

良い結果。

scpリモートホストから別のリモートホストにコピーを使用するのがうまくいかないのはなぜですか?

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

編集する

-v次のオプションが見つかりました。scpページの項目は次のとおりですscp man

詳細モード。 scp および ssh(1) が進行状況に関するデバッグメッセージを出力するようにします。これは、接続、認証、および構成の問題をデバッグするのに役立ちます。

だからこれを命令に追加したら認証が成功[email protected]したと出ましたね。ただし、[email protected]後でそのペアを認証しようとすると、[email protected]次のメッセージが印刷され、接続が失敗します。

debug1: read_passphrase: can't open /dev/tty: No such device or address
Host key verification failed.
lost connection

答え1

scp次のように2つのリモートシステム間のローカルクライアントで実行する場合:

scp remote1:file remote2:

予想どおり、ローカルで認証し、remote1直接remote1認証しますremote2。予想通り、ファイル転送はローカルクライアントを介して転送されません。

scpクライアントに両方のリモートホストに認証し、ファイル転送自体を管理するように指示するには、追加のフラグが必要です。

scp -3 remote1:file remote2:

あなたの場合、最初のPiに証明書ベースのログインがないことを望みます。手動介入なしで操作2番目に設定されているため、認証は失敗します。 (鍵のロックを解除するにはパスワードが必要なようです。最初のPiが2番目のPiと通信しようとすると、そのパスワードを使用できないことに注意してください。)


わかりました。証明書ベースの認証が設定されていない場合は、もう一度お問い合わせいたします。 2つのリモートシステム間で転送されるようです。〜しなければならない証明書ベースの認証があります(パスワードは不要です)。

関連情報