我有两台机器都运行 CentOS linux,一台是面向公众的具有真实 IP 地址(foo)的机器。另一个是在一个非常严格的防火墙后面的客户端站点,没有真正的 ip,也没有可能向它发送或打开端口(bar)。
我可以从 bar ssh 到 foo,但显然不是相反。
理想情况下,我希望能够从 foo ssh 到 bar,这样我就可以发送文件、远程工作等。非常感谢任何关于如何最好地完成这项工作的帮助或建议,在互联网上看到了各种建议应该可以通过 ssh 建立 VPN 连接,但似乎不太明白。
乔纳
我有两台机器都运行 CentOS linux,一台是面向公众的具有真实 IP 地址(foo)的机器。另一个是在一个非常严格的防火墙后面的客户端站点,没有真正的 ip,也没有可能向它发送或打开端口(bar)。
我可以从 bar ssh 到 foo,但显然不是相反。
理想情况下,我希望能够从 foo ssh 到 bar,这样我就可以发送文件、远程工作等。非常感谢任何关于如何最好地完成这项工作的帮助或建议,在互联网上看到了各种建议应该可以通过 ssh 建立 VPN 连接,但似乎不太明白。
乔纳
这应该为你做(来自酒吧):
然后,在 foo 上:
第一个连接打开一个远程端口转发,这使得 foo 上的端口 2222 转发到 bar 上的端口 22。所以,如果你 ssh 到 foo 上的 2222 端口,你就真的连接到了 bar。然后,您可以通过该 ssh 连接添加您需要的任何转发,以转发任何其他端口。
在 Centos 下,答案似乎如下:
在 bar(受限机器)上运行以下命令:
然后在 foo (打开的机器)上运行:
我怀疑对此有待改进,但希望它足以让任何谷歌员工开始。
感谢 pkaeding 让我走上正轨。
听起来您正在寻找类似Wippien 或Remobo的东西,它们的灵感来自昂贵的 Hamachi 客户端。
您可以创建 tun 设备,即完整的隧道。要求是:可能在客户端和服务器中都具有 root 访问权限,以及最新版本的 SSH。
这将在客户端和服务器上创建一个 tun0 设备。您必须设置 IP:
现在路由,NAT,不管...
无论如何,我不推荐这种方法自动从 bar 连接到 foo,即。以非交互方式。如果 TCP 会话终止,它不会自动重生。
好吧,也许你能做到
respawn: http://www.deer-run.com/~hal/sysadmin/SSH-SyslogNG.html
应该有一种方法可以在两台主机之间创建 VPN,不一定基于 SSH。
如果您搜索,有几个选项可以在此站点上找到很多答案。您可以转发端口。您可以使用 ssh 作为socks 代理。或者您实际上可以使用 ppp 之类的东西通过 ssh隧道 ip 。