SSHFS通过多个连接

我必须偶尔远程工作。 为了做到这一点,我必须连接到一个网关服务器,然后我可以连接到开发服务器。 在工作中,我可以直接连接到开发服务器。 我使用SSHFS将远程文件夹映射到本地文件夹(在Ubuntu中)。 我的同事似乎并不介意使用vim来完成所有的工作,但我更喜欢IDE。 我知道只使用ssh我可以通过多个连接隧道(ssh -t server1 ssh -t server2),但是我想用SSHFS做同样的事情。 有谁知道如何做到这一点?

是的,可以做到。 为此,远程服务器必须支持本地端口转发(可能由于安全原因而被禁用)。 您从根本上做了什么,您指示远程服务器为您打开到另一个网络中的服务器的隧道:

ssh -fL 127.0.0.1:someport:host.in.the.remote.net:22 proxy.host 

someport应该是你的机器上一个未使用的端口(例如2222), host.in.remote.net应该是你最终想要连接到的开发机器的主机名或IP,从proxy.host的网络,这是你必须经过的中间服务器。 -f指示ssh在连接建立后从终端上分离。

你运行这个命令,当它在后台后,远程机器的ssh端口可以被称为127.0.0.1:someport并且可以通过sshfs来使用。 我不知道如何自动执行此操作,但是您应该可以轻松地编写脚本。

如果您不确定这些策略,请确保先清除远程管理员的此操作。 如果开发机器在不同的端口上提供ssh,则可能需要在第一个命令中更改22