Windows 和两台 Linux 机器之间 ssh 隧道上的 ssh 隧道

Windows 和两台 Linux 机器之间 ssh 隧道上的 ssh 隧道

我有以下配置,想要在隧道上建立隧道。我已经阅读了以下主题: 如何在隧道中铺设隧道?

我的配置:

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

笔记本:带有 putty 的 Windows XP
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

这行不通。

有人知道如何建立工作隧道吗?

答案1

您正在寻找的称为“ssh 多跳”。使用 ProxyCommand 指令.ssh/config(或者 PuTTY 中的等效配置选项,或者你有什么)可以透明地执行此操作:

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

当您尝试连接到时,它会做什么linux-server-b

  • 打开 SSH 连接linux-server-a
  • 在那里运行netcat,并打开一个 TCP 连接linux-server-b
  • 将此连接转发回给您

这样,您就可以使用 SSH 的所有功能,就像直接连接一样linux-server-b;您甚至可以将多个跃点链接在一起(服务器 A 到服务器 B 到服务器 C 到服务器 D ...)

也可以看看:

相关内容