配置 OSPF 身份验证
了解 EX 系列交换机上 OSPF 数据包的 IPsec 身份验证
IP 安全 (IPsec) 提供了一种安全的方式来验证发送方的身份,并对网络设备之间的 IP 版本 4 (IPv4) 流量进行加密。IPsec 为瞻博网络 EX 系列以太网交换机的网络管理员及其用户提供数据机密性、数据完整性、发件人身份验证和防重放服务等优势。
IPsec 是确保 IP 网络上安全专用通信的框架,基于国际工程任务组 (IETF) 制定的标准。IPsec 在开放系统互连 (OSI) 模型的网络层提供安全服务,使系统能够选择所需的安全协议,确定用于安全服务的算法,并实施提供所请求服务所需的任何加密密钥。您可以使用 IPsec 保护一对主机之间、一对安全网关(如交换机)之间或一个安全网关与主机之间的一个或多个路径。
与 OSPF 版本 2 (OSPFv2) 不同,OSPF 版本 3 (OSPFv3) 没有内置身份验证方法,并且依赖 IPsec 来提供此功能。您可以保护特定的 OSPFv3 接口并保护 OSPFv3 虚拟链路。
身份验证算法
身份验证是验证发件人身份的过程。身份验证算法使用共享密钥来验证 IPsec 设备的真实性。瞻博网络 Junos作系统 (Junos OS) 使用以下身份验证算法:
消息摘要 5 (MD5) 使用单向哈希函数将任意长度的消息转换为 128 位的固定长度消息摘要。由于转换过程,通过从生成的消息摘要向后计算原始消息来计算原始消息在数学上是不可行的。同样,更改消息中的单个字符将导致它生成非常不同的消息摘要编号。
为了验证消息是否未被篡改,Junos OS 会将计算出的消息摘要与使用共享密钥解密的消息摘要进行比较。Junos OS 使用 MD5 散列消息验证代码 (HMAC) 变体,可提供额外级别的散列。MD5 可与认证头 (AH) 和封装安全有效负载 (ESP) 一起使用。
安全散列算法 1 (SHA-1) 使用比 MD5 更强的算法。SHA-1 接收长度小于 264 位的消息,并生成 160 位的消息摘要。大型消息摘要可确保数据未更改,并且数据源自正确的源。Junos OS 使用 SHA-1 HMAC 变体,可提供额外的哈希级别。SHA-1 可与 AH、ESP 和互联网密钥交换 (IKE) 配合使用。
加密算法
加密将数据编码为安全格式,以便未经授权的用户无法破译。与身份验证算法一样,共享密钥与加密算法一起使用,以验证 IPsec 设备的真实性。Junos OS 使用以下加密算法:
数据加密标准密码-密钥链接 (DES-CBC) 是一种对称密钥密钥块算法。DES 使用 64 位的密钥大小,其中 8 位用于错误检测,其余 56 位提供加密。DES 对共享密钥执行一系列简单的逻辑运算,包括排列和替换。CBC 从 DES 获取第一个 64 位输出块,将此块与第二个块合并,将其反馈回 DES 算法,并对所有后续块重复此过程。
三重 DES-CBC (3DES-CBC) 是一种类似于 DES-CBC 的加密算法,但它使用三个密钥进行 168 位 (3 x 56 位) 加密,因此提供更强大的加密结果。3DES 的工作原理是使用第一个密钥对块进行加密,使用第二个密钥对块进行解密,并使用第三个密钥重新加密块。
IPsec 协议
IPsec 协议确定应用于交换机保护的数据包的身份验证和加密类型。Junos OS 支持以下 IPsec 协议:
AH — AH 在 RFC 2402 中定义,可为 IPv4 提供无连接完整性和数据源身份验证。它还提供防止重播的保护。AH 对尽可能多的 IP 报头以及上层协议数据进行身份验证。但是,某些 IP 报头字段可能会在传输过程中发生变化。由于发送方可能无法预测这些字段的值,因此无法对其进行 AH 保护。在 IP 报头中,可以在 IPv4 数据包的协议字段中使用值 51 来识别 AH。
ESP — 在 RFC 2406 中定义,ESP 可以提供加密和受限流量机密性或无连接完整性、数据源身份验证和防重放服务。在 IP 报头中,可以在 IPv4 数据包的协议字段中使用值 50 来标识 ESP。
安全关联
IPsec 注意事项是您希望实施的安全关联 (SA) 类型。SA 是在建立 IPsec 关系的设备之间协商的一组 IPsec 规范。这些规范包括建立 IPsec 连接时要使用的身份验证、加密和 IPsec 协议类型的首选项。SA 可以是单向的,也可以是双向的,这取决于网络管理员所做的选择。SA 由安全参数索引 (SPI)、IPv4 或 IPv6 目的地址以及安全协议(AH 或 ESP)标识符进行唯一标识。
IPsec 模式
Junos OS 支持以下 IPsec 模式:
Junos OS 中的 AH 和 ESP 都支持隧道模式。在隧道模式中,SA 和关联协议将应用于隧道 IPv4 或 IPv6 数据包。对于隧道模式 SA,外部 IP 报头指定 IPsec 处理目标,内部 IP 报头指定数据包的最终目的地。安全协议报头显示在外部 IP 报头之后和内部 IP 报头之前。此外,使用 AH 和 ESP 实现隧道模式时,隧道模式也存在细微差异:
对于 AH,外部 IP 报头的一部分以及整个隧道 IP 数据包都会受到保护。
对于 ESP,只有隧道数据包受保护,而外部标头不受保护。
当 SA 的一端是安全网关(如交换机)时,SA 必须使用隧道模式。但是,当流量(例如,SNMP 命令或 BGP 会话)发往交换机时,系统将充当主机。在这种情况下,允许传输模式,因为系统不充当安全网关,也不会发送或接收传输流量。
注意:OSPF v3 控制数据包身份验证不支持隧道模式。
传输模式在两个主机之间提供 SA。在传输模式下,协议主要为上层协议提供保护。传输模式安全协议报头紧跟在 IP 报头和任何选项之后,并且出现在任何更高层协议(例如,TCP 或 UDP)之前。使用 AH 和 ESP 实现传输模式时,传输模式会略有不同:
对于 AH,将保护 IP 报头的选定部分,以及扩展报头的选定部分和 IPv4 报头中的选定选项。
对于 ESP,仅保护更高层的协议,而不保护 IP 报头或 ESP 报头之前的任何扩展报头。
了解 OSPFv2 身份验证
可以对所有 OSPFv2 协议交换进行身份验证,以确保只有可信的路由设备参与自治系统的路由。默认情况下,OSPFv2 身份验证处于禁用状态。
OSPFv3 没有内置的身份验证方法,依靠 IP 安全 (IPsec) 来提供此功能。
您可以启用以下身份验证类型:
-
简单身份验证 — 使用传输数据包中包含的纯文本密码进行身份验证。接收路由设备使用认证密钥(密码)验证数据包。
-
MD5 身份验证 — 使用传输数据包中包含的编码 MD5 校验和进行身份验证。接收路由设备使用认证密钥(密码)验证数据包。
您可以为每个接口定义一个 MD5 密钥。如果在某个接口上启用了 MD5,则仅当 MD5 验证成功时,该接口才会接受路由更新。否则,更新将被拒绝。路由设备仅接受使用为该接口定义的相同密钥标识符 (ID) 发送的 OSPFv2 数据包。
-
IPsec 身份验证(从 Junos OS 8.3 版开始)— 使用手动安全关联 (SA) 对 OSPFv2 接口、假链路的远程端点和 OSPFv2 虚拟链路进行身份验证,以确保路由设备之间的数据包内容安全。实际的 IPsec 身份验证需要单独配置。
注意:您可以将 IPsec 身份验证与 MD5 或简单身份验证一起配置。
以下限制适用于 OSPFv2 的 IPsec 身份验证:
-
不支持动态互联网密钥交换 (IKE) SA。
-
仅支持 IPsec 传输模式。不支持隧道模式。
-
由于仅支持双向手动 SA,因此所有 OSPFv2 对等方都必须配置相同的 IPsec SA。您可以在
[edit security ipsec]层级配置手动双向 SA。 -
您必须为具有相同远程端点地址的所有虚拟链路、OSPF 非广播多路接入 (NBMA) 或点对多点链路上的所有邻接方以及属于广播链路的每个子网配置相同的 IPsec SA。
-
不支持 OSPFv2 对等接口。
-
由于 OSPF 在区域级别执行身份验证,因此区域内的所有路由设备都必须配置相同的身份验证和对应的密码(密钥)。要使 MD5 认证正常工作,接收和发送路由设备必须具有相同的 MD5 密钥。此外,简单密码和 MD5 密钥是互斥的。您只能配置一个简单密码,但可以配置多个 MD5 密钥。
作为安全措施的一部分,您可以更改 MD5 密钥。为此,您可以配置多个 MD5 密钥(每个密钥都具有唯一的密钥 ID),并设置切换到新密钥的日期和时间。每个唯一的 MD5 密钥都有一个唯一的 ID。OSPF 数据包的接收方使用该 ID 来确定用于身份验证的密钥。MD5 认证所需的密钥 ID 指定与 MD5 密钥关联的标识符。
从 Junos OS 22.4R1 版开始,我们支持使用多个活动密钥通告 OSPF MD5 身份验证,以发送每个接口最多两个密钥的数据包。在接口上同时激活多个密钥使得 OSPF 可以从一个密钥平稳过渡到另一个密钥。您可以删除旧密钥,而不会对 OSPF 会话产生任何影响。
从 Junos OS 23.3R1 版和 Junos OS 演化版 23.3R1 版开始,您可以使用密钥串启用 OSPFv2 HMAC-SHA1 身份验证,以验证到达或源自 OSPF 接口的数据包。这可确保 OSPFv2 从一个密钥顺利过渡到另一个密钥,并增强安全性。您可以启用 OSPFv2,以便在所有邻接方切换到最新配置的密钥后,仅使用最新的 MD5 密钥发送经过身份验证的数据包。在此版本之前,我们始终支持使用多个活动 MD5 密钥(每个接口最多限制两个密钥)来播发经过身份验证的 OSPF 数据包。
OSPFv2 的 HMAC-SHA1 身份验证不支持:
-
没有活动钥匙的钥匙串。
-
通过无中断会话从其他现有身份验证类型迁移到钥匙串。
-
从无身份验证迁移到具有无中断会话的钥匙串。
-
键控 MD5 作为钥匙串配置的一部分。
- 启用了带有
delete-if-not-inuse配置语句的多活动 MD5 优化,并且一旦与其邻接方发生身份验证协商,从此设备仅使用活动密钥进行该协商后的邻接方的传输。也就是说,我们不支持回滚到旧密钥。例如:R0 和 R1 配置了密钥 ID 1 作为
delete-if-not-inuse和密钥 ID 2。稍后,如果 R1 配置为删除密钥 ID 2,则 R0 不会回滚到使用两个密钥(密钥 ID 1 和密钥 ID 2)进行传输。 - 钥匙串的活跃度基于绝对时间(挂钟),挂钟在提交后可能会向后移动。这种类型的错误不会在提交时反映出来。因此,当钥匙串在 OSPF 会话上处于活动状态时,务必在所有设备上同步系统时间。
从 Junos OS 演化版 24.2R1 版开始,您可以启用具有 HMAC-SHA2(OSPFv2 HMAC-SHA2)身份验证的 OSPFv2 钥匙串模块,以验证到达或源自 OSPF 接口的数据包。HMAC SHA2 算法包括 RFC 5709 中定义的 HMAC-SHA2-256、HMAC-SHA2-384 和 HMAC-SHA2-512。我们支持这些算法以及 HMAC-SHA2-224。此功能可确保 OSPFv2 从一个密钥顺利过渡到另一个密钥,并增强安全性。我们还支持对虚拟和虚假链路进行 HMAC-SHA1 和 HMAC-SHA2 身份验证。
OSPFv2 的 HMAC-SHA2 身份验证不支持:
-
没有活动钥匙的钥匙串。
-
通过无中断会话从其他现有身份验证类型迁移到钥匙串。
-
从无身份验证迁移到具有无中断会话的钥匙串。
-
不支持钥匙串配置下的 SHA1(无 HMAC)算法。
- 当钥匙串在 OSPF 会话上处于活动状态时,务必在所有设备上同步系统时间。
另见
了解 OSPFv3 身份验证
OSPFv3 没有内置的身份验证方法,依靠 IP 安全 (IPsec) 套件来提供此功能。IPsec 提供源身份验证、数据完整性、机密性、重放保护和源不可否认性等功能。您可以使用 IPsec 保护特定 OSPFv3 接口并保护 OSPFv3 虚拟链路。
您可以将实际的 IPsec 身份验证与 OSPFv3 配置分开配置,然后将 IPsec 应用于 OSPFv3 接口或 OSPFv3 虚拟链路。
OSPFv3 使用 IPsec 协议的 IP 认证头 (AH) 和 IP 封装安全有效负载 (ESP) 部分来验证对等方之间的路由信息。AH 可以提供无连接完整性和数据源身份验证。它还提供防止重播的保护。AH 对尽可能多的 IP 报头以及上层协议数据进行身份验证。但是,某些 IP 报头字段可能会在传输过程中发生变化。由于发送方可能无法预测这些字段的值,因此无法对其进行 AH 保护。ESP 可以提供加密和受限流量机密性或无连接完整性、数据源身份验证和防重放服务。
IPsec 基于安全关联 (SA)。SA 是在建立 IPsec 关系的设备之间协商的一组 IPsec 规范。此单工连接为 SA 携带的数据包提供安全服务。这些规范包括建立 IPsec 连接时要使用的身份验证、加密和 IPsec 协议类型的首选项。SA 用于对一个方向上的特定流量进行加密和身份验证。因此,在正常的双向流量中,流量由一对 SA 保护。必须手动配置要与 OSPFv3 配合使用的 SA,并使用传输模式。必须在 SA 的两端配置静态值。
手动 SA 不需要在对等方之间协商。所有值(包括键)都是静态的,并在配置中指定。手动 SA 静态定义要使用的安全参数索引 (SPI) 值、算法和密钥,并要求两个端点(OSPFv3 对等方)上的配置匹配。因此,每个对等方必须具有相同的配置选项才能进行通信。
加密和身份验证算法的实际选择权留给您的 IPsec 管理员;但是,我们有以下建议:
使用具有 NULL 加密的 ESP 仅可对 OSPFv3 协议标头进行身份验证。使用 NULL 加密时,您选择不对 OSPFv3 报头提供加密。这对于故障排除和调试目的非常有用。有关 NULL 加密的详细信息,请参阅 RFC 2410,NULL 加密算法及其与 IPsec 的配合使用。
将 ESP 与非 NULL 加密结合使用,以实现完全机密性。使用非 NULL 加密,您选择提供加密。有关 NULL 加密的详细信息,请参阅 RFC 2410,NULL 加密算法及其与 IPsec 的配合使用。
使用 AH 对 OSPFv3 协议报头、部分 IPv6 报头和部分扩展报头提供身份验证。
以下限制适用于 OSPFv3 的 IPsec 身份验证:
不支持动态互联网密钥交换 (IKE) 安全关联 (SA)。
仅支持 IPsec 传输模式。在传输模式中,仅对 IP 数据包的有效负载(您传输的数据)进行加密和/或身份验证。不支持隧道模式。
由于仅支持双向手动 SA,因此所有 OSPFv3 对等方都必须配置相同的 IPsec SA。您可以在
[edit security ipsec]层级配置手动双向 SA。您必须为具有相同远程端点地址的所有虚拟链路配置相同的 IPsec SA。
另见
示例:为 OSPFv2 交换配置简单身份验证
此示例说明如何为 OSPFv2 交换启用简单身份验证。
要求
开始之前:
配置设备接口。请参阅 路由设备的 Junos OS 网络接口库 或安全设备的 Junos OS 接口配置指南。
为 OSPF 网络中的设备配置路由器标识符。请参阅 示例:配置 OSPF 路由器标识符。
控制 OSPF 指定的路由器选择。请参阅 示例:控制 OSPF 指定路由器选择
配置单区域 OSPF 网络。请参阅 示例:配置单区域 OSPF 网络。
配置多区域 OSPF 网络。请参阅 示例:配置多区域 OSPF 网络。
概述
简单身份验证使用传输数据包中包含的纯文本密码。接收路由设备使用认证密钥(密码)验证数据包。纯文本密码未加密,可能会被数据包拦截。这种方法是最不安全的,只有在网络安全不是你的目标时才应该使用。
您只能在路由设备上配置一个简单的身份验证密钥(密码)。简单密钥包含 1 到 8 个字符,并且可以包含 ASCII 字符串。如果包含空格,请用引号 (“ ”) 将所有字符括起来。
在此示例中,在区域 0.0.0.0 中指定 OSPFv2 接口 so-0/1/0 ,将身份验证类型设置为 simple-password,并将密钥定义为 PssWd4。
配置
CLI 快速配置
要快速配置简单身份验证,请复制以下命令,删除所有换行符,然后将命令粘贴到 CLI 中。您必须使用相同的身份验证和相应的密码配置区域内的所有路由设备。
[edit] set protocols ospf area 0.0.0.0 interface so-0/1/0 authentication simple-password PssWd4
程序
分步过程
要为 OSPFv2 交换启用简单身份验证,请执行以下作:
创建 OSPF 区域。
[edit] user@host# edit protocols ospf area 0.0.0.0
指定接口。
[edit protocols ospf area 0.0.0.0] user@host# edit interface so-0/1/0
设置身份验证类型和密码。
[edit protocols ospf area 0.0.0.0 interface so-0/1/0.0] user@host# set authentication simple-password PssWd4
如果完成设备配置,请提交配置。
[edit protocols ospf area 0.0.0.0 interface so-0/1/0.0] user@host# commit
注意:在该区域的所有对等 OSPFv2 路由设备上重复此整个配置。
结果
输入 show protocols ospf 命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明以更正配置。
配置密码后,您将看不到密码本身。输出将显示您配置的密码的加密形式。
user@host# show protocols ospf
area 0.0.0.0 {
interface so-0/1/0.0 {
authentication {
simple-password "$9$-3dY4ZUHm5FevX-db2g"; ## SECRET-DATA
}
}
}
示例:为 OSPFv2 交换配置 MD5 身份验证
此示例说明如何为 OSPFv2 交换启用 MD5 认证。
要求
开始之前:
配置设备接口。请参阅 路由设备的 Junos OS 网络接口库 或安全设备的 Junos OS 接口配置指南。
为 OSPF 网络中的设备配置路由器标识符。请参阅 示例:配置 OSPF 路由器标识符。
控制 OSPF 指定的路由器选择。请参阅 示例:控制 OSPF 指定路由器选择
配置单区域 OSPF 网络。请参阅 示例:配置单区域 OSPF 网络。
配置多区域 OSPF 网络。请参阅 示例:配置多区域 OSPF 网络。
概述
MD5 认证使用传输数据包中包含的编码 MD5 校验和。接收路由设备使用认证密钥(密码)验证数据包。
您可以为每个接口定义一个 MD5 密钥。如果在某个接口上启用了 MD5,则仅当 MD5 验证成功时,该接口才会接受路由更新。否则,更新将被拒绝。路由设备仅接受使用为该接口定义的相同密钥标识符 (ID) 发送的 OSPFv2 数据包。
在此示例中,您创建骨干区域(区域 0.0.0.0),指定 OSPFv2 接口 so-0/2/0,将认证类型设置为 md5,然后将认证密钥 ID 定义为 5,密码定义为 PssWd8。
拓扑学
配置
CLI 快速配置
要快速配置 MD5 认证,请复制以下命令并将其粘贴到 CLI 中。
[edit] set protocols ospf area 0.0.0.0 interface so-0/2/0 authentication md5 5 key PssWd8
程序
分步过程
要为 OSPFv2 交换启用 MD5 认证,请执行以下作:
创建 OSPF 区域。
[edit] user@host# edit protocols ospf area 0.0.0.0
指定接口。
[edit protocols ospf area 0.0.0.0] user@host# edit interface so-0/2/0
配置 MD5 认证并设置密钥 ID 和认证密码。
[edit protocols ospf area 0.0.0.0 interface s0-0/2/0.0] user@host# set authentication md5 5 key PssWd8
如果完成设备配置,请提交配置。
[edit protocols ospf area 0.0.0.0 interface s0-0/2/0.0] user@host# commit
注意:在所有对等 OSPFv2 路由设备上重复此整个配置。
结果
输入 show protocols ospf 命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明以更正配置。
配置密码后,您将看不到密码本身。输出将显示您配置的密码的加密形式。
user@host# show protocols ospf
area 0.0.0.0 {
interface so-0/2/0.0 {
authentication {
md5 5 key "$9$pXXhuIhreWx-wQF9puBEh"; ## SECRET-DATA
}
}
}
示例:在 OSPFv2 接口上配置 MD5 密钥的转换
此示例说明如何在 OSPFv2 接口上配置 MD5 密钥的转换。
要求
开始之前:
配置设备接口。请参阅 路由设备的 Junos OS 网络接口库 或安全设备的 Junos OS 接口配置指南。
为 OSPF 网络中的设备配置路由器标识符。请参阅 示例:配置 OSPF 路由器标识符。
控制 OSPF 指定的路由器选择。请参阅 示例:控制 OSPF 指定路由器选择
配置单区域 OSPF 网络。请参阅 示例:配置单区域 OSPF 网络。
配置多区域 OSPF 网络。请参阅 示例:配置多区域 OSPF 网络。
概述
MD5 认证使用传输数据包中包含的编码 MD5 校验和。要使 MD5 认证正常工作,接收和发送路由设备必须具有相同的 MD5 密钥。
您可以为每个接口定义一个 MD5 密钥。如果在某个接口上启用了 MD5,则仅当 MD5 验证成功时,该接口才会接受路由更新。否则,更新将被拒绝。路由设备仅接受使用为该接口定义的相同密钥标识符 (ID) 发送的 OSPFv2 数据包。
为了提高安全性,您可以配置多个 MD5 密钥,每个密钥都具有唯一的密钥 ID,并设置切换到新密钥的日期和时间。OSPF 数据包的接收方使用 ID 来确定用于身份验证的密钥。
在此示例中,您将新密钥配置为在未来三个月的第一天凌晨 12:01 在骨干区域(区域 0.0.0.0)中的 OSPFv2 接口 fe-0/0/1 上生效,并配置以下 MD5 身份验证设置:
md5 — 指定 MD5 认证密钥 ID。密钥 ID 可以设置为介于 0 和 255 之间的任意值,默认值为 0。路由设备仅接受使用为该接口定义的相同密钥 ID 发送的 OSPFv2 数据包。
key — 指定 MD5 密钥。每个键的长度可以是 1 到 16 个字符之间的值。字符可以包含 ASCII 字符串。如果包含空格,请用引号 (“ ”) 将所有字符括起来。
start-time — 指定开始使用 MD5 键的时间。使用此选项,您可以为多个密钥配置平滑转换机制。开始时间与传输相关,但与接收 OSPF 数据包无关。
您必须在该区域的所有设备上设置相同的密码以及转换日期和时间,以便 OSPFv2 邻接保持活动状态。
拓扑学
配置
CLI 快速配置
要在 OSPFv2 接口上快速配置多个 MD5 密钥,请复制以下命令,删除所有换行符,然后将命令粘贴到 CLI 中。
[edit] set protocols ospf area 0.0.0.0 interface fe-0/1/0 authentication md5 1 key $2010HaL set protocols ospf area 0.0.0.0 interface fe-0/1/0 authentication md5 2 key NeWpsswdFEB start-time 2011-02-01.00:01 set protocols ospf area 0.0.0.0 interface fe-0/1/0 authentication md5 3 key NeWpsswdMAR start-time 2011-03-01.00:01 set protocols ospf area 0.0.0.0 interface fe-0/1/0 authentication md5 4 key NeWpsswdAPR start-time 2011-04-01.00:01
程序
分步过程
要在 OSPFv2 接口上配置多个 MD5 密钥:
创建 OSPF 区域。
[edit] user@host# edit protocols ospf area 0.0.0.0
指定接口。
[edit protocols ospf area 0.0.0.0] user@host# edit interface fe-0/1/0
配置 MD5 认证并设置认证密码和密钥 ID。
[edit protocols ospf area 0.0.0.0 interface fe-0/1/0.0] user@host# set authentication md5 1 key $2010HaL
配置新密钥,在 2 月、3 月和 4 月的第一天凌晨 12:01 生效。
您为每个月配置新的身份验证密码和密钥 ID。
对于 2 月份,输入以下内容:
[edit protocols ospf area 0.0.0.0 interface fe-0/1/0.0] user@host# set authentication md5 2 key NeWpsswdFEB start-time 2011-02-01.00:01
对于 3 月份,输入以下内容:
[edit protocols ospf area 0.0.0.0 interface fe-0/1/0.0] user@host# set authentication md5 3 key NeWpsswdMAR start-time 2011-03-01.00:01
对于 4 月份,输入以下内容:
[edit protocols ospf area 0.0.0.0 interface fe-0/1/0.0] user@host# set authentication md5 4 key NeWpsswdAPR start-time 2011-04-01.00:01
如果完成设备配置,请提交配置。
[edit protocols ospf area 0.0.0.0 interface fe-0/1/0.0] user@host# commit
注意:在所有对等 OSPFv2 路由设备上重复此整个配置。
结果
输入 show protocols ospf 命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明以更正配置。
配置密码后,您将看不到密码本身。输出将显示您配置的密码的加密形式。
user@host# show protocols ospf
area 0.0.0.0 {
interface fe-0/1/0.0 {
authentication {
md5 1 key "$9$wzs24JGDjk.2gfTQ3CAp0B1hy"; ## SECRET-DATA
md5 2 key "$9$Q9gz39t1IcML7EcwgJZq.RhSylMN-b4oZDi" start-time "2011-2-1.00:01:00 -0800"; ## SECRET-DATA
md5 3 key "$9$zjo2nCpIRSWXNhSs4ZG.mEcyreW2gaZGjCt" start-time "2011-3-1.00:01:00 -0800"; ## SECRET-DATA
md5 4 key "$9$fQn90OReML1Rds4oiHBIEhSevMLXNVqm" start-time "2011-4-1.00:01:00 -0700"; ## SECRET-DATA
}
}
}
使用 IPsec 保护 OSPFv3 网络(CLI 过程)
OSPF 版本 3 (OSPFv3) 没有内置的身份验证方法,依靠 IP 安全 (IPsec) 来提供此功能。您可以使用 IPsec 保护 EX 系列交换机上的 OSPFv3 接口。
本主题包括:
配置安全关联
配置安全关联 (SA) 时,包括身份验证、加密、方向、模式、协议和安全参数索引 (SPI) 选项。
要配置安全关联,请执行以下作:
保护 OPSFv3 网络
您可以通过将 SA 应用于 OSPFv3 配置来保护 OSPFv3 网络。
要保护 OSPFv3 网络,请执行以下步骤:
[edit protocols ospf3 area area-number interface interface-name] user@switch# set ipsec-sa sa-name
示例:配置OSPF接口IPsec认证
此示例说明如何为 OSPF 接口启用 IP 安全 (IPsec) 身份验证。
要求
开始之前:
配置设备接口。请参阅 路由设备的 Junos OS 网络接口库 或安全设备的 Junos OS 接口配置指南。
为 OSPF 网络中的设备配置路由器标识符。请参阅 示例:配置 OSPF 路由器标识符。
控制 OSPF 指定的路由器选择。请参阅 示例:控制 OSPF 指定路由器选择
配置单区域 OSPF 网络。请参阅 示例:配置单区域 OSPF 网络。
配置多区域 OSPF 网络。请参阅 示例:配置多区域 OSPF 网络。
概述
您可以对 OSPFv2 和 OSPFv3 使用 IPsec 身份验证。您可以单独配置实际的 IPsec 身份验证,并将其应用于适用的 OSPF 配置。
OSPFv2
从 Junos OS 8.3 版开始,您可以使用 IPsec 身份验证对 OSPFv2 接口、虚假链路的远程端点和 OSPFv2 虚拟链路进行身份验证,方法是使用手动安全关联 (SA),以确保数据包内容在路由设备之间是安全的。
您可以将 IPsec 身份验证与 MD5 或简单身份验证一起配置。
要启用 IPsec 身份验证,请执行下列作之一:
对于 OSPFv2 接口,请包含
ipsec-sa name特定接口的语句:interface interface-name ipsec-sa name;
对于远程假链接,请包含
ispec-sa name假链路远程端点的语句:sham-link-remote address ipsec-sa name;
注意:如果第 3 层 VPN 配置具有多个具有相同远程端点 IP 地址的假链路,则必须为所有远程端点配置相同的 IPsec 安全关联。您可以在
[edit routing-instances routing-instance-name instance-type]层级配置第 3 层 VPN。有关第 3 层 VPN 的详细信息,请参阅 适用于路由设备的 Junos OS VPN 库。对于虚拟链接,请包含
ipsec-sa name特定虚拟链接的语句:virtual-link neighbor-id router-id transit-area area-id ipsec-sa name;
OSPFv3
OSPFv3 没有内置的身份验证方法,依靠 IPsec 来提供此功能。您可以使用 IPsec 身份验证来保护 OSPFv3 接口,并通过使用手动 SA 来保护 OSPFv3 虚拟链路,以确保路由设备之间的数据包内容是安全的。
若要应用身份验证,请执行下列作之一:
对于 OSPFv3 接口,请包含
ipsec-sa name特定接口的语句:interface interface-name ipsec-sa name;
对于虚拟链接,请包含
ipsec-sa name特定虚拟链接的语句:virtual-link neighbor-id router-id transit-area area-id ipsec-sa name;
Tasks to Complete for Both OSPFv2 and OSPFv3
在此示例中,您将执行以下任务:
配置 IPsec 身份验证。为此,请定义一个名为 sa1 的手动 SA,并指定处理方向、用于保护 IP 流量的协议、安全参数索引 (SPI) 以及身份验证算法和密钥。
在
[edit security ipsec security-association sa-name mode]层次结构级别配置以下选项:transport — 指定传输模式。当通信终结点和加密终结点相同时,此模式可保护流量。IP 数据包的数据部分已加密,但 IP 报头未加密。
在
[edit security ipsec security-association sa-name manual direction]层次结构级别配置以下选项:双向 — 定义 IPsec 处理方向。通过指定 bidrectional,将在两个方向上使用您配置的相同算法、密钥和安全参数索引 (SPI) 值。
在
[edit security ipsec security-association sa-name manual direction bidirectional]层次结构级别配置以下选项:协议 — 定义手动 SA 用于保护 IP 流量的 IPsec 协议。您可以指定认证头 (AH) 或封装安全有效负载 (ESP)。如果指定 AH(在此示例中执行的作),则无法配置加密。
spi — 为手动 SA 配置 SPI。SPI 是一个任意值,用于唯一标识要在接收主机上使用的 SA。发送主机使用 SPI 来识别和选择用于保护每个数据包的 SA。接收主机使用 SPI 来识别和选择用于解密数据包的加密算法和密钥。在此示例中,指定 256。
身份验证 — 配置身份验证算法和密钥。 algorithm 选项指定用于对数据包数据进行身份验证的散列算法。在此示例中,指定 hmac-md5-96,它将生成 128 位摘要。 密钥 选项指示身份验证密钥的类型。在此示例中,您指定 ascii-text-key,该密钥为 hmac-md5-96 算法的 16 个 ASCII 字符。
在主干区域(区域 0.0.0.0)中的 OSPF 接口 so-0/2/0.0 上启用 IPsec 身份验证,方法是添加您在
[edit security ipsec]层次结构级别配置的手动 SA sa1 的名称。
拓扑学
配置
配置安全关联
CLI 快速配置
要在 OSPF 接口上快速配置用于 IPsec 身份验证的手动 SA,请复制以下命令,删除所有换行符,然后将命令粘贴到 CLI 中。
[edit] set security ipsec security-association sa1 set security ipsec security-association sa1 mode transport set security ipsec security-association sa1 manual direction bidirectional set security ipsec security-association sa1 manual direction bidirectional protocol ah set security ipsec security-association sa1 manual direction bidirectional spi 256 set security ipsec security-association sa1 manual direction bidirectional authentication algorithm hmac-md5-96 key ascii-text 123456789012abcd
分步过程
要配置要在 OSPF 接口上使用的手动 SA,请执行以下作:
指定 SA 的名称。
[edit] user@host# edit security ipsec security-association sa1
指定 SA 的模式。
[edit security ipsec security-association sa1 ] user@host# set mode transport
配置手动 SA 的方向。
[edit security ipsec security-association sa1 ] user@host# set manual direction bidirectional
配置要使用的 IPsec 协议。
[edit security ipsec security-association sa1 ] user@host# set manual direction bidirectional protocol ah
配置 SPI 的值。
[edit security ipsec security-association sa1 ] user@host# set manual direction bidirectional spi 256
配置身份验证算法和密钥。
[edit security ipsec security-association sa1 ] user@host# set manual direction bidirectional authentication algorithm hmac-md5-96 key ascii-text 123456789012abcd
如果完成设备配置,请提交配置。
[edit security ipsec security-association sa1 ] user@host# commit
注意:在所有对等 OSPF 路由设备上重复整个配置。
结果
输入 show security ipsec 命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明以更正配置。
配置密码后,您将看不到密码本身。输出将显示您配置的密码的加密形式。
user@host# show security ipsec
security-association sa1 {
mode transport;
manual {
direction bidirectional {
protocol ah;
spi 256;
authentication {
algorithm hmac-md5-96;
key ascii-text "$9$AP5Hp1RcylMLxSygoZUHk1REhKMVwY2oJx7jHq.zF69A0OR"; ## SECRET-DATA
}
}
}
}
开启OSPF接口IPsec认证
CLI 快速配置
要快速将用于 IPsec 身份验证的手动 SA 应用于 OSPF 接口,请复制以下命令并将其粘贴到 CLI 中。
[edit] set protocols ospf area 0.0.0.0 interface so-0/2/0 ipsec-sa sa1
分步过程
要为 OSPF 接口启用 IPsec 身份验证,请执行以下作:
创建 OSPF 区域。
注意:要指定 OSPFv3,请在
[edit protocols]层次结构级别包含语ospf3句。[edit] user@host# edit protocols ospf area 0.0.0.0
指定接口。
[edit protocols ospf area 0.0.0.0] user@host# edit interface so-0/2/0
应用 IPsec 手动 SA。
[edit protocols ospf area 0.0.0.0 interface so-0/2/0.0] user@host# set ipsec-sa sa1
如果完成设备配置,请提交配置。
[edit protocols ospf area 0.0.0.0 interface so-0/2/0.0] user@host# commit
注意:在所有对等 OSPF 路由设备上重复整个配置。
结果
输入 show protocols ospf 命令以确认您的配置。如果输出未显示预期的配置,请重复此示例中的说明以更正配置。
user@host# show protocols ospf
area 0.0.0.0 {
interface so-0/2/0.0 {
ipsec-sa sa1;
}
}
要确认您的 OSPFv3 配置,请输入 show protocols ospf3 命令。
验证
确认配置工作正常。
验证 IPsec 安全关联设置
目的
验证配置的 IPsec 安全关联设置。验证以下信息:
“安全关联”字段显示已配置的安全关联的名称。
SPI 字段显示您配置的值。
“模式”字段显示传输模式。
“类型”字段将 manual 显示为安全关联的类型。
行动
在作模式下,输入 show ipsec security-associations 命令。