kay*_*kay 3 networking ssh proxy tunnel
通常你有这样的设置:
Workstation -> Firewall -> Server
Run Code Online (Sandbox Code Playgroud)
您的工作站是否无法直接联系服务器,但必须先登录防火墙才能联系服务器。在此“简单”设置中,您可以在工作站上使用此设置:
Host server
ProxyCommand ssh firewall nc %h %p
Run Code Online (Sandbox Code Playgroud)
现在我的问题:
强加给我的设置更加困难:
Workstation -> Intermediate <- Server
Run Code Online (Sandbox Code Playgroud)
现在,我如何从我的机器 SSH 到服务器?
使用 ssh 隧道相当容易;首先转到您的服务器机器并运行:
ssh -R 2222:localhost:22 intermediateuser@Intermediate
Run Code Online (Sandbox Code Playgroud)
这会在中间机器上打开端口 2222,将连接反向转发到服务器上的端口 22。
然后你可以
ssh user@Intermediate
Run Code Online (Sandbox Code Playgroud)
然后从那里
ssh serveruser@localhost -p 2222
Run Code Online (Sandbox Code Playgroud)
或者,您可以通过以下方式将中间端口 2222 带到您的工作站:
ssh -L 2222:localhost:2222 intermediateuser@Intermediate
Run Code Online (Sandbox Code Playgroud)
然后:
ssh serveruser@localhost -p 2222
Run Code Online (Sandbox Code Playgroud)