私は現在、日常的な作業を簡単にするためにLinuxシステムをセットアップしています。端末を使用してホストに移動できるようにSSHを設定したいと思います。 LocalForwardとProxyJumpについて読みました。目的は、最初のサーバーに接続し、それを介して接続をトンネリングしてから2番目のサーバーに接続することです(2番目のサーバーは最初のサーバーからのみ接続できる領域にあるため)。
今私がしたことは〜/.ssh/configファイルの次の部分です。
Host tunnel
HostName <firstServer>
IdentityFile ~/.ssh/example.key
LocalForward 9906 <secondServer>:22
User helloWorld
「ssh トンネル」を使用してサーバーに接続すると、最初のサーバーに正常に接続できるようになります。これで、telnetを使用して「telnet SecondaryServer 9906」を使用して2番目のサーバーを確認すると、そのサーバーでSSHが実行されていることがわかります。 「ssh localhost:9906」を使用して2番目のサーバーでSSHを試みると、ホスト名が解決されないというメッセージが表示されます(127.0.0.1:9906と同じ)。
後で「ProxyJump」オプションについて読み、次のことを試しました。
Host tunnel
HostName <firstServer>
ProxyJump <secondServer>:22
User helloWorld
ただし、接続は確立されません。 「接続先」で停止しました。
ここで明らかなものを見逃していますか?たぶん私がSSH配信の基本概念全体を誤解したのではないでしょうか?私はPuttyの使い方に慣れていましたが、最近はLinuxに切り替えてすべてを適切に設定したかったです。
ベストアンサー1
この ~/.ssh/config は ProxyJump を渡します。飛躍到着ターゲット、ポートを最後までバインドします。ターゲット:
Host jump
HostName <server-ip>
User user-name
IdentityFile ~/.ssh/key.pem
LocalForward 8888 localhost:8888
Host target
HostName <server-ip>
User user-name
IdentityFile ~/.ssh/key.pem
ProxyJump jump
LocalForward 8888 localhost:8888
使用法: