web-dev-qa-db-ja.com

Windowsと2台のLinuxマシン間のsshトンネル上のsshトンネル

次の構成があり、トンネル上にトンネルを確立したいと思います。私はすでに次のトピックを読みました: トンネルをトンネルに入れる方法は?

私の構成:

Notebook --> Linux Server A --> Linux Server B

ノートブック:Windows XP with PuTTY
LinuxサーバーAおよびB:Ubuntu 10.10

ノートブックからPuTTY経由でサーバーAへのトンネルとのssh接続があります。次に、サーバーAからBへのトンネルを確立して、IDEで直接接続できるようにします。サーバーBのjboss。

これは、トンネルを確立するためにサーバーAで試したコマンドです。

ssh -t -L 8080:localhost:8080 Server B -p 8822

これは機能しません。

作業トンネルを確立する方法を誰かが考えていますか?

4
LStrike

あなたが探しているのは「sshマルチホップ」と呼ばれています。 .ssh/configのProxyCommandディレクティブ(またはPuTTYの同等の構成オプション、またはwhat-have-you)を使用して、これを透過的に行うことはかなり可能です。

Host linux-server-b
  ProxyCommand ssh -q linux-server-a nc -q0 linux-server-b 22

linux-server-bに接続しようとすると、これは何をしますか?

  • linux-server-aへのSSH接続を開きます
  • そこでnetcatを実行し、linux-server-bへのTCP接続を開きます
  • この接続をあなたに転送します

このようにして、linux-server-bに直接接続しているかのように、SSHのすべての機能を使用できます。複数のホップをチェーン化することもできます(サーバーAからサーバーB、サーバーC、サーバーD ...)

参照: