Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

IPsec 规则和规则集

示例:配置 IKE 动态 SA

此示例说明如何配置 IKE 动态 SA,并包含以下部分。

要求

此示例使用以下硬件和软件组件:

  • 四台安装有多服务接口的 M Series、MX 系列 或 T Series 路由器。

  • Junos OS 9.4 或更高版本。

在配置此功能之前,不需要除设备启动之外的特殊配置。

概述和拓扑

安全关联 (SA) 是一种单工连接,使两台主机能够通过 IPsec 安全地相互通信。

动态 SA 最适合大规模、地理上分散的网络,在这些环境中,密钥的手册分发、维护和跟踪任务非常艰巨。动态 SA 配置了一组由安全网关协商的提议。密钥在协商过程中生成,无需在配置中指定。动态 SA 包含一个或多个提议,这些提议允许您确定要与对等方协商的协议和算法列表的优先级。

拓扑结构

图 1 显示了包含一组四台路由器的 IPsec 拓扑。此配置要求路由器 2 和 3 使用 IKE 动态 SA、增强型身份验证和加密来建立 IPsec 隧道。路由器 1 和 4 提供基本连接,用于验证 IPsec 隧道是否正常运行。

图 1:IKE 动态 SA IKE Dynamic SAs
注意:

如果未在多服务 PIC 上指定 IKE 提议、IPsec 提议和 IPsec 策略,则 Junos OS 默认为最高级别的加密和身份验证。因此,默认身份验证协议为 ESP,默认身份验证模式为 HMAC-SHA1-96,默认加密模式为 3DES-CBC。

配置

要配置 IKE 动态 SA,请执行以下任务:

注意:

此示例中显示的接口类型仅供参考。例如,您可以使用 so- 接口代替 ge- sp- ms-和 。

配置路由器 1

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,然后将命令复制并粘贴到路由器 1 的 [edit] 层级的 CLI 中。

分步程序

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅 《CLI 用户指南》中的在配置模式下使用 CLI 编辑器

要配置路由器 1 以便与路由器 2 建立 OSPF 连接:

  1. 配置以太网接口和环路接口。

  2. 指定 OSPF 区域,并将接口与 OSPF 区域相关联。

  3. 配置路由器 ID。

  4. 提交配置。

结果

在配置模式下,输入 show interfacesshow protocols ospfshow routing-options 命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明以更正配置

配置路由器 2

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,然后将命令复制并粘贴到路由器 2 层次结构级别的 CLI 中。

分步程序

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅 《CLI 用户指南》中的在配置模式下使用 CLI 编辑器

要在路由器 2 上配置 OSPF 连接和 IPsec 隧道参数:

  1. 配置接口属性。在此步骤中,您将配置两个以太网接口(ge-1/0/0 和 ge-1/0/1)、一个环路接口和一个多服务接口 (ms-1/2/0)。

  2. 指定 OSPF 区域,并将接口与 OSPF 区域相关联。

  3. 配置路由器 ID。

  4. 配置 IPsec 规则。在此步骤中,您将配置 IPsec 规则,指定手册 SA 参数,例如远程网关地址、身份验证和加密属性等。

    注意:

    默认情况下,Junos OS 使用 IKE 策略版本 1.0。Junos OS 11.4 及更高版本还支持 IKE 策略 2.0 版,您必须在 上 [edit services ipsec-vpn ike policy policy-name pre-shared]进行配置。

  5. 配置下一跃点样式的服务集,指定本地网关地址,并将 IPsec VPN 规则与服务集相关联。

  6. 提交配置。

结果

在配置模式下,输入 show interfacesshow protocols ospfshow routing-optionsshow services 命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明以更正配置

配置路由器 3

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,然后将命令复制并粘贴到路由器 3 的 [edit] 层级的 CLI 中。

分步程序

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅 《CLI 用户指南》中的在配置模式下使用 CLI 编辑器

