我正在尝试在 AD 和 AAD 连接的 Windows 10 客户端与 StrongSwan VPN 服务器之间创建 Windows Always On VPN 连接。Windows 客户端在其机器存储中拥有多个“客户端身份验证”证书,一个来自我们的内部 AD CA,另一个来自 Microsoft Intune MDM。
当使用带有 EAP 身份验证的用户隧道时,我们可以指定颁发者指纹,以便 VPN 客户端选择正确的证书,但是,此相同选项似乎不可用对设备 VPN 使用“证书”身份验证时:
该值可以是下列值之一:
- 证书
或者从 rasphone UI 中,也没有可用的选项:
最终结果是它尝试使用 Intune MDM 证书而不是我们的 CA 颁发的证书进行身份验证,并且 strongswan 配置为仅接受由我们的 CA 颁发的证书的连接。
有没有什么办法可以告诉 Windows 在使用机器证书连接到 VPN 时使用特定 CA 颁发的证书?
答案1
我在使用自己的 CA 设置 WPA2-Enterprise 时遇到了这个问题。对于任何只有一个机器证书的机器,它都可以正常工作,但是一旦机器上有另一个证书,它就会变得混乱。我一直没搞明白,最后在域中使用了企业 CA,设置了一个机器策略,即域加入的机器自动注册并更新其证书,最后成功了。当域上的企业 CA 颁发证书时,这似乎不是问题。它现在总是选择正确的证书。
答案2
看起来有几种方法可以选择证书:
设置 VpnConnection -MachineCertificateIssuerFilter
设置 VpnConnection -MachineCertificateEKUFilter
https://docs.microsoft.com/en-us/powershell/module/vpnclient/set-vpnconnection?view=win10-ps