关于加密要求和 Azure VPN 网关

本文介绍如何配置 Azure VPN 网关,满足 Azure 中跨界 S2S VPN 隧道和 VNet 到 VNet 连接的加密要求。

关于用于 Azure VPN 连接的 IKEv1 和 IKEv2

传统上,我们只允许将 IKEv1 连接用于基本 SKU,允许将 IKEv2 连接用于除基本 SKU 之外的所有 VPN 网关 SKU。 基本 SKU 只允许使用 1 个连接,并且有其他限制(例如性能限制)。使用只支持 IKEv1 协议的旧设备的客户其体验会受限。 为了增强使用 IKEv1 协议的客户的体验,我们现在允许将 IKEv1 连接用于除基本 SKU 之外的所有 VPN 网关 SKU。 有关详细信息,请参阅 VPN 网关 SKU。 请注意,在主模式重新生成密钥期间,使用 IKEv1 的 VPN 网关可能会遇到隧道重新连接

Diagram showing IKEv1 and IKEv2 connections to the same gateway.

在将 IKEv1 和 IKEv2 连接应用到同一 VPN 网关时,会自动启用这两个连接之间的传输。

关于 Azure VPN 网关的 IPsec 和 IKE 策略参数

IPsec 和 IKE 协议标准支持采用各种组合的各种加密算法。 如果不要求使用特定加密算法和参数组合,则 Azure VPN 网关会使用一组默认建议。 选择默认策略集,最大限度地实现默认配置中各种第三方 VPN 设备的互操作性。 因此,策略和建议数将无法涵盖所有可能的可用加密算法和密钥强度组合。

默认策略

文章中列出了 Azure VPN 网关的默认策略集:关于用于站点到站点 VPN 网关连接的 VPN 设备和 IPsec/IKE 参数

加密要求

对于需特定加密算法或参数的通信,通常由于符合性或安全性要求,你现在可配置其 Azure VPN 网关,使用具有特定加密算法和密钥强度的自定义 IPsec/IKE 策略,而不是使用 Azure 默认策略集。

例如,Azure VPN 网关的 IKEv2 主模式策略仅使用 Diffie-Hellman 组 2(1024 位),而你可能需要指定更强的组用于 IKE,例如组 14(2048 位)、组 24(2048 位 MODP 组)或 ECP(椭圆曲线组)256 或 384 位(分别为组 19 和组 20)。 类似的要求也适用于 IPsec 快速模式策略。

借助 Azure VPN 网关自定义 IPsec/IKE 策略

Azure VPN 网关现支持根据连接自定义 IPsec/IKE 策略。 对于站点到站点或 VNet 到 VNet 连接,可为具有所需密钥强度的 IPsec 和 IKE 选择特定加密算法组合,如下例所示:

Diagram showing custom policies per connection.

可创建 IPsec/IKE 策略并将其应用于新的或现有的连接。

工作流

  1. 为连接拓扑创建虚拟网络、VPN 网关或本地网络网关,如其他操作文档所述。
  2. 创建 IPsec/IKE 策略。
  3. 可在创建 S2S 或 VNet 到 VNet 连接时应用该策略。
  4. 如果已创建连接,则可以在现有连接上应用或更新策略。

IPsec/IKE 策略常见问题解答

是否所有 Azure VPN 网关 SKU 都支持自定义 IPsec/IKE 策略?

除基本 SKU 外,所有 Azure SKU 都支持自定义 IPsec/IKE 策略。

在一个连接上可以指定多少个策略?

只能为一个给定的连接指定一个策略组合。

能否在一个连接上指定部分策略? (例如,仅指定 IKE 算法,不指定 IPsec)

否,必须指定 IKE(主模式)和 IPsec(快速模式)的所有算法和参数。 不允许指定部分策略。

自定义策略中支持的算法和密钥强度有哪些?

下表列出了可配置的受支持加密算法和密钥强度。 必须为每个字段选择一个选项。