要在路由器 3 上配置 OSPF 连接和 IPsec 隧道参数:

  1. 配置接口属性。在此步骤中,您将配置两个以太网接口(ge-1/0/0 和 ge-1/0/1)、一个环路接口和一个多服务接口 (ms-1/2/0)。

  2. 指定 OSPF 区域,并将接口与 OSPF 区域相关联。

  3. 配置路由器 ID。

  4. 配置 IPsec 规则。在此步骤中,您将配置 IPsec 规则并指定手册 SA 参数,例如远程网关地址、身份验证和加密属性等。

  5. 配置下一跃点样式的服务集,指定本地网关地址,并将 IPsec VPN 规则与服务集相关联。

  6. 提交配置。

结果

在配置模式下,输入 show interfacesshow protocols ospfshow routing-optionsshow services 命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明以更正配置

配置路由器 4

CLI 快速配置

要快速配置此示例,请复制以下命令,将其粘贴到文本文件中,删除所有换行符,更改详细信息,以便与网络配置匹配,然后将命令复制并粘贴到路由器 4 层次结构级别的 CLI 中。

分步程序

下面的示例要求您在各个配置层级中进行导航。有关导航 CLI 的信息,请参阅 《CLI 用户指南》中的在配置模式下使用 CLI 编辑器

要设置与路由器 4 的 OSPF 连接,请执行以下作

  1. 配置接口。在此步骤中,您将配置一个以太网接口 (ge-1/0/1) 和一个环路接口。

  2. 指定 OSPF 区域,并将接口与 OSPF 区域相关联。

  3. 配置路由器 ID。

结果

在配置模式下,输入 show interfacesshow protocols ospfshow routing-options 命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明以更正配置

验证

验证您在路由器 1 上的工作

目的

验证路由器 1 是否正常运行。

行动

在作模式下,对路由器 4 上的 ge-0/0/0 接口输入 ping 10.1.56.2 命令,以通过 IPsec 隧道发送流量

意义

输出显示路由器 1 能够通过 IPsec 隧道到达路由器 4。

验证您在路由器 2 上的工作

目的

验证 IKE SA 协商是否成功。

行动

在作模式下,输入命令 show services ipsec-vpn ike security-associations

要验证 IPsec 安全关联是否处于活动状态,请发出命令 show services ipsec-vpn ipsec security-associations detail 。请注意,SA 包含多服务 PIC 固有的默认设置,例如,用于协议的 ESP 和用于身份验证算法的 HMAC-SHA1-96。

在作模式下,输入命令 show services ipsec-vpn ipsec security-associations detail

要验证流量是否正在通过双向 IPsec 隧道传输,请发出以下 show services ipsec-vpn statistics 命令:

在作模式下,输入命令 show services ipsec-vpn statistics

意义

show services ipsec-vpn ipsec security-associations detail命令输出显示您配置的 SA 属性。

命令输出显示 show services ipsec-vpn ipsec statistics 通过 IPsec 隧道的流量。

验证您在路由器 3 上的工作

目的

验证路由器 3 上的 IKE SA 协商是否成功。

行动

在作模式下,输入命令 show services ipsec-vpn ike security-associations 。要成功,路由器 3 上的 SA 必须包含在您在路由器 2 上指定的相同设置。

要验证 IPsec SA 是否处于活动状态,请发出命令 show services ipsec-vpn ipsec security-associations detail 。要成功,路由器 3 上的 SA 必须包含在您在路由器 2 上指定的相同设置。

在作模式下,输入命令 show services ipsec-vpn ipsec security-associations detail

要验证流量是否正在通过双向 IPsec 隧道传输,请发出以下 show services ipsec-vpn statistics 命令:

在作模式下,输入命令 show services ipsec-vpn ike security-associations

意义

show services ipsec-vpn ipsec security-associations detail命令输出显示您配置的 SA 属性。

命令输出显示 show services ipsec-vpn ipsec statistics 通过 IPsec 隧道的流量。

验证您在路由器 4 上的工作

目的

验证 IKE SA 协商是否成功。

行动

在作模式下,对路由器 1 上的 ge-0/0/0 接口输入 ping 10.1.12.2 命令,以通过 IPsec 隧道发送流量。

