我正在尝试为以下场景创建 ~/.ssh/config 条目:
我在某个地方的专用网络中有一个linux盒子,一个可以从任何地方访问的vps服务器和我的本地macbook。
Linux 盒子位于防火墙后面,但我仍然应该能够从本地 MacBook 通过 SSH 进入该盒子。
我当前有效的解决方案如下:
Linux 盒子通过以下方式启动到 vps 的反向隧道:
ssh -R 15000:localhost:22 vps-user@vps
Run Code Online (Sandbox Code Playgroud)
然后从我本地的 macbook 通过以下方式启动通往 vps 的隧道:
ssh -L 12345:localhost:1500 vps-user@vps
Run Code Online (Sandbox Code Playgroud)
然后我启动另一个 ssh 命令,从那里我可以直接 ssh 进入 linux 盒子,否则它会隐藏在防火墙等后面:
ssh linuxbox-user@localhost -p 12345
Run Code Online (Sandbox Code Playgroud)
首先,这一切都非常可靠(如果你有任何更简单的方法来做到这一点,请告诉我 - 在 MacBook 方面这似乎相当麻烦)。
在最好的情况下,我将如何创建 ~/.ssh/config 条目,只需编写:
ssh linuxbox
Run Code Online (Sandbox Code Playgroud)
就这样结束了吗?
我尝试过使用LocalForward选项,它至少允许我为ssh -L ...命令创建别名,但它仍然需要第二个 ssh 命令。
我也尝试过ProxyCommand选项,但没有运气,也许只是配置错误?