You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Ubuntu上创建与Mac端配置一致的IKEv2 VPN连接?

如何在Ubuntu上创建与Mac端配置一致的IKEv2 VPN连接?

我来帮你梳理下在Ubuntu上配置和Mac一致的IKEv2 VPN的步骤,针对你遇到的NO_PROPOSAL_CHOSEN错误,咱们一步步排查解决:

一、先把基础配置项对应准确

Mac上的那几个必填项,在Ubuntu的NetworkManager+StrongSwan里得精准对应:

  • 服务器地址:直接填到VPN配置的「网关」字段
  • 账号名:对应「用户名」字段
  • 密码:对应「密码」字段(注意别和共享密钥搞混,这俩是不同的认证项)
  • 共享密钥:这个是很多人容易漏的关键项!在Ubuntu的StrongSwan配置里,进到「IPsec设置」的「服务器认证」部分,选择「预共享密钥」,然后填入你的共享密钥值
  • 组名:一般对应IKEv2的「标识符」,部分版本可能需要在高级设置里专门指定「组名称」

二、解决NO_PROPOSAL_CHOSEN算法不匹配问题

你提到服务器端Phase1和Phase2都是aes-sha-modp1024,得确保Ubuntu端的算法配置完全对齐,别用模糊简写:

  1. 打开VPN配置的「IPsec设置」,进入「高级」选项
  2. Phase1(IKE)算法:设置为完整标识aes128-sha1-modp1024,最好加上!强制使用该算法(即aes128-sha1-modp1024!),避免协商时自动匹配不兼容的算法
  3. Phase2(ESP)算法:同样设置为aes128-sha1-modp1024!
  4. 你已经确认过生存期设置,那重点就放在算法的完整标识上,StrongSwan对简写的识别可能有偏差

三、检查UDP封装和IKEv2开关

  • 强制UDP封装:如果服务器要求NAT穿越,就在高级设置里勾选「启用UDP封装」;若服务器没提这个要求,也可以尝试关闭后再连接
  • IKEv2密钥交换:必须勾选启用!毕竟你Mac端用的是IKEv2协议,Ubuntu这边要是误开成IKEv1,协议直接不匹配,肯定连不上

四、更深度的日志排查

你已经用journalctl --no-hostname --unit=NetworkManager | tail -100查看过日志,除了NO_PROPOSAL_CHOSEN,还可以查看StrongSwan专属日志,获取更详细的算法协商过程:

journalctl --no-hostname -u strongswan | tail -100

这里会显示服务器端提出的算法列表和你本地配置的是否匹配,能精准定位不兼容的具体项

五、试试命令行手动配置(避开GUI的小坑)

要是GUI配置一直卡壳,可以尝试手动编辑StrongSwan的配置文件:

  1. 编辑/etc/ipsec.conf,添加以下内容(替换成你的实际信息):
conn my-ikev2-vpn
    keyexchange=ikev2
    ike=aes128-sha1-modp1024!
    esp=aes128-sha1-modp1024!
    left=%defaultroute
    leftauth=eap-mschapv2
    leftsourceip=%config
    right=你的服务器地址
    rightauth=pubkey
    rightsubnet=0.0.0.0/0
    rightid=你的服务器标识符(如果有)
    eap_identity=你的账号名
    auto=add
  1. 编辑/etc/ipsec.secrets,添加账号密码和共享密钥:
你的账号名 : EAP "你的密码"
: PSK "你的共享密钥"
  1. 重启StrongSwan服务:
sudo systemctl restart strongswan
  1. 启动连接:
sudo ipsec up my-ikev2-vpn

备注:内容来源于stack exchange,提问作者user5870571

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 14:48:01