要确认流量通过 IPsec 隧道传输,请向路由器 1 上的 ge-0/0/0 接口发出 traceroute 命令。请注意,路径中未引用路由器 2 和 3 之间的物理接口;流量通过路由器 3 上的自适应服务 IPsec 内部接口进入 IPsec 隧道,通过路由器 2 上的环路接口,最后在路由器 1 上的 ge-0/0/0 接口结束。

在作模式下,输入 traceroute 10.1.12.2

意义

ping 10.1.12.2输出显示路由器 4 能够通过 IPsec 隧道到达路由器 1。

输出显示 traceroute 10.1.12.2 流量通过 IPsec 隧道传输。

配置 IPsec 规则

要配置 IPsec 规则,请在层次结构级别添加该 rule 语句并指定规则名称 [edit services ipsec-vpn]

每个 IPsec 规则都由一组术语组成,类似于防火墙过滤器。

术语由以下内容组成:

  • from 语句 — 指定包含和排除的匹配条件和应用。

  • then 语句 — 指定要由路由器软件执行的作和作修饰符。

以下部分介绍如何配置 IPsec 规则的组件:

配置 IPsec 规则的匹配方向

每个规则都必须包含一个match-direction语句,用于指定是在接口的输入端还是输出端应用匹配。要配置匹配的应用位置,请在层次结构级别包含[edit services ipsec-vpn rule rule-name]match-direction (input | output)语句:

注意:

ACX 系列路由器不支持 match-direction AS output

匹配方向用于通过 AS 或多服务 PIC 的流量。将数据包发送至 PIC 时,方向信息也会随之携带。

对于接口服务集,数据包的方向取决于数据包是进入还是离开应用了服务集的接口。

有了下一跳点服务集,数据包的方向由用于将数据包路由到 AS 或多服务 PIC 的接口决定。如果使用内部接口路由数据包,则输入数据包方向。如果使用外部接口将数据包定向到 PIC,则输出数据包方向。

在 AS 或多服务 PIC 上,将执行流查找。如果未找到流,则执行规则处理。服务集中的所有规则都会被考虑在内。在规则处理过程中,系统会将数据包方向与规则方向进行比较。仅考虑方向信息与数据包方向匹配的规则。

在 IPsec 规则中配置匹配条件

要在 IPsec 规则中配置匹配条件,请在[edit services ipsec-vpn rule rule-name term term-name]层次结构级别包含该from语句:

您可以使用源地址或目标地址作为匹配条件,其配置方式与配置防火墙过滤器的方式相同;有关更多信息,请参阅 Junos OS 路由协议库

IPsec 服务支持 IPv4 和 IPv6 地址格式。如果未专门配置源地址或目标地址,则使用默认值 0.0.0.0/0 (IPv4 ANY)。要将 IPv6 ANY (0::0/128) 用作源地址或目标地址,必须对其进行显式配置。

注意:

ACX 系列上的 IPsec 服务支持 IPv4 地址格式。如果未专门配置源地址或目标地址,则使用默认值 0.0.0.0/0 (IPv4 ANY)。

仅对于下一跃点样式的服务集,该ipsec-inside-interface语句允许您将逻辑接口分配给由于此匹配条件而建立的隧道。inside-service-interface您可以在层次结构级别配置[edit services service-set name next-hop-service]的语句允许您将 和 .2 指定.1为内部和外部接口。但是,您可以使用语句配置多个自适应服务逻辑接口service-domain inside,并使用其中一个接口来配置语ipsec-inside-interface句。

Junos OS 评估您在语句中 from 配置的条件。如果在同一下一跃点样式服务集中配置了多个链路类型隧道, ipsec-inside-interface 则如果所有隧道的源地址和目的地址均为 0.0.0.0/0 (ANY-ANY),则该值使规则查找模块能够将特定隧道与其他隧道区分开来。

注意:

配置该 ipsec-inside-interface 语句时,不支持接口样式的服务集。