IPsec/IKEv2 选项
IKEv2 加密 GCMAES256、GCMAES128、AES256、AES192、AES128
IKEv2 完整性 SHA384、SHA256、SHA1、MD5
DH 组 DHGroup24、ECP384、ECP256、DHGroup14、DHGroup2048、DHGroup2、DHGroup1、无
IPsec 加密 GCMAES256、GCMAES192、GCMAES128、AES256、AES192、AES128、DES3、DES、无
IPsec 完整性 GCMAES256、GCMAES192、GCMAES128、SHA256、SHA1、MD5
PFS 组 PFS24、ECP384、ECP256、PFS2048、PFS2、PFS1、无
QM SA 生存期 可选:如果未指定,则使用默认值)
秒(整数;至少为 300 秒/默认为 27000 秒)
KB(整数;至少为 1024 KB/默认为 102400000 KB)
流量选择器 UsePolicyBasedTrafficSelectors**($True/$False; 可选,如果未指定,则使用默认值 $False)
DPD 超时 秒(整数:最小值为 9/最大值为 3600;默认值为 45 秒)
  • 本地 VPN 设备配置必须匹配,或者必须包含可在 Azure IPsec/IKE 策略中指定的以下算法和参数:

    • IKE 加密算法(主模式 / 阶段 1)
    • IKE 完整性算法(主模式 / 阶段 1)
    • DH 组(主模式 / 阶段 1)
    • IPsec 加密算法(快速模式 / 阶段 2)
    • IPsec 完整性算法(快速模式 / 阶段 2)
    • PFS 组(快速模式 / 阶段 2)
    • 流量选择器(如果使用了 UsePolicyBasedTrafficSelectors)
    • SA 生存期只是本地规范,不需要匹配。
  • 如果使用 GCMAES 作为 IPsec 加密算法,则必须选择相同的 GCMAES 算法和密钥长度以保证 IPsec 完整性,例如对这两者使用 GCMAES128。

  • 在“算法和密钥”表中:

    • IKE 对应于主模式或阶段 1。
    • IPsec 对应于快速模式或阶段 2。
    • DH 组指定在主模式或阶段 1 中使用的 Diffie-Hellman 组。
    • PFS 组指定在快速模式或阶段 2 中使用的 Diffie-Hellmen 组。
  • 在 Azure VPN 网关上,IKE 主模式 SA 生存期固定为 28,800 秒。

  • “UsePolicyBasedTrafficSelectors”是连接上的可选参数。 如果你在连接上将 UsePolicyBasedTrafficSelectors 设置为 $True,则它将配置 Azure VPN 网关,以连接到基于策略的本地 VPN 防火墙。 如果启用 PolicyBasedTrafficSelectors,则需确保对于本地网络(本地网关)前缀与 Azure 虚拟网络前缀的所有组合,VPN 设备都定义了与之匹配的流量选择器(而不是任意到任意)。 Azure VPN 网关将接受远程 VPN 网关建议的任何流量选择器,无论 Azure VPN 网关上的配置如何。

    例如,如果本地网络前缀为 10.1.0.0/16 和 10.2.0.0/16,虚拟网络前缀为 192.168.0.0/16 和 172.16.0.0/16,则需指定以下流量选择器:

    • 10.1.0.0/16 <====> 192.168.0.0/16
    • 10.1.0.0/16 <====> 172.16.0.0/16
    • 10.2.0.0/16 <====> 192.168.0.0/16
    • 10.2.0.0/16 <====> 172.16.0.0/16

    有关基于策略的流量选择器的详细信息,请参阅连接多个基于策略的本地 VPN 设备

  • DPD 超时 - 在 Azure VPN 网关上,默认值为 45 秒。 将超时设置为较短的时长会导致 IKE 更主动地重新生成密钥,导致连接在某些实例中好像是断开的。 如果你的本地位置离 VPN 网关所在的 Azure 区域较远,或者物理链接条件可能会导致数据包丢失,则你可能不希望出现这种情况。 一般建议是将超时设置为 30 到 45 秒。

有关详细信息,请参阅连接多个基于策略的本地 VPN 设备

支持哪些 Diffie-Hellman 组?

下表列出了自定义策略支持的相应 Diffie-Hellman 组:

Diffie-Hellman 组 DHGroup PFSGroup 密钥长度
1 DHGroup1 PFS1 768 位 MODP
2 DHGroup2 PFS2 1024 位 MODP
14 DHGroup14
DHGroup2048
PFS2048 2048 位 MODP
19 ECP256 ECP256 256 位 ECP
20 ECP384 ECP384 384 位 ECP
24 DHGroup24 PFS24 2048 位 MODP

如需更多详细信息,请参阅 RFC3526RFC5114

自定义策略是否会替换 Azure VPN 网关的默认 IPsec/IKE 策略集?

是的。一旦在连接上指定自定义策略,Azure VPN 网关就会只使用该连接的策略,既充当 IKE 发起方,又充当 IKE 响应方。

