SSH远程访问VPN隧道

我有两台运行CentOS Linux的机器,一台是公开的机器,带有一个真实的IP地址(foo)。 另一个是在一个非常严格的防火墙后面的客户端站点,没有真正的IP地址,也没有可能自动或打开一个端口(酒吧)。

我可以从酒吧ssh到foo,但显然不是相反的。

理想情况下,我希望能够从foo ssh到酒吧,所以我能够发送文件,远程工作等。真的很感激任何帮助或build议如何最好地得到这个工作,已经看到在互联网上的各种教程build议应该可以通过sshbuild立一个VPN连接,但是看起来不太可能。

乔纳

在Centos下,答案似乎如下:

在吧台(受限制的机器)上运行以下命令:

ssh -N -R 1234:localhost:22 foo.theinternet.com 

然后在foo(打开的机器上)运行:

 ssh -p 1234 localhost 

我怀疑有这样的改进,但希望这将足以让任何google的开始。

感谢pkaeding让我走上正轨。

这应该为你做(从酒吧):

 ssh -R2222:localhost:22 foo 

那么,在foo上:

 ssh localhost -p 2222 

第一个连接打开一个远程端口,使foo上的2222端口转发到端口22上。 所以,如果你在foo上端口2222,你真的连接到吧台。 然后,您可以通过该ssh连接添加所需的任何转发,以转发任何其他端口。

听起来就像你正在寻找像Wippien或Remobo那样的作品,这些作品是受昂贵的Hamachi客户的启发。

你可以创buildtun设备,这是一个完整的隧道。 要求是:可能在客户端和服务器的根访问,以及最近版本的SSH。

服务器/ etc / ssh / sshd_config

PermitRootLogin是PermitTunnel yes

客户端/ etc / ssh / ssh_config

隧道是的

连接:ssh -w任何:任何…

这将在客户端和服务器上创build一个tun0设备。 您必须设置IP:

服务器

ifconfig tun0 192.168.55.1 pointopoint 192.168.55.2

客户

ifconfig tun0 192.168.55.2 pointopoint 192.168.55.1

现在路由,NAT,不pipe…

无论如何,我不会推荐这种方法自动连接从酒吧到foo,即。 以非互动的方式。 如果TCP会话死亡,它不会自动重新生成。 那么,也许你可以让它重生: http : //www.deer-run.com/~hal/sysadmin/SSH-SyslogNG.html

应该有办法在两台主机之间创build一个VPN,而不是基于SSH。

有几个选项,如果您search,可以在这个网站find很多答案。 你可以转发端口 。 你可以使用ssh作为socks代理 。 或者你可以使用类似ppp的东西来通过ssh实现隧道IP 。