マルチホップSSHトンネルでssh-copy-idを使用する方法は?

マルチホップSSHトンネルでssh-copy-idを使用する方法は?

~/.ssh/id_rsa.pub私のローカルコンピュータ上のファイルの公開SSHキーを2つの~/.ssh/authorized_keysSSHホップから離れたリモートホストのファイルにコピーしたいと思います。つまり、localhostsshだけがアクセス可能host1ですが、host1sshはアクセス可能ですhost2。私の公開SSHキーをlocalhostからにコピーしたいと思いますhost2

SSH キーを 1 ホップ離れたリモートホストにコピーするには、SSHドキュメント次のコマンドを実行します。

ssh-copy-id -i ~/.ssh/mykey user@host

単一のコマンドで2ホップ離れたコンピュータにキーをコピーする方法はありますか?

ベストアンサー1

withオプションsshに任意のオプションを渡すことができます。このオプションを使用すると、ホストをジャンプしてキーをホストにコピーできます。ssh-copy-id-oProxyJumpssh-copy-id

以下は、ジャンプホストJump.spack.orgを介してsshキーをleia.spack.orgにコピーする例です。

$ ssh-copy-id -o ProxyJump=jump.spack.org leia.spack.org
[email protected]'s password:

Number of key(s) added:        1

次に、次のようにテストします。

$ ssh -J jump.spack.org leia.spack.org
Welcome to Ubuntu 20.04 LTS (GNU/Linux 5.4.0-42-generic x86_64)

おすすめ記事