如果我的服务器有直接的Internet访问权限,并且没有局域网,我如何创build一台主机来主持IPsec VPN?

我有一台Linux服务器(CentOS 5.5),可以通过固定的IP地址直接访问互联网。 也就是说,IP地址是200.29.XY网关是由数据中心(200.29.XZ)给出的,并且连接完美。

我需要连接到位于远程局域网上的另一台机器。 我们同意通过VPN来完成,所以他们configuration了一个隧道(使用预共享密钥的IPsec),并给了我们所有的信息(对等体,encryption域,阶段1属性和阶段2属性)。

问题是我的机器不在防火墙后面,而且我也没有访问数据中心的防火墙…所以防火墙必须在同一台机器上创build(使用任何VPN命令行软件)。

问题是,如果我的机器有防火墙(并configuration了VPN),那么这个对等体将是同一个encryption域(即对于对等体和encryption域来说是相同的IP地址)。

另一部分告诉我,这是错误的,使用这种configuration,他们的防火墙不知道在哪里发送响应(因为encryption域是相同的对等)。

试图解决这个问题,我创build了一个名为eth0.4的虚拟以太网接口,它具有本地IP地址192.160.0.4; 我告诉另一部分configuration这是我的encryption域,但仍然无法正常工作。

做一些本地testing,从内部虚拟IP地址,192.160.0.4,我不能ping我的真实IP地址,200.29.XY( ping -I eth0.4 200.29.XY )…我在iptables中添加了一些转发规则,但仍然我的内部IP地址不能与我的真实IP地址通信…所以我认为这个“虚拟本地IP地址”不会解决我的问题(除非我添加了一些不正确的转发规则)。

我正在使用openswan来configurationVPN,并按照上面的部分,他们收到了第一阶段的细节,他们是正确的,但是有一个答案的问题…所以隧道从来没有(事实上,第一阶段从来没有完成)。

010“net-to-net”#1:STATE_MAIN_I1:重发; 将等待20秒的回应

010“net-to-net”#1:STATE_MAIN_I1:重发; 将等待40秒的回应

010“net-to-net”#1:STATE_MAIN_I1:重发; 将等待40秒的回应

010“net-to-net”#1:STATE_MAIN_I1:重发; 将等待40秒的回应

031“net-to-net”#1:最大重传次数(20)达到STATE_MAIN_I1。 对我们的第一个IKE消息没有响应(或没有可接受的响应)

000“net-to-net”#1:开始无限数字的键控尝试2,但永远释放重击…

openswan日志不给我更多的信息(它发送正确的东西,但没有回应),和tcpdump所有告诉我,我发送数据包,但没有答案…

有什么build议么?

如果我的理解正确,对方说他们不能终止到configuration为隧道数据目标networking地址的隧道。 这取决于他们的设备的function – 你知道什么是制造商?

不pipe对远程networking定义的担心以及他们的系统在尝试将隧道的ESP数据包放回隧道时的问题,他们甚至不会响应您的阶段1数据包 – 首先需要考虑这种连接性。 告诉他们开始回答您的ISAKMP数据包,然后处理IPSec远程networking。