![如何通过 ssh 连接到公司防火墙后面的 Linux 服务器?](https://linux22.com/image/1286117/%E5%A6%82%E4%BD%95%E9%80%9A%E8%BF%87%20ssh%20%E8%BF%9E%E6%8E%A5%E5%88%B0%E5%85%AC%E5%8F%B8%E9%98%B2%E7%81%AB%E5%A2%99%E5%90%8E%E9%9D%A2%E7%9A%84%20Linux%20%E6%9C%8D%E5%8A%A1%E5%99%A8%EF%BC%9F.png)
我公司有一台 Linux 服务器 (CentOS 6 VM),位于企业防火墙后面,我拥有 VM 的完全 root 控制权,但无法控制防火墙。它上面运行着一个 ssh 服务器,我可以在公司网络内通过 ssh 连接到它。
当我在公司网络之外时,我想通过 ssh 连接到此虚拟机。我该如何实现?
这个 Linux VM 在 Mac 主机上运行,我可以使用 logmein 连接,然后访问 Linux VM。我想直接 ssh 到 Linux VM。
我猜测 Linux VM 必须与外部机器发起某种握手才能使其工作?
答案1
使用鰤鱼。无需打开端口即可建立安全 VPN 隧道。通过 VPN 使用 SSH。
LogMeIn Hamachi 是一种托管 VPN 服务,可让您安全地将类似 LAN 的网络扩展到分布式团队、移动工作人员和游戏玩家朋友。只需几分钟。
答案2
最好的解决方案是联系您的网络管理员并要求他们在防火墙中为您打开 TCP 端口,或者获取网络的 VPN 连接。
如果您使用任何规避安全措施的方法(目前有很多种方法,有些甚至在电视上大肆宣传,让人觉得这样做完全无害),您可能会面临丢掉工作的风险,因此请务必先通过公司内部的正确渠道获得许可。
维护内部网络安全非常重要,因为公司有保护隐私的法律责任。
答案3
behindvpn
您可以创建从主机到主机的ssh 隧道outsidevpn
。
behindvpn$ ssh -R 1234:localhost:22 outsidevpn
这将打开主机1234
上的端口outsidevpn
,并将连接转发到主机22
上的端口behindvpn
。
现在你可以behindvpn
使用以下命令连接到主机:
$ ssh outsidevpn -p 1234
笔记:您可能需要确保您的连接不会由于不活动或 shell 超时等原因而中断。