创建和管理IPsec连接(双隧道模式)

在配置IPsec-VPN连接实现本地数据中心与VPC互通的过程中,您需要创建IPsec连接以建立加密通信通道。本文介绍如何创建和管理双隧道模式的IPsec连接。

前提条件

  • 在创建IPsec连接前,请先了解IPsec-VPN连接的使用流程,并依据使用流程完成创建IPsec连接前的所有操作步骤。更多信息,请参见入门概述

  • 如果IPsec连接绑定了国密型的VPN网关实例,则在创建IPsec连接前,您还需要满足以下条件:

    • 为国密型VPN网关绑定了SSL证书。具体操作,请参见管理SSL证书

    • 已获得国密型VPN网关对端的CA(Certification Authority)证书和对端签名证书的主题信息。

创建IPsec连接

  1. 登录VPN网关管理控制台
  2. 在左侧导航栏,选择网间互联 > VPN > IPsec连接

  3. 在顶部菜单栏,选择IPsec连接的地域。

    说明

    IPsec连接的地域需和待绑定的VPN网关实例所属的地域相同。

  4. IPsec连接页面,单击创建IPsec连接

  5. 创建IPsec连接页面,根据以下信息配置IPsec连接,然后单击确定

    基本配置

    配置

    说明

    名称

    输入IPsec连接的名称。

    资源组

    选择VPN网关实例所属的资源组。

    如果您不选择,系统直接展示所有资源组下的VPN网关实例。

    绑定资源

    选择IPsec连接绑定的资源类型。

    选择VPN网关

    VPN网关

    选择IPsec连接待绑定的VPN网关实例。

    路由模式

    选择IPsec连接的路由模式。

    • 目的路由模式(默认值):基于目的IP地址路由和转发流量。

    • 感兴趣流模式:基于源IP地址和目的IP地址精确的路由和转发流量。

      选择感兴趣流模式后,您需要配置本端网段对端网段

      IPsec连接配置完成后,系统会自动在VPN网关实例的策略路由表中添加源网段为IPsec连接本端网段目标网段为IPsec连接对端网段,下一跳指向IPsec连接的策略路由,策略路由默认是未发布状态。您可以依据网络互通需求决定是否将该策略路由发布至VPC的路由表中。具体操作,请参见发布策略路由

    本端网段

    输入需要和本地数据中心互通的VPC侧的网段,用于第二阶段协商。

    单击文本框右侧的添加图标,可添加多个需要和本地数据中心互通的VPC侧的网段。

    说明

    如果您配置了多个网段,则后续IKE协议的版本需要选择为ikev2

    对端网段

    输入需要和VPC互通的本地数据中心侧的网段,用于第二阶段协商。

    单击文本框右侧的添加图标,可添加多个需要和VPC侧互通的本地数据中心侧的网段。

    说明

    如果您配置了多个网段,则后续IKE协议的版本需要选择为ikev2

    立即生效

    选择IPsec连接的配置是否立即生效。

    • (默认值):配置完成后系统立即进行IPsec协议协商。

    • :当有流量进入时系统才进行IPsec协议协商。

    启用BGP

    选择是否为隧道开启BGP(Border Gateway Protocol)动态路由功能。系统默认关闭BGP功能。

    开启BGP功能后,IPsec连接下的两条隧道可以通过BGP动态路由协议自动分发和学习本地数据中心和VPC侧的路由,帮您降低网络维护成本和网络配置风险。

    使用BGP动态路由功能前,建议您先了解BGP动态路由功能工作机制和使用限制。更多信息,请参见配置BGP动态路由

    本端自治系统号

    输入隧道本端的自治系统号。默认值:45104。自治系统号取值范围:1~4294967295

    说明

    建议您使用自治系统号的私有号码与阿里云建立BGP连接。自治系统号的私有号码范围请自行查阅文档。

    隧道配置

    请根据以下信息为IPsec连接添加隧道配置,系统默认隧道1为主隧道,使用VPN网关实例IPsec地址1建立IPsec-VPN连接;隧道2为备隧道,使用VPN网关实例IPsec地址2建立IPsec-VPN连接,不支持变更隧道角色。

    重要

    创建双隧道模式的IPsec-VPN连接时,请配置两条隧道使其均为可用状态,如果您仅配置或仅使用了其中一条隧道,则无法体验IPsec-VPN连接主备链路冗余能力以及可用区级别的容灾能力。

    配置项

    说明

    用户网关

    选择隧道关联的用户网关实例。

    两条隧道支持关联相同的用户网关实例。

    RemoteId

    输入对端签名证书的主题信息。格式例如:

    CN=z****,O=hangzhou,OU=hangzhou,C=CN
    重要

    主题信息仅支持输入英文,因此请确保申请对端签名证书时填写的主题信息(例如公司名称、部门、公司所在区域等信息)为英文。

    对端CA证书

    输入对端CA证书。

    通过输入对端CA证书,VPN网关实例可以在建立IPsec-VPN连接时校验对端证书的合法性。

    如果您已经在本地保存了对端CA证书,您可以单击上传证书,将已经保存的对端CA证书上传至阿里云。

    预共享密钥

    输入隧道的认证密钥,用于隧道与隧道对端之间的身份认证。

    • 密钥长度为1~100个字符,支持数字、大小写英文字母及右侧字符~`!@#$%^&*()_-+={}[]\|;:',.<>/?,不能包含空格。

    • 若您未指定预共享密钥,系统会随机生成一个16位的字符串作为预共享密钥。创建IPsec连接后,您可以通过隧道的编辑按钮查看系统生成的预共享密钥。具体操作,请参见修改隧道的配置

    重要

    隧道及隧道对端的预共享密钥需一致,否则系统无法正常建立隧道。

    加密配置:IKE配置

    配置项

    说明

    版本

    选择IKE协议的版本。

    • ikev1

      如果VPN网关类型为国密型,则IKE版本仅支持ikev1

    • ikev2(默认值)

      相对于IKEv1版本,IKEv2版本简化了SA的协商过程并且对于多网段的场景提供了更好的支持,推荐选择IKEv2版本。

    协商模式

    选择协商模式。

    • main(默认值):主模式,协商过程安全性高。

      如果VPN网关类型为国密型,则协商模式仅支持main

    • aggressive:野蛮模式,协商快速且协商成功率高。

    协商成功后两种模式的信息传输安全性相同。

    加密算法

    选择第一阶段协商使用的加密算法。

    • 如果IPsec连接绑定的为普通型VPN网关,则加密算法支持aes(aes128,默认值)、aes192aes256des3des

    • 如果IPsec连接绑定的为国密型VPN网关,则加密算法支持sm4(默认值)。

    说明

    如果VPN网关实例的带宽规格为200 Mbps及以上,推荐使用aesaes192aes256加密算法,不推荐使用3des加密算法。

    • aes是一种对称密钥加密算法,提供高强度的加密和解密,在保证数据安全传输的同时对网络延迟、吞吐量、转发性能影响较小。

    • 3des是三重数据加密算法,加密时间较长且算法复杂度较高,运算量较大,相比aes会降低转发性能。

    认证算法

    选择第一阶段协商使用的认证算法。

    • 如果IPsec连接绑定的为普通型VPN网关,则认证算法支持sha1(默认值)、md5sha256sha384sha512

    • 如果IPsec连接绑定的为国密型VPN网关,则认证算法支持sm3(默认值)。

    说明

    在部分本地网关设备上添加VPN配置时,可能需要指定PRF算法,PRF算法与IKE阶段认证算法保持一致即可。

    DH分组

    选择第一阶段协商的Diffie-Hellman密钥交换算法。

    • group1:表示DH分组中的DH1。

    • group2(默认值):表示DH分组中的DH2。

    • group5:表示DH分组中的DH5。

    • group14:表示DH分组中的DH14。

    SA生存周期(秒)

    设置第一阶段协商出的SA的生存周期。单位:秒。默认值:86400。取值范围:0~86400

    LocalId

    输入隧道本端的标识符。默认使用隧道的IP地址作为隧道本端标识符。

    该参数仅作为标识符用于在IPsec-VPN连接协商中标识阿里云,无其他作用。支持使用IP地址格式或FQDN(Fully Qualified Domain Name)格式,不能包含空格。推荐使用私网IP地址作为隧道本端的标识。

    如果LocalId使用了FQDN格式,例如输入example.aliyun.com,则本地网关设备上IPsec连接的对端ID需与LocalId的值保持一致,协商模式建议选择为aggressive(野蛮模式)。

    RemoteId

    输入隧道对端的标识符。默认值使用隧道关联的用户网关中的IP地址作为隧道对端标识符。

    该参数仅作为标识符用于在IPsec-VPN连接协商中标识本地网关设备,无其他作用。支持使用IP地址格式或FQDN(Fully Qualified Domain Name)格式,不能包含空格。推荐使用私网IP地址作为隧道对端的标识。

    如果RemoteId使用了FQDN格式,例如输入example.aliyun.com,则本地网关设备上IPsec连接的本端ID需与RemoteId的值保持一致,协商模式建议选择为aggressive(野蛮模式)。

    加密配置:IPsec配置

    配置项

    说明

    加密算法

    选择第二阶段协商的加密算法。

    • 如果IPsec连接绑定的为普通型VPN网关,则加密算法支持aes(aes128,默认值)、aes192aes256des3des

    • 如果IPsec连接绑定的为国密型VPN网关,则加密算法支持sm4(默认值)。

    说明

    如果VPN网关实例的带宽规格为200 Mbps及以上,推荐使用aesaes192aes256加密算法,不推荐使用3des加密算法。

    • aes是一种对称密钥加密算法,提供高强度的加密和解密,在保证数据安全传输的同时对网络延迟、吞吐量、转发性能影响较小。

    • 3des是三重数据加密算法,加密时间较长且算法复杂度较高,运算量较大,相比aes会降低转发性能。

    认证算法

    选择第二阶段协商的认证算法。

    • 如果IPsec连接绑定的为普通型VPN网关,则认证算法支持sha1(默认值)、md5sha256sha384sha512

    • 如果IPsec连接绑定的为国密型VPN网关,则认证算法支持sm3(默认值)。

    DH分组

    选择第二阶段协商的Diffie-Hellman密钥交换算法。

    • disabled:表示不使用DH密钥交换算法。

      • 对于不支持PFS的客户端请选择disabled

      • 如果选择为非disabled的任何一个组,会默认开启完美向前加密PFS(Perfect Forward Secrecy)功能,使得每次重协商都要更新密钥,因此,相应的客户端也要开启PFS功能。

    • group1:表示DH分组中的DH1。

    • group2(默认值):表示DH分组中的DH2。

    • group5:表示DH分组中的DH5。

    • group14:表示DH分组中的DH14。

    SA生存周期(秒)

    设置第二阶段协商出的SA的生存周期。单位:秒。默认值:86400。取值范围:0~86400

    DPD

    选择开启或关闭对等体存活检测DPD(Dead Peer Detection)功能。DPD功能默认开启。

    开启DPD功能后,IPsec连接会发送DPD报文用来检测对端的设备是否存活,如果在设定时间内未收到正确回应则认为对端已经断线,IPsec连接将删除ISAKMP SA和相应的IPsec SA,安全隧道同样也会被删除。DPD检测超时后,IPsec连接会自动重新发起IPsec-VPN隧道协商。

    • 对于在2019年04月至2023年01月期间创建的VPN网关实例:

      • 如果创建IPsec连接时使用IKEv1版本,DPD报文的超时时间为30秒。

      • 如果创建IPsec连接时使用IKEv2版本,DPD报文的超时时间为3600秒。

    • 对于在2023年02月之后创建的VPN网关实例:

      • 如果创建IPsec连接时使用IKEv1版本,DPD报文的超时时间为30秒。

      • 如果创建IPsec连接时使用IKEv2版本,DPD报文的超时时间为130秒。

    NAT穿越

    选择开启或关闭NAT(Network Address Translation)穿越功能。NAT穿越功能默认开启。

    开启NAT穿越功能后,IKE协商过程会删除对UDP端口号的验证过程,同时能帮您发现加密通信通道中的NAT网关设备。

    BGP配置

    如果您已经打开了IPsec连接的BGP功能,您可以根据以下信息为隧道添加BGP配置。如果您未打开IPsec连接的BGP功能,您可以在创建IPsec连接后单独为隧道开启BGP功能并添加相应配置。具体操作,请参见单独为隧道开启BGP功能

    配置项

    说明

    隧道网段

    输入隧道的网段。

    隧道网段需要是在169.254.0.0/16内的子网掩码为30的网段,且不能是169.254.0.0/30、169.254.1.0/30、169.254.2.0/30、169.254.3.0/30、169.254.4.0/30、169.254.5.0/30和169.254.169.252/30。

    说明

    一个VPN网关实例下,每个隧道的网段需保持唯一。

    本端BGP地址

    输入隧道本端的BGP IP地址。

    该地址为隧道网段内的一个IP地址。

    标签

    创建IPsec连接时支持为IPsec连接添加标签,您可以通过标签对IPsec连接进行标记和分类,便于资源的搜索和聚合。更多信息,请参见标签

    配置项

    说明

    标签键

    为IPsec连接添加标签键,支持选择已有标签键或输入新的标签键。

    标签值

    为IPsec连接添加标签值,支持选择已有标签值或输入新的标签值。标签值可以为空。

  6. 在弹出的对话框中,单击确定

后续步骤

IPsec连接创建完成后,您需要下载IPsec连接对端配置并添加在本地网关设备中。具体操作,请参见下载IPsec连接配置配置本地网关设备

下载IPsec连接对端配置

创建IPsec连接后,您可以下载IPsec连接对端的配置,用于后续配置本地网关设备。

  1. 登录VPN网关管理控制台

  2. 在左侧导航栏,选择网间互联 > VPN > IPsec连接

  3. 在顶部菜单栏,选择IPsec连接的地域。
  4. IPsec连接页面,找到目标IPsec连接,在操作列单击生成对端配置

  5. IPsec连接配置对话框复制配置并保存到您本地,以便用于配置本地网关设备。

    如何配置本地网关设备,请参见配置本地网关设备

查看IPsec连接隧道信息

创建IPsec连接后,您可以在IPsec连接详情页面下查看两条隧道的状态和信息。

  1. 登录VPN网关管理控制台

  2. 在左侧导航栏,选择网间互联 > VPN > IPsec连接

  3. 在顶部菜单栏,选择IPsec连接的地域。
  4. IPsec连接页面,找到目标IPsec连接,单击IPsec连接ID。

  5. 在IPsec连接详情页面,查看IPsec连接下两条隧道的状态和信息。

    字段

    说明

    Tunnel/Tunnel ID

    隧道ID。

    隧道主/备角色

    隧道角色。

    • :表示当前隧道为主隧道。

    • :表示当前隧道为备隧道。

    网关IP

    建立IPsec-VPN连接时阿里云侧使用的IP地址。

    • 主隧道默认使用VPN网关实例的IPsec地址1。

    • 备隧道默认使用VPN网关实例的IPsec地址2。

    隧道网段

    如果隧道开启了BGP动态路由功能,则该字段显示为隧道使用的BGP隧道网段。

    本端BGP地址

    如果隧道开启了BGP动态路由功能,则该字段显示为阿里云侧使用的BGP IP地址。

    连接状态

    隧道的IPsec-VPN协商状态。

    • 如果IPsec-VPN协商成功,控制台会显示第二阶段协商成功

    • 如果IPsec-VPN未能协商成功,控制台会给出相应提示,您可以根据提示排查未协商成功的原因。相关解决方案,请参见自主排查IPsec-VPN连接问题

    用户网关

    隧道关联的用户网关实例。

    用户网关实例中包含了本地数据中心侧使用的IP地址和BGP AS号。

    状态

    隧道运行状态。

    • 正常

    • 更新中

    • 删除中

单独为隧道开启BGP功能

创建IPsec连接时如果您并没有为隧道开启BGP功能,您可以在创建IPsec连接后单独为隧道开启BGP功能。

在为IPsec连接开启BGP功能前,请确保IPsec连接关联的用户网关实例已经配置了BGP AS号,如果用户网关实例未配置BGP AS号,则该IPsec连接不支持开启BGP功能。

您可以删除当前IPsec连接,重新创建,并为IPsec连接关联已配置有BGP AS号的用户网关实例。

  1. 登录VPN网关管理控制台

  2. 在左侧导航栏,选择网间互联 > VPN > IPsec连接

  3. 在顶部菜单栏,选择IPsec连接的地域。
  4. IPsec连接页面,找到目标IPsec连接,单击IPsec连接ID。

  5. 在IPsec连接实例详情页面的IPsec连接基本信息区域,在启用BGP右侧单击按钮。

  6. BGP配置对话框,添加BGP配置,然后单击确定

    需为两条隧道同时添加BGP配置。关于BGP配置项的说明,请参见BGP配置

    如果您需要为IPsec连接关闭BGP功能,在启用BGP右侧单击按钮,在关闭BGP配置对话框单击确定即可。

修改隧道的配置

创建IPsec连接后,您可以修改隧道的配置。不支持修改隧道绑定的用户网关实例。

  1. 登录VPN网关管理控制台

  2. 在左侧导航栏,选择网间互联 > VPN > IPsec连接

  3. 在顶部菜单栏,选择IPsec连接的地域。
  4. IPsec连接页面,找到目标IPsec连接,单击IPsec连接ID。

  5. 在IPsec连接实例详情页面,找到目标隧道,在操作列单击编辑

  6. 在编辑页面,修改隧道的配置,然后单击确定

    关于隧道下各个配置项的说明,请参见隧道配置

修改IPsec连接的配置

在IPsec连接已绑定了VPN网关实例的场景下,不支持修改IPsec连接关联的VPN网关实例,仅支持修改IPsec连接路由模式立即生效的配置。

  1. 登录VPN网关管理控制台

  2. 在左侧导航栏,选择网间互联 > VPN > IPsec连接

  3. 在顶部菜单栏,选择IPsec连接的地域。
  4. IPsec连接页面,找到目标IPsec连接,在操作列单击编辑

  5. 编辑IPsec连接页面,修改IPsec连接的名称、互通网段等配置,然后单击确定

    关于参数的详细说明,请参见创建IPsec连接

删除IPsec连接

  1. 登录VPN网关管理控制台

  2. 在左侧导航栏,选择网间互联 > VPN > IPsec连接

  3. 在顶部菜单栏,选择IPsec连接的地域。
  4. IPsec连接页面,找到目标IPsec连接,在操作列单击删除

  5. 在弹出的对话框中,确认信息,然后单击确定

通过调用API创建和管理IPsec连接

支持通过阿里云 SDK(推荐)阿里云 CLITerraform资源编排等工具调用API创建和管理IPsec连接。相关API说明,请参见: