如何SSH公司防火墙后面的Linux服务器?

我的公司有一个公司防火墙后面的Linux服务器(CentOS 6虚拟机),我有虚拟机的完全根控制,但我无法控制防火墙。 有一个SSH服务器上运行,我可以ssh到公司networking内。

当我在公司networking之外时,我想要ssh给这个虚拟机。 我如何做到这一点?

这个linux虚拟机运行在Mac主机上,我可以使用logmein来连接,然后访问linux虚拟机。 我想直接ssh到linux虚拟机。

我猜测必须有一些由linux虚拟机启动到外部机器的握手才能工作?

我会问IT部门。 有一个原因,他们已经安装了这个防火墙,你试图做的可能是违反安全政策。 他们必须知道你需要从公司networking外访问这个服务器。 如果安全策略没有问题,他们将帮助您获得此访问权限。

您修复公司防火墙以允许SSH进入。您可能无法控制防火墙,但是如果有业务需要进行访问,那么任何明智的公司策略都应该允许,如果您为某个不明智的人工作政策,然后你到http://careers.serverfault.com/

如果你有一个服务器,你可以从两个地方点击,你可以设置一个反向的SSH隧道

http://www.marksanborn.net/howto/bypass-firewall-and-nat-with-reverse-ssh-tunnel/

最正确的方法是让你的networkingpipe理员为你configuration一个vpn服务器,这样你就可以访问你所有的networking资源,而你不在公司networking之外。

您可以从behindvpnoutsidevpn创build一个ssh隧道到outsidevpn主机。

 behindvpn$ ssh -R 1234:localhost:22 outsidevpn 

这将打开outsidevpn主机上的端口1234 ,该端口将转发连接到behindvpn主机上的端口22

现在你可以连接到后面的主机:

 $ ssh outsidevpn -p 1234 

注意:您可能需要确保您的连接不会因为不活动或shell超时而中断。

注意:您可能还需要做一些防范措施,以免由于以下原因而降低Intranet的安全性:

  • 使得虚拟机上的所有ssh密码很难猜测
  • 确保您创build隧道的机器是安全的(只能由您访问,具有防病毒软件,防火墙等)
  • 将隧道的bind_address设置为不可路由地址(例如127.0.0.1 )或将此端口隐藏在防火墙后面
  • 限制端口在真正需要时才打开的时间
  • 限制只有你的端口访问