ssh
から を経由して にserver1
到着したいと考えていました。server3
server2
これは以下を使用して実行できます。
ssh -t user2@server2 ssh user3@server3
しかし、どうすればこれを達成できるのでしょうserver2
かserver3
?パスワードログインですか?
制約:
1)パスワードを入力しない
2)この場合、SSHキーは使用できません
答え1
最後の を除く-t
後続の各 では オプションを使用する必要があります。ssh
ssh -t user1@server1 ssh -t user2@server2 ssh user3@server3
可能であれば、埋め込み ssh コマンドの代わりに-J
( ) を使用することをお勧めします。ProxyJump
ssh -J user1@server1,user2@server2 user3@server3
答え2
これを行うにはいくつかの方法があります。私が使う簡単で簡単な方法は、トンネルを掘ってからserver1 -> server2
そのトンネルを使ってserver1 -> server3
ssh -L localhost:2222:server3:22 server2
ここで言っているのは、
sshでserver2
...
に表示されるすべてのトラフィックらトンネルのローカル側、ローカルホストのポート 2222 を
トンネルに通します。
反対側では、そのトラフィックをサーバー 3 のポート 22 に送信します。
次に別のウィンドウから:
ssh -p2222 localhost
すると、server3 のパスワードの入力が求められます。