ローカルの秘密鍵を使ってリモートサーバから別サーバにSCPする覚書です。
foo
、bar
、baz
があるとしますSSH
接続できるとしますfoo
にローカルの秘密鍵をコピーせずに、サーバfoo
からSCP
でサーバbar
、baz
にファイルをコピーします 秘密鍵はprivkey
ファイルとして進めます。
またSSH
接続情報はローカルおよびfoo
サーバの~/.ssh/config
にfoo
、bar
、baz
として設定済みとします。
# ssh-agent起動と鍵の登録
local$ eval `ssh-agent`
local$ ssh-add ~/.ssh/privkey
foo
サーバにSSH
接続します。
A
オプションを付けることでローカルの鍵およびパスフレーズがfoo
サーバに引き継がれます。
local$ ssh -A foo
foo
サーバのカレントディレクトリのsample.zip
をサーバbar
、baz
の/var/sample
にコピーします。
SCP
をsudo
で実行する場合は、環境変数SSH_AUTH_SOCK
を引き継ぐようにE
オプションを付与します。
(E
オプションは環境変数を引き継ぐ)
foo$ sudo -E scp sample.zip bar:/var/sample/sample.zip
foo$ sudo -E scp sample.zip bar:/bar/sample/sample.zip
No comments yet.
改行と段落タグは自動で挿入されます。
メールアドレスは表示されません。