包含“any-any”匹配条件的术语提供了特殊情况(通常是因为省略了该 from 语句)。如果隧道中存在任意任意匹配,则不需要流量,因为此隧道中的所有流量都使用相同的安全关联 (SA),并且数据包选择器不会发挥重要作用。因此,这些隧道将使用基于数据包的 IPsec。此策略可在 PIC 上节省部分流资源,用于需要基于流服务的其他隧道。

以下配置示例显示了任意-任意隧道配置,其中不带 from 语句 term-1。子句中 from 缺少选择器将导致基于数据包的 IPsec 服务。

在专用模式和共享模式下,我们都可向具有任意-任意匹配的链路类型隧道以及具有任意-任意匹配的动态隧道提供无流 IPsec 服务。

对于链路类型隧道,服务集中支持无流和基于流的混合 IPsec。如果服务集在子句中 from 包含某些带有任意匹配的术语和带有选择器的某些术语,则将为任意任意隧道提供基于数据包的服务,并为其他带有选择器的隧道提供基于流的服务。

对于非链路类型隧道,如果服务集同时包含任意-任意术语和基于选择器的术语,则将向所有隧道提供基于流的服务。

在 IPsec 规则中配置作

要在 IPsec 规则中配置作,请在[edit services ipsec-vpn rule rule-name term term-name]层次结构级别包含该then语句:

主要 IPsec作是配置动态或手册 SA:

  • 配置动态 SA 的方法是在层次结构级别包含dynamic[edit services ipsec-vpn rule rule-name term term-name then]语句,并引用在和层次结构级别配置[edit services ipsec-vpn ipsec][edit services ipsec-vpn ike]的策略。

  • 可以通过在层次结构级别包含manual[edit services ipsec-vpn rule rule-name term term-name then]该语句来配置手册 SA。

您可以配置以下附加属性:

启用 IPsec 数据包分片

要在 IPsec 隧道中启用 IP 版本 4 (IPv4) 数据包分段,请在层次结构级别包含[edit services ipsec-vpn rule rule-name term term-name then]clear-dont-fragment-bit语句:

设置该 clear-dont-fragment-bit 语句将清除数据包头中的不分段 (DF) 位,无论数据包大小如何。如果数据包大小超过隧道最大传输单元 (MTU) 值,则数据包将在封装前进行分片。对于 IPsec 隧道,无论接口 MTU 设置如何,默认 MTU 值均为 1500。

配置目的地址以进行失效对等方检测

要指定 IPsec 流量定向到的远程地址,请在层次结构级别包含该 remote-gateway 语句 [edit services ipsec-vpn rule rule-name term term-name then]

要指定备份远程地址,请在层次结构级别包含[edit services ipsec-vpn rule rule-name term term-name then]以下backup-remote-gateway语句:

这两个语句同时支持 IPv4 和 IPv6 地址格式。

配置该 backup-remote-gateway 语句可启用失效对等方检测 (DPD) 协议,用于监控隧道状态和远程对等方可用性。当语句定义 remote-gateway 的主隧道处于活动状态时,备用隧道处于备用模式。如果 DPD 协议确定主远程网关地址不再可访问,则会建立一条指向备份地址的新隧道。

如果在定义的 10 秒间隔内没有来自对等方的传入流量,则路由器会将隧道检测为非活动状态。全局计时器每 10 秒轮询一次所有隧道,自适应服务 (AS) 或多服务物理接口卡 (PIC) 会发送一条消息,列出所有非活动隧道。如果隧道变为非活动状态,路由器将采取以下步骤故障转移到备份地址:

  1. 自适应服务消息触发 DPD 协议向对等方发送 hello 消息。

  2. 如果未收到确认,则以 2 秒的间隔发送两次重试,然后宣布隧道失效。

  3. 如果隧道被宣布失效或存在 IPsec 第 1 阶段协商超时,则将进行故障切换。主隧道将置于备用模式,备份将变为活动状态。

  4. 如果与备用隧道的协商超时,路由器将切换回主隧道。如果两个对等方都关闭,它将尝试故障切换六次。然后,系统将停止故障切换并恢复到原始配置,主隧道处于活动状态,备份隧道处于备用模式。

