StrongSwan ipsec ubuntu“忽略信息负载,类型 NO_PROPOSAL_CHOSEN”

StrongSwan ipsec ubuntu“忽略信息负载,类型 NO_PROPOSAL_CHOSEN”

我在 ubuntu 服务器上运行 StrongSwan,并尝试使用 Cisco 2821 路由器创建 ipsec 加密 VPN 隧道。连接不起作用,我不知道原因。它似乎完成了第 1 阶段,但在第 2 阶段失败了。有人可以提供建议吗?我很困惑。顺便说一句,我的服务器在亚马逊云中。

这是我的配置:

conn my-conn
        type=tunnel
        authby=secret
        auth=esp
        ikelifetime=86400s
        keylife=3600s
        esp=3des-sha1
        ike=3des-sha1-modp1024
        keyexchange=ike
        pfs=no
        forceencaps=yes
        # Left security gateway, subnet behind it, nexthop toward right.
        left=10.0.0.4
        leftsubnet=10.0.0.4/32
        leftnexthop=%defaultroute
        # Right security gateway, subnet behind it, nexthop toward left.
        right=1.2.3.4   
        rightsubnet=1.2.3.5/32
        rightnexthop=%defaultroute
        # To authorize this connection, but not actually start it,
        # at startup, uncomment this.
        auto=start

以下是日志的输出:

Dec 28 18:02:19 myserver pluto[15753]: "my-conn" #330: initiating Main Mode
Dec 28 18:02:19 myserver pluto[15753]: "my-conn" #330: received Vendor ID payload [draft-ietf-ipsec-nat-t-ike-03]
Dec 28 18:02:19 myserver pluto[15753]: "my-conn" #330: enabling possible NAT-traversal with method RFC 3947
Dec 28 18:02:20 myserver pluto[15753]: "my-conn" #330: ignoring Vendor ID payload [Cisco-Unity]
Dec 28 18:02:20 myserver pluto[15753]: "my-conn" #330: received Vendor ID payload [Dead Peer Detection]
Dec 28 18:02:20 myserver pluto[15753]: "my-conn" #330: ignoring Vendor ID payload [883f3a4fb4782a3ae88bf05cdfe38ae0]
Dec 28 18:02:20 myserver pluto[15753]: "my-conn" #330: received Vendor ID payload [XAUTH]
Dec 28 18:02:20 myserver pluto[15753]: "my-conn" #330: NAT-Traversal: Result using draft-ietf-ipsec-nat-t-ike-02/03: i am NATed
Dec 28 18:02:20 myserver pluto[15753]: | protocol/port in Phase 1 ID Payload is 17/0. accepted with port_floating NAT-T
Dec 28 18:02:20 myserver pluto[15753]: "my-conn" #330: Peer ID is ID_IPV4_ADDR: '1.2.3.4'
Dec 28 18:02:20 myserver pluto[15753]: "my-conn" #330: ISAKMP SA established
Dec 28 18:02:20 myserver pluto[15753]: "my-conn" #331: initiating Quick Mode PSK+ENCRYPT+TUNNEL+UP {using isakmp#330}
Dec 28 18:02:20 myserver pluto[15753]: "my-conn" #330: ignoring informational payload, type NO_PROPOSAL_CHOSEN
Dec 28 18:02:20 myserver pluto[15753]: "my-conn" #330: ignoring informational payload, type IPSEC_RESPONDER_LIFETIME

我连接到思科路由器的配置是:

Key Management: IKE 
Diffie-Hellman Group:   Group 2 
Encryption Algorithm:   3DES (rec)  
Hash Algorithm: SHA-1 (rec.)    
Authentication Method:  Preshared   
Pre-Shared Secret Key:  TBC 
Life Time:  86400s (24h)    

Encryption Phase 2 (IPSec):     

Encapsulation:  ESP 
Encryption Algorithm used:  3DES (rec)  
Hash Algorithm: SHA-1 (rec.)    
Perfect Forward Secrecy:    Groupe 2    
Aggressive Mode:    NO  
Life Time:  3600s (1h)  

答案1

如果我没记错的话,Amazon EC2 使用了一些 NAT 来使您的实例可以通过互联网访问。

虽然 NAT 友好型应用程序可以无缝运行(例如 http 或 ssh),但有些协议是在端到端通信成为规则的时候设计的,而 NAT 会破坏这些协议。

FTP 或 SIP(​​实际上是 rtp)使用动态选择端口,但设计了辅助程序。例如,用于 VoIP 的 STUN。

对于 IPSec,第 1 阶段成功。这是 NAT 检测。因此您的服务器在日志中显示i am NATed

但是,第 2 阶段(即 NAT 遍历决策)失败。您可能必须在两端启用 Cisco 所称的“IPSec NAT 透明度”。因此,ipsec 有效负载不在第 3 层(IP),而是在第 4 层(UDP)中。

这有点类似于 openvpn 所做的,但是使用 ssl 而不是 IPSec。

看一下Cisco 有关 NAT 穿越的网站。虽然以思科为中心,但它将帮助您设置隧道。

答案2

我在使用 StrongSwan 时收到此错误5.6.1。该错误是由于使用弱密码的远程服务器被认为是已被 StrongSwan 弃用

  • 启用以下功能弱密码允许ipsec连接完成:

    • 第一阶段算法:aes128-sha1-modp2048,3des-sha1-modp1536,3des-sha1-modp1024
    • Phase2 算法:aes128-sha1,3des-sha1

在此处输入图片描述

查看network-manager-l2tp 的已知问题


我发现Arch Linux L2TP 维基有帮助和说明,尽管对于开放的Swan 也工作强天鹅

  • 首先运行ipsec verify来配置您的环境。

  • 运行xl2tpd -D(调试模式) - 确认您的设置是否合理。

  • 网络管理器小程序你给出的conn设置/etc/ipsec.conf

  • 该插件似乎通过中的 ip 地址network-manager-l2tp建立匹配的连接。您为设置指定的名称似乎对插件来说并不重要。L2TPlns/etc/xl2tpd/xl2tpd.conf[lac vpn-name]

  • 这些说明也适用于设置L2TPipsecArch Linux。 使用利布雷斯万斯特朗斯旺 ipsec在 Arch Linux 中不起作用)使用network-manager-l2tp插件并将您的ipsec连接详细信息放在 下/etc/ipsec.d/*.conf。文件名可以是任何名称,因为插件会搜索conn在配置文件中搜索与 匹配的字符串VPN 名称网络管理器

相关内容