无法从 Windows 10 连接到 L2TP IPsec VPN,但它可以与 macOS High Sierra 配合使用

无法从 Windows 10 连接到 L2TP IPsec VPN,但它可以与 macOS High Sierra 配合使用

我正在尝试从 Windows 10 客户端连接到 Ubiquiti EdgeRouter VPN,我按照https://help.ubnt.com/hc/en-us/articles/204950294-EdgeRouter-L2TP-IPsec-VPN-服务器但每当我尝试连接到 VPN 时,都会出现以下情况:

无法连接到 L2TP 连接尝试失败,因为安全层无法与远程计算机协商兼容参数。

我做了一些研究并改变了 VPN 安全属性以允许 Microsoft CHAP 版本 2(MS-CHAP v2)以及质询握手身份验证协议(CHAP),但似乎并没有什么区别。

同时,我从 macOS High Sierra 客户端连接时没有任何问题。所以我猜测客户端(Windows VPN 设置)出了问题?有人能帮我解决这个问题吗?

答案1

该错误消息可能意味着 Windows 和 Ubiquiti 之间存在某种程度的联系,但他们未能找到通用的加密方法。对于阶段 1(密钥交换),Windows(版本 1803)建议使用以下加密方法(按此优先级顺序):

  1. SHA1 + AES-CBC-256 + ECP384
  2. SHA1 + AES-CBC-128 + ECP256
  3. SHA1 + AES-CBC-256 + MODP2048
  4. SHA1 + 3DES-CBC + MODP2048
  5. SHA1 + 3DES-CBC + MODP1024

对于阶段 2:

  1. SHA1 + AES-CBC-256
  2. SHA1 + AES-CBC-128

确保 Ubiquiti 可以接受其中一个提案,因此尝试将 Ubiquiti 上的 phase1 和 phase2 提案设置为类似这样的内容。

set vpn ipsec ike-group FOO0 lifetime 86400
set vpn ipsec ike-group FOO0 proposal 1 dh-group 14
set vpn ipsec ike-group FOO0 proposal 1 encryption aes256
set vpn ipsec ike-group FOO0 proposal 1 hash sha1
set vpn ipsec esp-group FOO0 lifetime 43200
set vpn ipsec esp-group FOO0 pfs disable
set vpn ipsec esp-group FOO0 proposal 1 encryption aes128
set vpn ipsec esp-group FOO0 proposal 1 hash sha1

我也会启用 NAT-Traversal:

set vpn ipsec nat-traversal enable

我不太了解 Ubiquiti,但也许这会有所帮助。

答案2

同样的问题,但使用的是 Cisco Meraki。在我的笔记本电脑升级到 1803 版本之前,它一直运行良好。我敢打赌你也有同样的版本。它是最近推出的。无论你做什么似乎都无济于事——L2TP 现在出了问题。

如果您仍在使用版本 1709,则需要添加防火墙规则以允许端口 500、1701、4500 UDP/TCP 进出。

https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/dd458955(v=ws.10)

答案3

在我看来这是 Windows 10 内置 VPN 客户端的一个错误。我有两个几乎相同的 VPN 服务器运行 SoftEther。我记得与第一个服务器的 VPN 连接没有问题(使用 SSTP)。同一台 Windows PC 上的第二个 VPN 连接到几乎相同配置和托管在同一网络中的同一提供商的 VPN 服务器 - 当通过 SSTP 连接时,我可以从服务器日志中读取 Windows 客户端不接受或不提供 MSCHAP v2 进行身份验证。没有什么可以解决这个问题,直到有一天我尝试修改 Windows 客户端以使用带有 PSK 的 L2TP/IPSec。它立即连接了。然后我只需将 Windows 中的配置改回 SSTP,从那以后它就运行得非常顺畅了。

相关内容