您还可以在层次结构级别包含[edit services ipsec-vpn rule rule-name term term-name then]以下initiate-dead-peer-detection语句,而无需配置备份远程网关,从而启用 DPD hello 消息的触发:

此外,对于 IKEv1 SA,您可以在使用initiate-dead-peer-detection语句时在语句下dead-peer-detection设置 intervalthreshold options。从 Junos OS 17.2R1 版开始,和threshold选项interval也适用于 IKEv2 SA。在 Junos OS 17.1 及更低版本中,intervalthreshold选项不适用于使用默认值的 IKEv2 SA。间隔是对等方在发送 DPD 请求数据包之前等待来自其目标对等方的流量的时间量,阈值是在对等方被视为不可用之前要发送的最大不成功 DPD 请求数。

监控行为与语句中 backup-remote-gateway 描述的相同。此配置使路由器能够在备份 IPsec 网关不存在时启动 DPD 查询,并在无法访问 IKE 对等方时清理 IKE 和 IPsec SA。

如果 DPD 协议确定主远程网关地址不再可访问,则会建立一条指向备份地址的新隧道。但是,如果配置 initiate-dead-peer-detection 没有备份远程网关地址,并且 DPD 协议确定主远程网关地址不再可访问,则隧道将被宣布为失效,并清理 IKE 和 IPsec SA。

有关 DPD 协议的详细信息,请参阅 RFC 3706, 一种基于流量的不工作互联网密钥交换 (IKE) 对等方检测方法

配置或禁用 IPsec 防重放

要配置 IPsec 防重放窗口的大小,请在层次结构级别包含[edit services ipsec-vpn rule rule-name term term-name then]anti-replay-window-size语句:

anti-replay-window-size 可以采用 64 到 4096 位范围内的值。AS PIC 的默认值为 64 位,多服务 PIC 和 DPC 的默认值为 128 位。AS PIC 可支持 1024 位的最大重放窗口大小,而多服务 PIC 和 DPC 可支持 4096 位的最大重放窗口大小。当软件提交 IPsec 配置时,密钥管理进程 (kmd) 无法区分服务接口类型。因此,如果 AS PIC 的最大防重放窗口大小超过 1024,则提交将成功,并且不会生成任何错误消息。但是,即使 的 anti-replay-window-size 配置值更大,软件也会在内部将 AS PIC 的防重放窗口大小设置为 1024 位。

要禁用 IPsec 防重放功能,请在层次结构级别包含[edit services ipsec-vpn rule rule-name term term-name then]以下no-anti-replay语句:

默认情况下,防重放服务处于启用状态。有时,这可能会导致与其他供应商设备的互作性问题。

指定 IPsec 隧道的 MTU

要为 IPsec 隧道配置特定的最大传输单元 (MTU) 值,请在层次结构级别包含[edit services ipsec-vpn rule rule-name term term-name then]tunnel-mtu语句:

注意:

tunnel-mtu设置是为 IPsec 隧道配置 MTU 值的唯一位置。不支持在层次结构级别包含mtu[edit interfaces sp-fpc/pic/port unit logical-unit-number family inet]设置。

配置 IPsec 规则集

rule-set语句定义了一组 IPsec 规则,用于确定路由器软件对数据流中的数据包执行的作。您可以通过指定规则名称和配置术语来定义每个规则。然后,您可以通过在层次结构级别包含[edit services ipsec-vpn]该语句并为每个规则添加一个rule语句来rule-set指定规则的顺序:

路由器软件将按您在配置中指定的顺序处理规则。如果规则中的术语与数据包匹配,路由器将执行相应的作,并且规则处理将停止。如果规则中没有与数据包匹配的术语,则处理会继续执行规则集中的下一个规则。如果没有规则与数据包匹配,则默认情况下将丢弃数据包。

变更历史表

是否支持某项功能取决于您使用的平台和版本。使用 功能资源管理器 确定您的平台是否支持某个功能。

发布
描述
17.2R1
从 Junos OS 17.2R1 版开始,和 threshold选项 interval也适用于 IKEv2 SA。