我有一个带有libreswan的CentOS系统,它位于一个带有静态IP的路由器后面,我一直试图在具有juniper防火墙的远程位置设置一个带有服务器的IPSec隧道。远程服务器上的IPSec VPN设置是通过防火墙完成的。我已经尝试了几乎每一个可能的组合设置,但每次,同样的错误‘错误的有效载荷是被遇到的。以下是CentOS外壳屏幕上通常显示的日志:
002 "GeojitOMS" #6: initiating Main Mode
104 "GeojitOMS" #6: STATE_MAIN_I1: initiate
003 "GeojitOMS" #6: ignoring unknown Vendor ID payload [2c9d7e81995b9967d23f571ac641f9348122f1cc1200000014060000]
003 "GeojitOMS" #6: received Vendor ID payload [draft-ietf-ipsec-nat-t-ike-02_n]
003 "GeojitOMS" #6: received Vendor ID payload [Dead Peer Detection]
003 "GeojitOMS" #6: ignoring Vendor ID payload [HeartBeat Notify 386b0100]
002 "GeojitOMS" #6: enabling possible NAT-traversal with method draft-ietf-ipsec-nat-t-ike-02/03
002 "GeojitOMS" #6: transition from state STATE_MAIN_I1 to state STATE_MAIN_I2
106 "GeojitOMS" #6: STATE_MAIN_I2: sent MI2, expecting MR2
003 "GeojitOMS" #6: NAT-Traversal: Result using draft-ietf-ipsec-nat-t-ike-02/03 sender port 500: I am behind NAT+peer behind NAT
002 "GeojitOMS" #6: transition from state STATE_MAIN_I2 to state STATE_MAIN_I3
108 "GeojitOMS" #6: STATE_MAIN_I3: sent MI3, expecting MR3
003 "GeojitOMS" #6: next payload type of ISAKMP Hash Payload has an unknown value: 210 (0xd2)
003 "GeojitOMS" #6: malformed payload in packet
010 "GeojitOMS" #6: STATE_MAIN_I3: retransmission; will wait 500ms for response
010 "GeojitOMS" #6: STATE_MAIN_I3: retransmission; will wait 1000ms for response
010 "GeojitOMS" #6: STATE_MAIN_I3: retransmission; will wait 2000ms for response
010 "GeojitOMS" #6: STATE_MAIN_I3: retransmission; will wait 4000ms for response
003 "GeojitOMS" #6: discarding duplicate packet; already STATE_MAIN_I3在尝试了libreswan上的每一种设置组合之后,我想知道它是否与CentOS上的版本不兼容。这是libreswan和内核的版本:
[root@localhost xyz]# rpm -qa libreswan
libreswan-3.15-5.el7_1.x86_64
[root@localhost xyz]# uname -r
3.10.0-327.4.5.el7.x86_64UDP的端口500和4500在CentOS iptables上开放。此外,所有在beetel路由器上的上游和下游流量都是允许的。下面是我的最后一个连接设置,该设置仍未完成:
我的本地子网:10.0.0.0/24
远程子网: 192.168.11.0/28
VPN应该将本地机器与远程子网上的两个盒子连接起来,即192.168.11.11和192.168.11.12,我认为这是通过子网配置的,除非libreswan中有一种方法可以在同一连接中提到这两个特定的服务器。/etc/ipsec.d/connection.conf:
conn Connection
auto=start
leftid=1.2.3.4 //Some pre-defined id for local machine
left=10.0.0.16 //LAN IP of local machine
#leftnexthop=xxx.yyy.zzz.www // Public static IP on router
leftsubnet=10.0.0.0/24 //local subnet
rightid=1.2.3.5 //Some pre-defined id for remote server
right=www.zzz.yyy.xxx //Public IP of the remote server
rightsubnet=192.168.11.0/28 //Remote subnet
#rightnexthop=192.168.11.11 //Remote server IP in remote LAN? not sure
authby=secret
ike=3des-sha1;modp1024
phase2=esp
phase2alg=3des-sha1
#pfs=no
forceencaps=yes
compress=yes
#ikev2=propose
dpdaction=restart机密文件/etc/ Secrets .机密: 1.2.3.4 1.2.3.5: PSK“共享密钥”
在“conn”中尝试不同的变量组合,同时启用禁用“nat_traversal”。但是无论使用哪种组合,我仍然会得到相同的错误。这些设置中是否缺少任何内容,还是juniper和libreswan或特定版本的libreswan之间存在兼容性问题?
发布于 2016-05-03 15:41:05
我发现libreswan文档有助于这里与Juniper的互操作。
我感觉到你的痛苦。VPN是出了名的很难得到正确的。看似最小的东西可以使连接不稳定和/或无用。因此,我不能确切地确定您上面发布的设置是错误的还是缺失的,所以我将评论一些可能会带来麻烦的行。
phase2=espphase2alg=3des-sha1#pfs=no
我根本没有成功地试图指定这些,即使它们是正确的--连接从未成功。当我让这些值自动协商时,它神奇地起了作用。
compress=yes
不应该启用压缩,因为它是一个安全漏洞。
作为参考,我成功地实现了一个libreswan<->Juniper隧道,配置如下(模糊)。在此配置中,折叠为true:
libreswan-3.15-5.el7_1.x86_64nat_traversal=yes in /etc/ipsec.conf配置文件:
conn MyConnection
ike=aes256-sha1;modp1024
esp=aes128-sha1
authby=secret
keyingtries=0
left=10.111.111.111
leftsourceip=10.111.111.111
leftsubnet=10.111.111.0/24
right=1.2.3.4
rightsubnet=10.222.222.0/24
rightnexthop=%defaultroute
compress=no
auto=starthttps://serverfault.com/questions/758105
复制相似问题