为点到站点 RADIUS 证书身份验证配置 VPN 客户端
若要通过点到站点 (P2S) 连接到虚拟网络,需要配置将从中进行连接的客户端设备。 本文将帮助你创建并安装用于 RADIUS 证书身份验证的 VPN 客户端配置。
如果你使用 RADIUS 身份验证,我们提供了多种身份验证说明:证书身份验证、密码身份验证以及其他身份验证方法和协议。 每种身份验证的 VPN 客户端配置各个不同。 若要配置 VPN 客户端,可以使用包含所需设置的客户端配置文件。
注意
从 2018 年 7 月 1 日开始,Azure VPN 网关将不再支持 TLS 1.0 和 1.1。 VPN 网关将仅支持 TLS 1.2。 仅点到站点连接会受到影响;站点到站点连接不受影响。 如果要在 Windows 10 及更高版本客户端上将 TLS 用于点到站点 VPN,则无需执行任何操作。 如果在 Windows 7 和 Windows 8 客户端上使用 TLS 建立点到站点连接,请参阅 VPN 网关常见问题解答,了解更新说明。
工作流
P2S RADIUS 身份验证的配置工作流如下:
获取适用于所选身份验证选项的 VPN 客户端配置,用其设置 VPN 客户端(本文)。
重要
如果在生成 VPN 客户端配置文件后,点到站点 VPN 配置(例如 VPN 协议类型或身份验证类型)发生了变化,则必须生成新的 VPN 客户端配置并将其安装在用户设备上。
可以创建适用于 RADIUS 证书身份验证的 VPN 客户端配置文件,该身份验证使用 EAP-TLS 协议。 通常情况下,企业颁发的证书用于对 VPN 用户进行身份验证。 请确保所有进行连接的用户均已在其设备上安装了证书,并且你的 RADIUS 服务器可以验证该证书。
在命令中,-AuthenticationMethod
是 EapTls
。 在证书身份验证过程中,客户端通过验证 RADIUS 服务器的证书完成该服务器的验证。 -RadiusRootCert
是包含用来验证 RADIUS 服务器的根证书的 .cer 文件。
需在每个 VPN 客户端设备上安装客户端证书。 有时候,一个 Windows 设备有多个客户端证书。 在身份验证过程中,这会导致系统弹出一个对话框,其中列出所有证书。 然后,用户必须选择要使用的证书。 可以通过指定客户端证书应链接到的根证书,筛选出正确的证书。
-ClientRootCert
是包含该根证书的 .cer 文件。 它是一个可选参数。 如果要从中进行连接的设备只有一个客户端证书,则不需要指定此参数。
生成 VPN 客户端配置文件
可使用 Azure 门户或 PowerShell 生成 VPN 客户端配置文件。
Azure 门户
导航到虚拟网关。
单击“点到站点配置” 。
单击“下载 VPN 客户端”。
选择客户端,并填充请求的任何信息。 根据配置,系统可能会要求将 Radius 根证书上传到门户。 将证书导出为所需的 Base-64 编码 X.509 (.CER) 格式,并使用文本编辑器(如记事本)打开。 将会看到类似于以下示例的文本。 蓝色高光部分包含了复制并上传到Azure的信息。
如果文件内容与示例不同,这通常意味着你没有使用 Base-64 编码的 X.509(.CER) 格式将其导出。 此外,如果使用记事本以外的文本编辑器,需了解,某些编辑器可能会在后台引入非预期的格式设置。 将此证书中的文本上传到 Azure 时,这可能会产生问题。
单击“下载”,生成 .zip 文件 。
.zip 文件通常下载到 Downloads 文件夹。
Azure PowerShell
生成 VPN 客户端配置文件来用于证书身份验证。 可以使用以下命令生成 VPN 客户端配置文件:
New-AzVpnClientConfiguration -ResourceGroupName "TestRG" -Name "VNet1GW" -AuthenticationMethod "EapTls" -RadiusRootCert <full path name of .cer file containing the RADIUS root> -ClientRootCert <full path name of .cer file containing the client root> | fl
运行该命令将返回一个链接。 请将该链接复制并粘贴到 Web 浏览器,下载 VpnClientConfiguration.zip。 解压缩该文件,查看以下文件夹:
- WindowsAmd64 和 WindowsX86:这些文件夹分别包含 Windows 64 位和 32 位安装程序包。
- GenericDevice:此文件夹包含用于创建自己的 VPN 客户端配置的常规信息。
如果已创建了客户端配置文件,可以使用 Get-AzVpnClientConfiguration
检索这些文件。 但是,如果对 P2S VPN 配置(例如 VPN 协议类型或身份验证类型)进行更改,该配置不会自动更新。 必须运行 New-AzVpnClientConfiguration
cmdlet 才能创建新的配置下载。
若要检索以前生成的客户端配置文件,请使用以下命令:
Get-AzVpnClientConfiguration -ResourceGroupName "TestRG" -Name "VNet1GW" | fl
Windows 本机 VPN 客户端
如果配置了 IKEv2 或 SSTP,则可以使用本机 VPN 客户端。
选择一个配置包,将其安装在客户端设备上。 对于 64 位处理器体系结构,请选择 VpnClientSetupAmd64 安装程序包。 对于 32 位处理器体系结构,请选择 VpnClientSetupX86 安装程序包。 如果看到了 SmartScreen 弹出窗口,请选择“更多信息”>“仍要运行”。 也可将要安装的包保存在其他客户端计算机上。
每个客户端都需要使用客户端证书来进行身份验证。 安装客户端证书。 有关客户端证书的信息,请参阅用于点到站点连接的客户端证书。 若要安装生成的证书,请参阅在 Windows 客户端上安装证书。
在客户端计算机上,浏览到“网络设置” ,并选择“VPN” 。 VPN 连接显示所连接到的虚拟网络的名称。
Mac (macOS) 本机 VPN 客户端
必须为连接到 Azure 虚拟网络的每个 Mac 设备创建一个单独的配置文件。 因为这些设备要求在配置文件中指定用于身份验证的用户证书。 此外,只有在配置中包含 IKEv2 隧道类型才可使用 macOS 本机 VPN 客户端。 Generic 文件夹包含创建配置文件所需的全部信息:
- VpnSettings.xml 包含服务器地址和隧道类型等重要设置。
- VpnServerRoot.cer 包含在设置 P2S 连接期间验证 VPN 网关所需的根证书。
- RadiusServerRoot.cer 包含在身份验证过程中验证 RADIUS 服务器所需的根证书。
使用以下步骤在 Mac 中配置用于证书身份验证的本机 VPN 客户端:
将 VpnServerRoot 和 RadiusServerRoot 根证书导入到 Mac 中。 将每个文件复制到你的 Mac,双击它,然后选择“添加”。
每个客户端都需要使用客户端证书来进行身份验证。 在客户端设备上安装客户端证书。
在“网络首选项”下打开“网络”对话框。 选择 + 来为到 Azure 虚拟网络的 P2S 连接创建新的 VPN 客户端连接配置文件。
“接口”值为“VPN”,“VPN 类型”值为“IKEv2”。 在“服务名称”框中为配置文件指定一个名称,然后选择“创建”以创建 VPN 客户端连接配置文件。
从 Generic 文件夹中的 VpnSettings.xml 文件复制 VpnServer 标记值。 将该值粘贴到配置文件的“服务器地址”和“远程 ID”框中。 将“本地 ID”框保留为空。
选择“身份验证设置” ,然后选择“证书” 。
单击“选择”以选择要用于身份验证的证书。
“选择标识”会显示可供选择的证书列表。 选择适当的证书,然后选择“继续” 。
在“本地 ID” 框中,指定证书的名称(见步骤 6)。 在本例中,该名称为 ikev2Client.com。 然后,选择“应用”按钮以保存更改。
在“网络” 对话框中,选择“应用” 以保存所有更改。 然后,选择“连接”以启动到 Azure 虚拟网络的 P2S 连接。
后续步骤
返回到 P2S 配置文章来验证连接。
有关 P2S 故障排除信息,请参阅排查 Azure 点到站点连接问题。