我遇到一个场景是:A可以通过SSH访问B(B无法访问A,因为nat),A可以通过SSH访问C(C无法访问A,因为nat),B和C无法访问彼此之间,存在于不同的网络中。
A->B,A->C,C->B?我的问题是如何设置隧道或命令让C可以访问B?
要建立从 B 到 C 的 ssh 隧道,请在主机 A 上运行以下命令:
ssh -n -R 3300:localhost:3300 B sleep 999999999 &
ssh -n -L 3300:localhost:22 C sleep 999999999 &
Run Code Online (Sandbox Code Playgroud)
将 B 和 C 替换为适当的主机名。
现在在B上你可以
ssh -p 3300 localhost
Run Code Online (Sandbox Code Playgroud)
并连接到主机 C。当您想要拆除隧道时,在主机 A 上将 ssh 命令带出后台并输入Ctrl-C。