如果删除自定义 IPsec/IKE 策略,连接是否会变得不受保护?

否。连接仍受 IPsec/IKE 保护。 从连接中删除自定义策略以后,Azure VPN 网关会还原为默认的 IPsec/IKE 提议列表,并再次重启与本地 VPN 设备的 IKE 握手。

添加或更新 IPsec/IKE 策略是否会中断 VPN 连接?

是的。那样会导致短时中断(数秒),因为 Azure VPN 网关会断开现有连接并重启 IKE 握手,以便使用新的加密算法和参数重建 IPsec 隧道。 请确保也使用匹配的算法和密钥强度对本地 VPN 设备进行配置,尽量减少中断。

是否可以在不同的连接上使用不同的策略?

是的。 自定义策略是在单个连接的基础上应用的。 可以在不同的连接上创建并应用不同的 IPsec/IKE 策略。 也可选择在连接子集上应用自定义策略。 剩余连接使用 Azure 默认 IPsec/IKE 策略集。

是否也可在 VNet 到 VNet 连接上使用自定义策略?

是的。可以在 IPsec 跨界连接或 VNet 到 VNet 连接上应用自定义策略。

是否需在两个 VNet 到 VNet 连接资源上指定同一策略?

是的。 VNet 到 VNet 隧道包含 Azure 中的两个连接资源,一个方向一个资源。 请确保两个连接资源的策略相同,否则无法建立 VNet 到 VNet 连接。

默认的 DPD 超时值是多少? 能否指定其他 DPD 超时值?

默认的 DPD 超时为 45 秒。 你可在每个 IPsec 或 VNet 到 VNet 连接上指定其他 DPD 超时值(从 9 到 3600 秒)。

注意

在 Azure VPN 网关上,默认值为 45 秒。 将超时设置为较短的时长会导致 IKE 更主动地重新生成密钥,导致连接在某些实例中好像是断开的。 如果本地位置离 VPN 网关所在的 Azure 区域较远,或者物理链接条件可能会导致数据包丢失时,你可能不希望出现这种情况。 一般建议是将超时设置为 30 到 45 秒。

能否在 ExpressRoute 连接上使用自定义 IPsec/IKE 策略?

否。 只能通过 Azure VPN 网关在 S2S VPN 和 VNet 到 VNet 连接上使用 IPsec/IKE 策略。

如何创建 IKEv1 或 IKEv2 协议类型的连接?

除基本的 SKU、标准 SKU 和其他旧版 SKU 以外,可以在所有 RouteBased VPN 类型 SKU 上创建 IKEv1 连接。 创建连接时,可以指定 IKEv1 或 IKEv2 连接协议类型。 如果未指定连接协议类型,IKEv2 将用作默认选项(如果适用)。 有关详细信息,请参阅 PowerShell cmdlet 文档。 有关 SKU 类型和 IKEv1/IKEv2 支持,请参阅将网关连接到基于策略的 VPN 设备

是否允许在 IKEv1 连接和 IKEv2 连接之间进行传输?

是的。 支持在 IKEv1 连接和 IKEv2 连接之间传输。

能否在 RouteBased VPN 类型的基本 SKU 上建立 IKEv1 站点到站点连接?

否。 基本 SKU 不支持此操作。

能否在创建连接(从 IKEv1 到 IKEv2 的连接,或者反方向的连接)后更改连接协议类型?

否。 在创建连接后,无法再更改 IKEv1/IKEv2 协议。 必须删除并重新创建使用所需协议类型的新连接。

为什么我的 IKEv1 连接频繁地重新连接?

如果你的静态路由或基于路由的 IKEv1 连接每隔一段时间就断开连接一次,可能是因为 VPN 网关不支持就地重新生成密钥。 如果主模式正在重新生成密钥,IKEv1 隧道将断开连接,并需要长达 5 秒的时间来重新连接。 主模式协商超时值将决定重新生成密钥的频率。 为了防止出现这些重新连接,可以切换到使用 IKEv2,它支持就地重新生成密钥。

如果你的连接不定时地重新连接,请按照我们的故障排除指南执行操作。

可以在何处找到配置信息和步骤?

有关详细信息和配置步骤,请参阅以下文章。

后续步骤

若要了解在连接上配置自定义 IPsec/IKE 策略的分步说明,请参阅配置 IPsec/IKE 策略

另请参阅连接多个基于策略的 VPN 设备,了解有关 UsePolicyBasedTrafficSelectors 选项的详细信息。