我知道如何使用 SSH 通过远程计算机建立某些端口的隧道。但现在我遇到了一个问题,我不知道如何处理。我有三台机器:
1) [PC] 这是我的机器。从这个我可以访问其他两个。
2) [AS] 这是应用程序服务器。它无法到达其他两个中的任何一个
3) [WS] 这是带有web服务的机器。
它看起来像这样:
╔======>[AS]
║ ║
║ ║
[PC] X
║ ║
║ ║
╚======>[WS]
我需要从 [AS] 到 [WS],所以我想要这条路径:
╔=======[AS]
║
║
[PC]
║
║
╚======>[WS]
我在 [PC] 和 [AS] 上都有管理员权限。但我无权访问 [WS]。
这样的事情有可能吗?
到目前为止我所拥有的:我可以使用以下命令建立从 [PC] 到 [AS] 的反向 SSH 隧道:
ssh -R 12001:localhost:22 root@AS
这将我带到 [AS] 的控制台,并且我可以在端口 12001 上 ssh 到 [PC]。我想这是必要的第一步。但是如何创建从 [AS] 到 [WS] 的 SSH 桥接器?
答案1
从 AS 尝试:
ssh root@PC -L 12001:WS:22
然后(仍然来自 AS - 可能是另一个会话):
ssh root@localhost -p 12001
它将通过隧道传输到 WS 的端口 22。