为点到站点 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 身份验证的配置工作流如下:

  1. 设置适用于 P2S 连接的 Azure VPN 网关

  2. 设置适用于身份验证的 RADIUS 服务器

  3. 获取适用于所选身份验证选项的 VPN 客户端配置,用其设置 VPN 客户端(本文)。

  4. 完成 P2S 配置和连接

重要

如果在生成 VPN 客户端配置文件后,点到站点 VPN 配置(例如 VPN 协议类型或身份验证类型)发生了变化,则必须生成新的 VPN 客户端配置并将其安装在用户设备上。

可以创建适用于 RADIUS 证书身份验证的 VPN 客户端配置文件,该身份验证使用 EAP-TLS 协议。 通常情况下,企业颁发的证书用于对 VPN 用户进行身份验证。 请确保所有进行连接的用户均已在其设备上安装了证书,并且你的 RADIUS 服务器可以验证该证书。

在命令中,-AuthenticationMethodEapTls。 在证书身份验证过程中,客户端通过验证 RADIUS 服务器的证书完成该服务器的验证。 -RadiusRootCert 是包含用来验证 RADIUS 服务器的根证书的 .cer 文件。

需在每个 VPN 客户端设备上安装客户端证书。 有时候,一个 Windows 设备有多个客户端证书。 在身份验证过程中,这会导致系统弹出一个对话框,其中列出所有证书。 然后,用户必须选择要使用的证书。 可以通过指定客户端证书应链接到的根证书,筛选出正确的证书。

-ClientRootCert 是包含该根证书的 .cer 文件。 它是一个可选参数。 如果要从中进行连接的设备只有一个客户端证书,则不需要指定此参数。

生成 VPN 客户端配置文件

可使用 Azure 门户或 PowerShell 生成 VPN 客户端配置文件。

Azure 门户

  1. 导航到虚拟网关。

  2. 单击“点到站点配置” 。

  3. 单击“下载 VPN 客户端”。

  4. 选择客户端,并填充请求的任何信息。 根据配置,系统可能会要求将 Radius 根证书上传到门户。 将证书导出为所需的 Base-64 编码 X.509 (.CER) 格式,并使用文本编辑器(如记事本)打开。 将会看到类似于以下示例的文本。 蓝色高光部分包含了复制并上传到Azure的信息。

    屏幕截图显示在记事本中打开的 CER 文件,其中突出显示了证书数据。

    如果文件内容与示例不同,这通常意味着你没有使用 Base-64 编码的 X.509(.CER) 格式将其导出。 此外,如果使用记事本以外的文本编辑器,需了解,某些编辑器可能会在后台引入非预期的格式设置。 将此证书中的文本上传到 Azure 时,这可能会产生问题。

  5. 单击“下载”,生成 .zip 文件 。

  6. .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。 解压缩该文件,查看以下文件夹:

  • WindowsAmd64WindowsX86:这些文件夹分别包含 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 客户端。

  1. 选择一个配置包,将其安装在客户端设备上。 对于 64 位处理器体系结构,请选择 VpnClientSetupAmd64 安装程序包。 对于 32 位处理器体系结构,请选择 VpnClientSetupX86 安装程序包。 如果看到了 SmartScreen 弹出窗口,请选择“更多信息”>“仍要运行”。 也可将要安装的包保存在其他客户端计算机上。

  2. 每个客户端都需要使用客户端证书来进行身份验证。 安装客户端证书。 有关客户端证书的信息,请参阅用于点到站点连接的客户端证书。 若要安装生成的证书,请参阅在 Windows 客户端上安装证书

  3. 在客户端计算机上,浏览到“网络设置” ,并选择“VPN” 。 VPN 连接显示所连接到的虚拟网络的名称。

Mac (macOS) 本机 VPN 客户端

必须为连接到 Azure 虚拟网络的每个 Mac 设备创建一个单独的配置文件。 因为这些设备要求在配置文件中指定用于身份验证的用户证书。 此外,只有在配置中包含 IKEv2 隧道类型才可使用 macOS 本机 VPN 客户端。 Generic 文件夹包含创建配置文件所需的全部信息:

  • VpnSettings.xml 包含服务器地址和隧道类型等重要设置。
  • VpnServerRoot.cer 包含在设置 P2S 连接期间验证 VPN 网关所需的根证书。
  • RadiusServerRoot.cer 包含在身份验证过程中验证 RADIUS 服务器所需的根证书。

使用以下步骤在 Mac 中配置用于证书身份验证的本机 VPN 客户端:

  1. VpnServerRootRadiusServerRoot 根证书导入到 Mac 中。 将每个文件复制到你的 Mac,双击它,然后选择“添加”。

  2. 每个客户端都需要使用客户端证书来进行身份验证。 在客户端设备上安装客户端证书。

  3. 在“网络首选项”下打开“网络”对话框。 选择 + 来为到 Azure 虚拟网络的 P2S 连接创建新的 VPN 客户端连接配置文件。

    “接口”值为“VPN”,“VPN 类型”值为“IKEv2”。 在“服务名称”框中为配置文件指定一个名称,然后选择“创建”以创建 VPN 客户端连接配置文件。

  4. Generic 文件夹中的 VpnSettings.xml 文件复制 VpnServer 标记值。 将该值粘贴到配置文件的“服务器地址”和“远程 ID”框中。 将“本地 ID”框保留为空。

  5. 选择“身份验证设置” ,然后选择“证书” 。

  6. 单击“选择”以选择要用于身份验证的证书。

  7. “选择标识”会显示可供选择的证书列表。 选择适当的证书,然后选择“继续” 。

  8. 在“本地 ID” 框中,指定证书的名称(见步骤 6)。 在本例中,该名称为 ikev2Client.com。 然后,选择“应用”按钮以保存更改。

  9. 在“网络” 对话框中,选择“应用” 以保存所有更改。 然后,选择“连接”以启动到 Azure 虚拟网络的 P2S 连接。

后续步骤

返回到 P2S 配置文章来验证连接

有关 P2S 故障排除信息,请参阅排查 Azure 点到站点连接问题