我有两台机器 A 和 B,它们位于不同的子网中,都位于不同的防火墙后面。机器 A 可以看到 B,但 B 看不到 A。我在两台机器上都有一个用户帐户(非 root),我可以从 A SSH B,我希望能够从 B SSH A,但是不能可以直接完成。
我已经使用隧道通过 SSH 跳过中间服务器,但我在这里问的是不同的,我不知道它会被称为什么。有没有办法打开从 A 到 B 的连接,然后可以从机器 B“反向”使用它来在 A 上运行命令?
我有两台机器 A 和 B,它们位于不同的子网中,都位于不同的防火墙后面。机器 A 可以看到 B,但 B 看不到 A。我在两台机器上都有一个用户帐户(非 root),我可以从 A SSH B,我希望能够从 B SSH A,但是不能可以直接完成。
我已经使用隧道通过 SSH 跳过中间服务器,但我在这里问的是不同的,我不知道它会被称为什么。有没有办法打开从 A 到 B 的连接,然后可以从机器 B“反向”使用它来在 A 上运行命令?
简短的回答是可以,方法是:
然后
B
你可以ssh
使用A
:这说明了以下内容:
在
A
远程端 (-R
) 创建一个隧道,这样任何127.0.0.1
在端口上到达 localhost ( ) 的流量都2222
应该通过隧道返回并发送到 localhost(127.0.0.1
现在在本地端)端口22
该
B
命令简单地说,到作为隧道入口的ssh
localhost 端口。2222