単一のスクリプトを使用して、2つのサーバー(ソース - >サーバーA - >サーバーB)間でファイルを転送する方法です。

単一のスクリプトを使用して、2つのサーバー(ソース - >サーバーA - >サーバーB)間でファイルを転送する方法です。

私は3つのLinuxサーバーを持っています。 1つ目は開発マシン(バイナリをコンパイルする場所)、2つ目は「テストベッド」に接続するのに役立つ「ジャンプボックス」です。ここではバイナリをコピーする必要があります。

今私は次のようなことをしています。

1) scp -r binabc@jumpbox:/temp/ を使用して、マイバイナリをdevmachineからJumpboxにコピーします。

2) Jumpbox にログインし、scp -r bin abc@testbed:/bin/ を使用して Jumpbok からテストベッドにバイナリファイルをコピーします。

1つのスクリプトで上記の2つの手順を実行する方法はありますか?

これを行うには、パスワードをファイルに保存する必要があることを知っていますが、それでも問題ありません。いつでも暗号化を使用できます。

ベストアンサー1

最も簡単なオプションはSSH接続を行うことです公開鍵認証ではパスワードは必要ありません。。これは、サーバー間で公開鍵を共有する必要があることを意味します。

その後、「オリジナル」サーバーで同様のコマンドを使用できます。

cat file | ssh user@serverA "ssh user@serverB \"cat > file\""

おすすめ記事