VPN 监控方法
阅读本主题,了解监控防火墙中 VPN 隧道的多种方法。
我们希望 VPN 隧道始终以最佳方式运行。但在现实世界中,情况并非如此。我们知道,VPN 隧道可能由于多种原因而关闭。
Junos OS 提供以下方法来监控 VPN:
-
使用互联网控制消息协议 (ICMP) 进行 IPsec 数据路径验证,以检查数据路径。
-
失效对等方检测 (DPD) 协议配置,用于检查 IKE 对等方的活动状态。
-
VPN 隧道监控配置,用于检查 IPsec 安全关联 (SA) 的活跃状态。
此外,您还可以使用以下全局 VPN 功能进行监控:
-
当其中一个对等方没有响应时,SA 中的 VPN 对等方可能会变得不同步。例如,如果其中一个对等方重新启动,则可能会发送不正确的安全参数索引 (SPI)。您可以通过配置错误的 SPI 响应功能,使设备能够检测到此类事件并重新同步对等方。有关该
respond-bad-spi max-responses选项的更多信息,请参阅 IKE(安全性)。 -
您可以定期向对等方发送 ICMP 请求,以确定对等方是否可访问。有关该
vpn-monitor-options选项的详细信息,请参阅 ipsec(安全性)。
您可以选择配置本主题中介绍的任何方法来监控您的 VPN。
使用 功能资源管理器 确认平台和版本对特定功能的支持。
查看 特定于平台的 VPN 监控行为 部分,了解与您的平台相关的注意事项。
IPsec 数据路径验证
IPsec 数据路径验证是验证隧道端点之间的数据路径以检查路径是否畅通且未被任何传输防火墙阻塞的过程。
为什么需要 IPsec 数据路径验证?
对于基于路由的 VPN,在点对点模式下,安全隧道 (st0) 接口的状态通常基于 VPN 隧道的状态。设备建立 IPsec 安全关联 (SA) 后,Junos OS 会将与 st0 接口关联的路由添加到转发表中。如果网络在 VPN 隧道端点之间设有中转防火墙,则防火墙可能会阻止使用 st0 接口上的活动路由的 IPsec 数据流量。因此,您可能会遇到流量丢失。
为避免此类流量丢失,必须启用 IPsec 数据通路验证。启用此功能后,Junos OS 设备在验证数据路径之前不会调出 st0 接口。您可以使用以下选项配置数据路径验证:
-
您可以使用语句
[set security ipsec vpn vpn-name vpn-monitor verify-path]对基于路由和站点到站点的 VPN 隧道进行配置。 -
如果对等隧道端点前面有NAT设备,则防火墙会将对等隧道端点的 IP 地址转换为NAT设备的 IP 地址。若要使 VPN 监控 ICMP 请求到达对等隧道端点,您需要显式指定 NAT 设备后面对等隧道端点的原始、未转换的 IP 地址。您可以使用 configuration 语句进行
[set security ipsec vpn vpn-name vpn-monitor verify-path destination-ip]配置。 -
在启动 st0 接口之前,您可以配置用于验证 IPsec 数据路径的数据包的大小。使用
[set security ipsec vpn vpn-name vpn-monitor verify-path packet-size]配置语句。可配置的数据包大小范围为 64 到 1350 字节;默认值为 64 字节。
使用 IPsec 数据路径验证时,请考虑以下几点:
-
您为 VPN 监控操作配置的源接口和目标 IP 地址不会影响 IPsec 数据通路验证。IPsec 数据路径验证中的 ICMP 请求源是本地隧道端点。
-
启用 IPsec 数据路径验证后,Junos OS 仅会在 st0 接口启动后自动激活 VPN 监控。启用 IPsec 数据路径验证时,建议在层次结构级别配置
[edit security ipsec vpn vpn-name]该vpn-monitor optimized选项。 -
如果在 IPsec 数据路径验证期间发生机箱群集故障切换,则新的活动节点将再次开始验证。在验证成功之前,Junos OS 不会激活 st0 接口。
-
对于 IPsec SA 密钥更新,Junos OS 不会执行 IPsec 数据路径验证,因为密钥更新时 st0 接口状态不会更改。
-
Junos OS 不支持在与 AutoVPN、自动发现 VPN (ADVPN) 和多个流量选择器一起使用的点对多点模式下的 st0 接口上进行 IPsec 数据路径验证。
-
VPN 监控和 IPsec 数据路径验证不支持 IPv6 地址。因此,您不能将 IPsec 数据路径验证用于 IPv6 隧道。
IPsec 数据路径验证的工作原理是什么?
配置 IPsec 数据通路验证时,会发生以下事件:
-
设备建立 VPN 隧道后,会向对等隧道端点发送 ICMP 请求,以验证 IPsec 数据路径。 VPN 监控器 ICMP 请求必须可访问对等隧道端点,并且必须能够响应 ICMP 请求。在数据路径验证过程中,命令输出中的
show security ipsec security-association detailVPN 监控字段会显示字母 V。 -
Junos OS 仅在收到来自对等方的响应时激活 st0 接口。
show interface st0.x命令输出显示数据路径验证期间和之后的 st0 接口状态: 验证完成前的链路层向下 ,验证 成功完成后上的上行 。 -
如果对等方未发送 ICMP 响应,设备将按配置的 VPN 监控时间间隔再发送 ICMP 请求,直到达到配置的 VPN 监控阈值。 请注意,默认 VPN 监控间隔为 10 秒,默认 VPN 监控阈值为 10 次。如果验证不成功,KMD_VPN_DOWN_ALARM_USER系统日志条目将原因指示为 VPN 监控验证路径错误。设备在命令输出的
show security ipsec security-association detail隧道事件下记录错误。命令show security ipsec tunnel-events-statistics显示发生错误的次数。 您可以使用 [edit security ipsec] 层级的配置选项 配置 VPN 监控器间隔和 VPN 监控器阈值。vpn-monitor-options -
如果对等方在达到 VPN 监控阈值后仍未发送 ICMP 响应,则 Junos OS 将关闭 VPN 隧道并重新协商 VPN 隧道。
也可以看看
失效对等体检测
失效对等方检测 (DPD) 是一种基于标准的协议,它使用网络流量来检测 IPsec 连接中 IKE 对等方的活跃状态。
DPD 如何工作?
在创建 IPsec 隧道期间,VPN 对等方会协商决定是否使用失效对等方检测 (DPD) 方法。如果对等方同意使用 DPD 方法,则当没有活动流量时,DPD 协议会定期向对等方发送消息并等待响应。如果对等方不响应消息,DPD 协议将假定对等方不再可用。对于 IKEv1 和 IKEv2 协议,DPD 的行为是相同的。一旦 IKE 建立第 1 阶段安全性关联 (SA),DPD 计时器就会处于活动状态。
防火墙使用 DPD 协议检测 IPsec VPN 连接中的活跃度。
中的消息交换
图 1 显示了 IPsec VPN 隧道中 IKE 对等方之间 DPD 消息的交换。当防火墙设备执行 DPD 时,会发生以下事件:
-
防火墙 SRX-A 会等待到指定的 DPD 时间间隔,以检查是否收到了来自对等方 SRX-B 的任何流量。
-
如果 SRX-A 在指定的 DPD 间隔内未收到来自 SRX-B 的任何流量,则会向 SRX-B 发送加密的 IKE 第 1 阶段通知有效负载(R-U-THERE 消息)。
-
SRX-A 等待来自 SRX-B 的 DPD 确认(R-U-THERE-ACK 消息)。
-
如果在此时间间隔内,SRX-A 收到来自 SRX-B 的 R-U-THERE-ACK 消息,则视为对等方处于活动状态。然后,SRX-A 重置该隧道的 R-U-THERE 消息计数器,并开始新的间隔。
-
如果 SRX-A 在间隔期间未收到 R-U-THERE-ACK 消息,则会认为对等方 SRX-B 已关闭。然后,SRX-A 会移除该对等方的第 1 阶段 SA 和所有第 2 阶段 SA。
-
可配置的 DPD 参数
以下是您需要配置的 DPD 参数列表:
-
模式 — 根据流量活动,您可以在以下模式之一中配置 DPD:
-
优化 — 在 优化 模式下,当发起设备向对等方发送传出数据包时,如果在配置的时间间隔内没有来自对等方的传入 IKE 或 IPsec 流量,发起设备将触发 R-U-THERE 消息。除非您配置其他模式,否则 DPD 在此默认模式下运行。
-
探测空闲隧道 — 在探 测空闲隧道 模式下,如果在配置的时间间隔内没有传入或传出 IKE 或 IPsec 流量,则设备将触发 R-U-THERE 消息。设备会定期向对等方发送 R-U-THERE 消息,直到出现流量活动。此模式有助于及早检测到出现故障的对等方,从而确保活动流量期间隧道的可用性。
注意:在此场景中,配置探测空闲隧道模式时,如果隧道变为空闲状态,无论同一IKE SA 的其他隧道中的流量如何,设备都会触发 R-U-THERE 消息。
-
始终发送 — 在 始终发送 模式下,无论对等方之间的流量活动如何,设备都会以配置的间隔发送 R-U-THERE 消息。 我们建议使用探测空闲隧道模式,而不是始终发送模式。
-
-
间隔 — 使用 interval 参数指定设备在发送 R-U-THERE 消息之前等待来自其对等方的流量的时间量(以秒为单位)。默认间隔为 10 秒。将 R-U-THERE 消息发送到对等设备的允许间隔参数范围为 2 秒到 60 秒。当DPD间隔参数设置为小于10秒时,建议将最小阈值参数设置为3。
-
阈值 — 使用 阈值 参数指定设备在认为对等方已关闭之前发送 R-U-THERE 消息而不收到对等方响应的最大次数。默认传输次数为 5 次,允许的尝试次数为 1 到 5 次。
配置 DPD 之前,请注意以下注意事项:
-
将 DPD 配置添加到具有活动隧道的现有网关后,设备将开始触发 R-U-THERE 消息,而不清除第 1 阶段或第 2 阶段 SA。
-
从具有活动隧道的现有网关中删除 DPD 配置时,设备将停止为隧道触发 R-U-THERE 消息。但这不会影响 IKE 和 IPsec SA。
-
修改模式、间隔或阈值等 DPD 配置参数时,IKE 会更新 DPD 操作,而不清除第 1 阶段或第 2 阶段 SA。
-
如果使用 DPD 和 VPN 监控配置 IKE 网关,但未指定立即建立隧道的选项,则 IKE 不会启动第 1 阶段协商。配置 DPD 时,还必须在 [
edit security ipsec vpn vpn-name] 层次结构级别配置该establish-tunnelsimmediately选项,以便在没有第 1 阶段和第 2 阶段 SA 可用时拆除 st0 接口。有关选项,establish-tunnels请参阅 vpn(安全性)。 -
如果为IKE网关配置了多个对等方IP地址和DPD,但未能使用第一个对等方IP地址建立第1阶段SA,则IKE会尝试使用下一个对等方IP地址进行建立。只有在 IKE 建立第 1 阶段 SA 后,DPD 才会激活。请参阅 失效对等体检测。
-
如果使用多个对等方和 DPD 配置了 IKE 网关,但当前对等方的 IP 地址连接失败,则 IKE 将清除第 1 阶段和第 2 阶段 SA,并且 DPD 会故障切换到下一个对等方 IP 地址。请参阅网关(安全性 IKE)。
-
由于同时进行协商,同一对等方可以存在多个第 1 阶段或第 2 阶段 SA。在这种情况下,DPD 向所有第 1 阶段 SA 发送 R-U-THERE 消息。如果网关连续多次未能收到 DPD 响应,则将清除第 1 阶段 SA 和关联的第 2 阶段 SA(仅适用于 IKEv2)。
有关 DPD 实施的更多详细信息,请参阅 RFC 3706, 一种基于流量的不工作互联网密钥交换 (IKE) 对等方检测方法。
如果 IKE 对等方处于活动状态,是否意味着底层 VPN 已开启?
考虑 DPD 是否确保 IPsec SA 的活跃性。请参阅 VPN 隧道监控 。
也可以看看
VPN 隧道监控
VPN 监控是 Junos OS 专用的 VPN 隧道监控功能。
虽然失效对等方检测 (DPD) 协议会检查 IKE 对等方的活动状态,但并不能保证底层 VPN 的活动状态。我们没有基于标准的方法来检查底层 VPN 是否运行。VPN 监控是 Junos OS 专用的一种机制,用于检查 IPsec 安全关联的有效性。
VPN 隧道监控的工作原理是什么?
VPN 监控使用 ICMP 数据包中的互联网控制消息协议 (ICMP) 回显请求(或 ping)和签名数据(例如隧道 ID)来确定 VPN 隧道是否已开启。
启用 VPN 监控后,设备将通过 VPN 隧道向对等网关或隧道另一端的指定目标发送 ICMP 回显请求。默认情况下,设备以 10 秒为间隔发送请求,最多连续发送 10 次。如果设备在连续 10 次 ping 后未收到任何回复,则会认为 VPN 已关闭并清除 IPsec 安全关联。
使用以下操作模式监控 VPN 隧道:
-
始终发送模式 — 在此模式下,设备每配置的时间间隔发送一次 VPN 监控数据包,而不考虑隧道中的流量。启用 VPN 监控后,Junos OS 将始终发送模式用作默认模式(如果未指定)。
-
优化模式 — 在此模式下,仅当在此间隔内有传出流量且没有通过隧道的传入流量时,设备才会每配置的时间间隔发送一次 VPN 监控数据包。如果有传入流量通过 VPN 隧道,设备会将该隧道视为活动状态,并停止向对等方发送 ping。您可以使用优化 模式来 节省设备上的资源,因为在此模式下,设备仅在需要确定对等方活跃性时才会发送 ping。发送 ping 还可以激活成本高昂的备份链路,否则这些链路不会被使用。
如果未显式配置优化模式,则设备将在默认的始终发送模式下运行。
也可以看看
配置失效对等方检测
开始之前,请确保已配置 IKE 网关。有关详细信息,请参阅网关(安全性 IKE)。
在本主题中,您将了解如何在防火墙上配置失效对等方检测 (DPD) 协议及其参数。要启用带有 DPD 的设备:
通过运行 IPsec VPN 服务的 iked 进程的防火墙,可以对每个网关的多个对等地址使用 DPD。有关详细信息,请参阅网关(安全性 IKE)。
配置 VPN 隧道监控
开始之前,您必须已有一条 VPN 隧道。
在本主题中,您将了解如何启用 VPN 隧道监控,以及如何设置防火墙上用于 VPN 监控的 ping 数据包的间隔和阈值参数。
如果对等方不接受基于数据包的源或目标 IP 地址的 ping 数据包,VPN 监控可能会导致某些环境中发生隧道抖动。
特定于平台的 VPN 监控 行为
使用 功能资源管理器 确认平台和版本对特定功能的支持。
使用下表查看平台的特定于平台的行为。
|
平台 |
差异 |
|---|---|
|
SRX 系列 |
|