パスワードでマルチホップSSHを実行するには?

パスワードでマルチホップSSHを実行するには?

sshから始めてを経由してserver1到着server3したいと思いますserver2

これは以下を使用して行うことができます。

ssh -t user2@server2 ssh user3@server3

しかし、私はserver2これをどうやって行うことができますか?server3パスワードログイン?

制限要因:

1)パスワードを入力できません

2)この場合、SSH キーは使用できません。

答え1

-tssh最後のオプションを除くすべての後続のオプションでこのオプションを使用する必要があります。

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
エルlocalhostポート2222のトンネルのローカル側...トンネルを通って
移動します...
最後に、そのトラフィックをserver3ポート22に送信します。

その後、別のウィンドウで:

ssh -p2222 localhost

これにより、server3のパスワードの入力を求められます。

関連情報