06-IPsec配置
本章节下载: 06-IPsec配置 (1.34 MB)
IPsec(IP Security,IP安全)是IETF制定的三层隧道加密协议,它为互联网上传输的数据提供了高质量的、基于密码学的安全保证,是一种传统的实现三层VPN(Virtual Private Network,虚拟专用网络)的安全技术。IPsec通过在特定通信方之间(例如两个安全网关之间)建立“通道”,来保护通信方之间传输的用户数据,该通道通常称为IPsec隧道。
根据组网方式不同,可以将IPsec分为点到点IPsec和点到多点IPsec,具体介绍如下:
· 点到点IPsec
点到点IPsec通过在两台设备之间建立一条专用的IPsec隧道,实现两个局域网(如总部与分支机构)之间的安全通信,确保数据在传输过程中经过加密和完整性保护。
图1-1 点到点IPsec示意图
· 点到多点IPsec
点到多点IPsec允许一个中心设备(如总部网关)同时与多个远端设备(如多个分支机构)建立独立的IPsec隧道,实现中心局域网与多个分支局域网之间的安全通信,确保数据在传输过程中经过加密和完整性保护。
图1-2 点到多点IPsec示意图
IPsec提供了两大安全机制:认证和加密。认证机制使IP通信的数据接收方能够确认数据发送方的真实身份以及数据在传输过程中是否遭篡改。加密机制通过对数据进行加密运算来保证数据的机密性,以防数据在传输过程中被窃听。
IPsec为IP层的数据报文提供的安全服务具体包括以下几种:
· 数据机密性(Confidentiality):发送方通过网络传输用户报文前,IPsec对报文进行加密。
· 数据完整性(Data Integrity):接收方对发送方发送来的IPsec报文进行认证,以确保数据在传输过程中没有被篡改。
· 数据来源认证(Data Origin Authentication):接收方认证发送IPsec报文的发送端是否合法。
· 抗重放(Anti-Replay):接收方可检测并拒绝接收过时或重复的IPsec报文。
IPsec可为IP层上的数据提供安全保护,其优点包括如下几个方面:
· 支持IKE(Internet Key Exchange,互联网密钥交换),可实现密钥的自动协商功能,减少了密钥协商的开销。可以通过IKE建立和维护SA(Security Association,安全联盟),简化了IPsec的使用和管理。
· 所有使用IP协议进行数据传输的应用系统和服务都可以使用IPsec,而不必对这些应用系统和服务本身做任何修改。
· 对数据的加密是以数据包为单位的,而不是以整个数据流为单位,这不仅灵活而且有助于进一步提高IP数据包的安全性,可以有效防范网络攻击。
SA(Security Association,安全联盟)是IPsec的基础,也是IPsec的本质。IPsec在两个端点之间提供安全通信,这类端点被称为IPsec对等体。SA是IPsec对等体间对某些要素的约定,例如,使用的安全协议(AH、ESP或两者结合使用)、协议报文的封装模式(传输模式或隧道模式)、认证算法(HMAC-MD5、HMAC-SHA1)、加密算法(DES、3DES、AES)、特定流中保护数据的共享密钥以及密钥的生存时间等。
SA是单向的,在两个对等体之间的双向通信,最少需要两个SA来分别对两个方向的数据流进行安全保护。同时,如果两个对等体希望同时使用AH和ESP来进行安全通信,则每个对等体都会针对每一种协议来构建一个独立的SA。
SA由一个三元组来唯一标识,这个三元组包括SPI(Security Parameter Index,安全参数索引)、目的IP地址和安全协议号。其中,SPI是用于标识SA的一个32比特的数值,它在AH和ESP头中传输。
SA有手工配置和IKE自动协商两种生成方式:
· 手工方式:通过命令行配置SA的所有信息。该方式的配置比较复杂,而且不支持一些高级特性(例如定时更新密钥),优点是可以不依赖IKE而单独实现IPsec功能。该方式主要用于需要安全通信的对等体数量较少,或小型静态的组网环境中。
· IKE自动协商方式:对等体之间通过IKE协议自动协商生成SA,并由IKE协议维护该SA。该方式的配置相对比较简单,扩展能力强。在中、大型的动态网络环境中,推荐使用IKE自动协商建立SA。
手工方式建立的SA永不老化。通过IKE协商建立的SA具有生存时间,当生存时间到达时,旧的SA会被删除。
IKE协商建立的SA在生存时间到达前会提前协商一个新的SA来替换旧的SA。从SA建立到启动新SA协商的这段时间是软超时时间。缺省情况下,系统会基于SA的生存时间使用默认算法计算一个软超时时间。系统允许配置一个软超时缓冲来控制软超时时间,计算公式为:软超时时间=生存时间-软超时缓冲。
IKE协商建立的SA有两种形式的生存时间:
· 基于时间的生存时间,定义了一个SA从建立到删除的时间;
· 基于流量的生存时间,定义了一个SA允许处理的最大流量。
可同时存在基于时间和基于流量两种方式的SA生存时间,只要其中一种到达,就会删除旧的SA
IPsec协议不是一个单独的协议,它为IP层上的网络数据安全提供了一整套安全体系结构,包括安全协议AH(Authentication Header,认证头)和ESP(Encapsulating Security Payload,封装安全载荷)、IKE(Internet Key Exchange,互联网密钥交换)以及用于网络认证及加密的一些算法等。其中,AH协议和ESP协议用于提供安全服务,IKE协议用于密钥交换。关于IKE的详细介绍请参见“安全配置指导”中的“IKE” ,本节不做介绍。
IPsec策略和IPsec安全框架用于在两个对等体之间建立IPsec隧道,保护两个对等体之间需要被安全防护的报文。
一个IPsec策略是若干具有相同名字、不同顺序号的IPsec策略表项的集合,IPsec策略被应用在接口上,用于控制对等体之间建立IPsec隧道,由ACL定义要保护的数据范围。IPsec策略主要定义了以下内容:
· 要保护的数据流的范围:由ACL定义。
· 对数据流实施何种保护:由IPsec安全提议定义。
· IPsec SA的生成方式:手工方式、IKE协商方式。
· 保护路径的起点或终点:即对等体的IP地址。
在同一个IPsec策略中,顺序号越小的IPsec策略表项优先级越高。当从一个接口发送数据时,接口将按照顺序号从小到大的顺序逐一匹配引用的IPsec策略中的每一条安全策略表项。如果数据匹配上了某一条安全策略表项引用的ACL,则停止匹配,并对其使用当前这条安全策略表项进行处理,即根据已经建立的IPsec SA或者触发IKE协商生成的IPsec SA对报文进行封装处理;如果数据与所有安全策略表项引用的ACL都不匹配,则直接被正常转发,IPsec不对数据加以保护。
应用了IPsec策略的接口收到数据报文时,对于目的地址是本机的IPsec报文,根据报文头里携带的SPI查找本地的IPsec SA,并根据匹配的IPsec SA对报文进行解封装处理;解封装后的IP报文若能与ACL的permit规则匹配上则采取后续处理,否则被丢弃。
IPsec策略除了可以应用到串口、以太网接口等实际物理接口上之外,还能够应用到Tunnel、Virtual Template等虚接口上,对GRE、L2TP等流量进行保护。
IPsec安全框架(IPsec Profile)与IPsec策略类似,但不需要使用ACL指定要保护的数据流的范围。一个IPsec安全框架由名字唯一确定。
GRE over IPsec是一种结合了通用路由封装(GRE)与IP安全协议(IPsec)优势的混合型隧道技术,主要用于在IPsec加密隧道中传输原本无法直接承载的通信类型,如组播、广播及非IP数据包。该方案通过两层封装机制,在保持数据机密性与完整性的同时,扩展了加密隧道的适用范围。
在实际应用中,GRE over IPsec常用于企业跨站点互联、远程分支机构接入以及需要安全传输组播业务(如IPTV等)的场景,为复杂网络环境提供了灵活且可靠的安全隧道解决方案。
图1-3 GRE over IPsec隧道示意图
GRE over IPsec的运行机制主要分为两个阶段:GRE封装与IPsec封装。
(1) 首先,原始数据(如组播、广播或非IP报文)进入隧道时,会先由GRE协议进行封装,为其添加一个新的IP头部,从而将原始数据转换为一个标准的单播IP数据包。这个新增的IP头部的源地址和目的地址分别对应 GRE 隧道两端的接口地址。
(2) 随后,该经过GRE封装的IP数据包会被提交给IPsec协议进行处理。IPsec会依据其安全策略,对GRE报文进行加密和完整性认证,并添加相应的IPsec头部。在此过程中,可以选择两种封装模式:隧道模式会为报文再添加一个全新的外层IP头部;而传输模式则仅在原有GRE-IP头部之后插入IPsec头部,不新增额外的IP层。
(3) 最终,这个依次经过GRE和IPsec处理的报文,其受IPsec保护的数据流范围,正是从GRE隧道的源端地址到目的端地址之间的整个通信过程,从而确保了端到端传输的私密性与可靠性。
图1-4 GRE over IPsec报文封装示意图
由于GRE封装已经引入了一个额外的IP头,若再使用IPsec隧道模式,会因添加第二个外层IP头而导致报文总长度增加。这更容易触发网络路径上的分片操作,可能影响传输性能。因此,在GRE over IPsec应用场景中,通常推荐采用IPsec传输模式,以避免不必要的开销和潜在的分片问题。
在GRE over IPsec的运行机制中,IPsec所保护的对象是经过GRE封装后的完整IP数据包。因此在通过ACL所定义需要保护的数据流非原始的用户数据流,而是以GRE隧道两端点地址为标识的数据流。具体而言,ACL中指定的源和目的网段,应分别设置为GRE隧道起点和终点所对应接口的IP地址。这两个地址即是建立IPsec安全联盟的两端网关的接口地址。
IPsec over GRE是一种将加密与隧道技术相结合的网络通信方案,其核心特点在于先加密后封装的处理流程。与GRE over IPsec不同,该技术首先通过IPsec对原始数据(如单播IP报文)进行加密和认证,随后再由GRE协议对已加密的IPsec报文进行外层封装,使其能够在预先建立的GRE隧道中传输。
IPsec over GRE的一个典型应用场景是在不改变现有网络拓扑的情况下增强通信安全。例如,若两个站点之间已通过GRE隧道实现互联,后期希望提升数据保密性,则可在维持原有GRE隧道配置的基础上,叠加IPsec加密功能,形成IPsec over GRE的部署模式。这种做法的优点在于无需调整已有路由与隧道架构,实施相对简便。
IPsec over GRE也存在一定局限性,例如通常不支持穿越网络地址转换(NAT)设备,且在加密后额外增加的GRE封装头部可能略微增加带宽开销。同时,由于IPsec本身不支持对组播或广播等流量的直接处理,因此IPsec over GRE隧道同样无法承载组播数据(如视频会议流或某些路由协议报文)。因此,该方案更适用于组播需求不高、且网络路径中无NAT干扰的点对点安全互联环境。
图1-5 IPsec over GRE隧道示意图
L2TP over IPsec是一种集成了二层隧道协议与IP安全协议优势的虚拟专用网络技术,其工作流程遵循“先隧道封装、后加密保护”的顺序。该方案首先利用L2TP对用户数据进行封装,建立从客户端到服务端的逻辑隧道,并在此过程中完成用户身份认证与私有地址分配;随后,再通过IPsec协议对已封装的L2TP报文实施加密和完整性校验,从而确保传输过程的机密性与防篡改能力。
在封装结构上,L2TP会添加一个以隧道起点与终点地址为源目的IP的外层IP头部;IPsec则在此基础上施加安全封装,其保护范围覆盖整个L2TP隧道所承载的数据流。为提高传输效率并避免因封装层数过多导致报文分片,实践中通常建议采用IPsec的传输模式而非隧道模式,以减少额外的IP头部开销。
L2TP over IPsec主要应用于企业远程接入场景,例如分支机构或移动用户安全访问总部内部网络。通过结合L2TP在用户管理与地址分配方面的灵活性,以及IPsec在数据加密方面的可靠性,L2TP over IPsec能够在公共互联网上构建兼具身份管控与通信安全的企业级远程访问通道。
图1-6 L2TP over IPsec隧道示意图
与IPsec相关的协议规范有:
· RFC 2401:Security Architecture for the Internet Protocol
· RFC 2402:IP Authentication Header
· RFC 2406:IP Encapsulating Security Payload
通常情况下,由于IKE协议采用UDP的500端口进行通信,IPsec的AH和ESP协议分别使用51或50号协议来工作,因此为保障IKE和IPsec的正常运行,需要确保应用了IKE和IPsec配置的接口上没有禁止掉属于以上端口和协议的流量。
通过IPsec策略方式建立的IPsec隧道不支持保护组播流量,若需要保护组播流量,请配置基于IPsec隧道接口方式建立IPsec隧道。
IPsec的配置过程遵循一套逻辑清晰、分步实施的配置框架,其核心步骤可归纳为四个关键环节:
(1) 定义需保护的数据流:首先明确需要加密传输的通信对象,可以通过配置ACL或基于路由的方式来实现。该步骤确定IPsec隧道将对哪些源/目的地址、协议或端口范围的流量实施安全保护。
(2) 设定安全保护方法:通过IPsec安全提议和IKE profile方式定义保护数据流的方法。
(3) 关联保护对象与保护方法:通过创建IPsec策略或IPsec安全框架,将第一步定义的待保护数据流与第二步设定的安全方法进行绑定,形成一个完整的安全策略条目。
(4) 使IPsec保护生效:将配置好的IPsec策略或安全框架应用到具体的物理接口、逻辑接口或IPv6路由协议中,对符合要求的指定流量按预定规则进行加密传输。
图1-7 IPsec配置流程图
IPsec安全提议是IPsec策略的一个组成部分,它用于定义IPsec需要使用的安全协议、加密/认证算法以及封装模式,为IPsec协商SA提供各种安全参数。
IPsec包括AH和ESP两种安全协议,它们定义了对IP报文的封装格式以及可提供的安全服务。
· AH协议(IP协议号为51)定义了AH头在IP报文中的封装格式,如图1-8所示。AH可提供数据来源认证、数据完整性校验和抗重放功能,它能保护报文免受篡改,但不能防止报文被窃听,适合用于传输非机密数据。AH使用的认证算法有HMAC-MD5和HMAC-SHA1等。AH协议不支持NAT穿越功能。
· ESP协议(IP协议号为50)定义了ESP头和ESP尾在IP报文中的封装格式,如图1-8所示。ESP可提供数据加密、数据来源认证、数据完整性校验和抗重放功能。与AH不同的是,ESP将需要保护的用户数据进行加密后再封装到IP包中,以保证数据的机密性。ESP使用的加密算法有DES、3DES、AES等。同时,作为可选项,ESP还可以提供认证服务,使用的认证算法有HMAC-MD5和HMAC-SHA1等。虽然AH和ESP都可以提供认证服务,但是AH提供的认证服务要强于ESP。
在实际使用过程中,可以根据具体的安全需求同时使用这两种协议或仅使用其中的一种。设备支持的AH和ESP联合使用的方式为:先对报文进行ESP封装,再对报文进行AH封装。
IPsec支持两种封装模式:传输模式和隧道模式。
该模式下的安全协议主要用于保护上层协议报文,仅传输层数据被用来计算安全协议头,生成的安全协议头以及加密的用户数据(仅针对ESP封装)被放置在原IP头后面。若要求端到端的安全保障,即数据包进行安全传输的起点和终点为数据包的实际起点和终点时,才能使用传输模式。如图1-9所示,通常传输模式用于保护两台主机之间的数据。
该模式下的安全协议用于保护整个IP数据包,用户的整个IP数据包都被用来计算安全协议头,生成的安全协议头以及加密的用户数据(仅针对ESP封装)被封装在一个新的IP数据包中。这种模式下,封装后的IP数据包有内外两个IP头,其中的内部IP头为原有的IP头,外部IP头由提供安全服务的设备添加。在安全保护由设备提供的情况下,数据包进行安全传输的起点或终点不为数据包的实际起点和终点时(例如安全网关后的主机),则必须使用隧道模式。如图1-10所示,通常隧道模式用于保护两个安全网关之间的数据。
不同的安全协议及组合在隧道和传输模式下的数据封装形式如图1-11所示。
IPsec使用的认证算法主要是通过杂凑函数实现的。杂凑函数是一种能够接受任意长度的消息输入,并产生固定长度输出的算法,该算法的输出称为消息摘要。IPsec对等体双方都会计算一个摘要,接收方将发送方的摘要与本地的摘要进行比较,如果二者相同,则表示收到的IPsec报文是完整未经篡改的,以及发送方身份合法。目前,IPsec使用基于HMAC(Hash-based Message Authentication Code,基于散列的消息鉴别码)的认证算法。HMAC认证算法包括HMAC-MD5和HMAC-SHA。其中,HMAC-MD5算法的计算速度快,而HMAC-SHA算法的安全强度高。
IPsec使用的加密算法属于对称密钥系统,这类算法使用相同的密钥对数据进行加密和解密。目前设备的IPsec使用的加密算法包括:
· DES:使用56比特的密钥对一个64比特的明文块进行加密。
· 3DES:使用三个56比特(共168比特)的密钥对明文块进行加密。
· AES:使用128比特、192比特或256比特的密钥对明文块进行加密。
这些加密算法的安全性由高到低依次是:AES、3DES、DES,安全性高的加密算法实现机制复杂,运算速度慢。
IPsec的认证和加/解密处理在设备上既可以通过软件实现,也可以通过硬件加密引擎实现。通过软件实现的IPsec,由于复杂的加密/解密、认证算法会占用大量的CPU资源,将会影响设备整体处理效率;通过硬件加密引擎实现的IPsec,由于复杂的算法处理由硬件完成,因此可以提高设备的处理效率。
若设备支持通过硬件加密引擎进行认证和加/解密处理,则设备会首先将需要处理的数据发送给硬件加密引擎,由硬件加密引擎对数据进行处理之后再发送回设备,最后由设备进行转发。
关于加密引擎的详细介绍请参见“安全配置指导”中的“加密引擎”。
· 可对IPsec安全提议进行修改,但对已协商成功的IPsec SA,新修改的安全提议并不起作用,即仍然使用原来的安全提议,只有新协商的SA使用新的安全提议。若要使修改对已协商成功的IPsec SA生效,则需要执行reset ipsec sa命令。
· 传输模式必须应用于数据流的源地址和目的地址与IPsec隧道两端地址相同的情况下。
· IKEv1协商时发起方的PFS强度必须大于或等于响应方的PFS强度,否则协商会失败。IKEv2不受该限制。不配置PFS特性的一端,按照对端的PFS特性要求进行IKE协商。
· 可以使用命令为一个安全协议指定多个认证或者加密算法,算法优先级以配置顺序为准。
· 以下这些算法只适用于IKEv2协商:
表1-1 IKEv2协商适用的算法
|
参数 |
取值 |
|
加密算法 |
aes-ctr-128/aes-ctr-192/aes-ctr-256 camellia-cbc-128/camellia-cbc-192/camellia-cbc-256 gmac-128/gmac-192/gmac-256/ gcm-128/gcm-192/gcm-256 |
|
认证算法 |
aes-xcbc-mac |
(1) 进入系统视图。
system-view
(2) 创建IPsec安全提议,并进入IPsec安全提议视图。
ipsec transform-set transform-set-name
(3) 配置IPsec安全提议采用的安全协议。
protocol { ah | ah-esp | esp }
缺省情况下,采用ESP安全协议。
(4) 配置协议(esp或ah-esp)采用的加密算法。
esp encryption-algorithm { 3des-cbc | aes-cbc-128 | aes-cbc-192 | aes-cbc-256 | aes-ctr-128 | aes-ctr-192 | aes-ctr-256 | camellia-cbc-128 | camellia-cbc-192 | camellia-cbc-256 | des-cbc | gmac-128 | gmac-192 | gmac-256 | gcm-128 | gcm-192 | gcm-256 | null } *
缺省情况下,ESP协议没有采用任何加密算法。
非ESP协议,请忽略本步骤。
(5) 配置协议(esp或ah-esp)采用的认证算法。
esp authentication-algorithm { aes-xcbc-mac | md5 | sha1 | sha256 | sha384 | sha512 } *
缺省情况下,ESP协议没有采用任何认证算法。
非ESP协议,请忽略本步骤。
aes-xcbc-mac认证算法仅适用于IKEv2协商。
(6) 配置协议(ah或ah-esp)采用的认证算法。
ah authentication-algorithm { aes-xcbc-mac | md5 | sha1 | sha256 | sha384 | sha512 } *
缺省情况下,AH协议没有采用任何认证算法。
采用ESP协议时,请忽略本步骤。
aes-xcbc-mac认证算法仅适用于IKEv2协商。
(7) 配置安全协议对IP报文的封装模式。
encapsulation-mode { transport | tunnel }
缺省情况下,安全协议采用隧道模式对IP报文进行封装。
(8) (可选)配置使用IPsec策略发起协商时使用PFS特性。
pfs { dh-group1 | dh-group2 | dh-group5 | dh-group14 | dh-group15 | dh-group16 | dh-group18 | dh-group19 | dh-group20 | dh-group21 | dh-group23 | dh-group24 }
缺省情况下,使用IPsec策略发起协商时不使用PFS特性。
有关PFS(Perfect Forward Secrecy,完善的前向安全性)功能的详细介绍请参见“安全配置指导”中的“IKE”。
(9) (可选)开启ESN功能。
esn enable [ both ]
缺省情况下,ESN功能处于关闭状态。
本功能仅适用于IKEv2协商的IPsec SA。
在传输模式下,设备通过ACL来识别由IPsec隧道保护的流量时,受保护的流量只能是源地址或目的地址为本机的报文。例如:可配置IPsec隧道对设备发送给日志服务器的日志信息进行保护。ACL中定义的匹配转发流量的规则不生效,IPsec不会对设备转发的任何数据流和语音流进行保护。
将引用了ACL的IPsec策略应用到接口上后,该接口上匹配ACL的报文将会受到IPsec保护。这里的接口包括串口、以太网接口等实际物理接口,以及Tunnel、Virtual Template等虚接口。
具体的保护机制如下:
· 只要接口发送的报文与该接口上应用的IPsec策略中的ACL的permit规则匹配,就会受到出方向IPsec SA的保护并进行封装处理。
· 接口接收到目的地址是本机的IPsec报文时,首先根据报文头里携带的SPI查找本地的入方向IPsec SA,由对应的入方向IPsec SA进行解封装处理。解封装后的IP报文若能与ACL的permit规则匹配上则采取后续处理,否则被丢弃。
目前,设备支持的数据流的保护方式包括以下三种:
· 标准方式:一条IPsec隧道保护一条数据流。ACL中的每一个规则对应的数据流分别由一条单独创建的IPsec隧道来保护。缺省采用该方式。
· 聚合方式:一条IPsec隧道保护ACL中定义的所有数据流。ACL中的所有规则对应的数据流只会由一条创建的IPsec隧道来保护。该方式仅用于和老版本的设备互通。
· 主机方式:一条IPsec隧道保护一条主机到主机的数据流。ACL中的每一个规则对应的不同主机之间的数据流分别由一条单独创建的IPsec隧道来保护。这种方式下,受保护的网段之间存在多条数据流的情况下,将会消耗更多的系统资源。
IPsec隧道保护匹配ACL的报文配置任务如下:
(1) 配置IPsec安全提议
(2) 配置ACL
(3) 配置IPsec策略
请选择以下一项任务进行配置:
(4) 在接口上应用IPsec策略
(5) (可选)配置IPsec隧道保护匹配ACL的报文的辅助功能
(6) (可选)配置IPsec日志和告警功能
有关配置IPsec安全提议的具体步骤,请参见配置IPsec安全提议章节中的具体内容。
IPsec通过配置ACL来定义需要保护的数据流。在IPsec应用中,ACL规则中的permit关键字表示与之匹配的流量需要被IPsec保护,而deny关键字则表示与之匹配的流量不需要保护。一个ACL中可以配置多条规则,首个与数据流匹配上的规则决定了对该数据流的处理方式。
在IPsec策略中定义的ACL既可用于过滤接口入方向数据流,也可用于过滤接口出方向数据流。
· 设备出入方向的数据流都使用IPsec策略中定义的ACL规则来做匹配依据。具体是,出方向的数据流正向匹配ACL规则,入方向的数据流反向匹配ACL规则。例如,对于应用于IPsec策略中的某ACL规则:rule 0 permit ip source 1.1.1.0 0.0.0.255 destination 2.2.2.0 0.0.0.255,设备使用其正向过滤出方向上从1.1.1.0/24网段发往2.2.2.0/24网段的数据流,反向过滤入方向上从2.2.2.0/24网段发往1.1.1.0/24网段的数据流。
· 在出方向上,与ACL的permit规则匹配的报文将被IPsec保护,未匹配上任何规则或与deny规则匹配上的报文将不被IPsec保护。
· 在入方向上,与ACL的permit规则匹配上的未被IPsec保护的报文将被丢弃;目的地址为本机的被IPsec保护的报文将被进行解封装处理。缺省情况下解封装后的IP报文若能与ACL的permit规则匹配上则采取后续处理,否则被丢弃。若解封装后IPsec报文的ACL检查功能处于关闭状态,则解封装后的IP报文不与ACL匹配,直接进行后续处理。
需要注意的是:
· 仅对确实需要IPsec保护的数据流配置permit规则,避免盲目地使用关键字any。这是因为,在一个permit规则中使用any关键字就代表所有指定范围上出方向的流量都需要被IPsec保护,所有对应入方向上被IPsec保护的报文将被接收并处理,入方向上未被IPsec保护的报文都将被丢弃。这种情况下,一旦入方向收到的某流量是未被IPsec保护的,那么该流量就会被丢弃,这会造成一些本不需要IPsec处理的流量丢失,影响正常的业务传输。
· 当一个安全策略下有多条优先级不同的安全策略表项时,合理使用deny规则。避免本应该与优先级较低的安全策略表项的ACL permit规则匹配而被IPsec保护的出方向报文,因为先与优先级较高的安全策略表项的ACL deny规则匹配上,而没有被IPsec保护,继而在接收端被丢弃。
下面是一个deny规则的错误配置示例。Device A和Device B上分别配置如下所示的IPsec策略,当Device A连接的1.1.2.0/24网段用户访问Device B连接的3.3.3.0/24网段时,报文在Device A的应用了IPsec策略testa的出接口上优先与顺序号为1的安全策略表项匹配,并匹配上了IPv4 ACL 3000的rule 1,因此Device A认为它不需要IPsec保护,而未进行IPsec封装。该报文到达Device B后,在应用了IPsec策略testb的入接口上与IPv4 ACL 3001的rule 0匹配,并被判断为应该受IPsec保护但未被保护的报文而丢弃。
Device A上的关键配置如下:
acl advanced 3000
rule 0 permit ip source 1.1.1.0 0.0.0.255 destination 2.2.2.0 0.0.0.255
rule 1 deny ip
acl advanced 3001
rule 0 permit ip source 1.1.2.0 0.0.0.255 destination 3.3.3.0 0.0.0.255
rule 1 deny ip
#
ipsec policy testa 1 isakmp <---优先级高的安全策略表项
security acl 3000
ike-profile aa
transform-set 1
#
ipsec policy testa 2 isakmp <---优先级低的安全策略表项
security acl 3001
ike-profile bb
transform-set 1
Device B上的关键配置如下:
acl advanced 3001
rule 0 permit ip source 3.3.3.0 0.0.0.255 destination 1.1.2.0 0.0.0.255
rule 1 deny ip
#
ipsec policy testb 1 isakmp
security acl 3001
ike-profile aa
transform-set 1
为保证Device A连接的1.1.2.0/24网段用户访问Device B连接的3.3.3.0/24网段的报文可被正确处理,建议将Device A上的IPv4 ACL 3000中的deny规则删除。
为保证IPsec对等体上能够成功建立SA,建议两端设备上用于IPsec的ACL配置为镜像对称,即保证两端定义的要保护的数据流范围的源和目的尽量对称。例如,图1-12中Device A和Device B上的ACL配置都是完全镜像对称的,因此用于保护主机Host A与主机Host C之间、子网Network 1与子网Network 2之间流量的SA均可成功建立。
若IPsec对等体上的ACL配置非镜像,那么只有在一端的ACL规则定义的范围是另外一端的子集时,SA协商可以成功。如图1-13所示,Device A上的ACL规则允许的范围(Host A->Host C)是Device B上ACL规则允许的范围(Network 2->Network 1)的子集。
需要注意的是,在这种ACL配置下,并不是任何一端发起的SA协商都可以成功,仅当保护范围小(细粒度)的一端向保护范围大(粗粒度)的一端发起的协商才能成功,反之则SA协商失败。这是因为,协商响应方要求协商发起方发送过来的数据必须在响应方可以接受的范围之内。其结果就是,从细粒度一端向粗粒度一端发送报文时,细粒度侧设备发起的SA协商可以成功,例如Host A->Host C;从粗粒度一方向细粒度一方发送报文时,粗粒度侧设备发起的SA协商不能成功,例如Host C->Host A、Host C->Host B、Host D->Host A等。
IKE协商方式的IPsec策略有以下两种配置方式:
· 直接配置IPsec策略:在安全策略视图中定义需要协商的各参数;
· 引用IPsec策略模板配置IPsec策略:首先在IPsec策略模板中定义需要协商的各参数,然后通过引用IPsec策略模板创建一条IPsec策略。应用了该类IPsec策略的接口不能发起协商,仅可以响应远端设备的协商请求。由于IPsec策略模板中未定义的可选参数由发起方来决定,而响应方会接受发起方的建议,因此这种方式适用于通信对端(例如对端的IP地址)未知的情况下,允许这些对端设备向本端设备主动发起协商。
IPsec策略模板与直接配置的IKE协商方式的IPsec策略中可配置的参数类似,但是配置较为简单,除了IPsec安全提议和IKE profile之外的其它参数均为可选。应用了引用IPsec策略模板配置的IPsec策略的接口不能发起协商,仅可以响应远端设备的协商请求。IPsec策略模板中未定义的可选参数由发起方来决定,而响应方会接受发起方的建议,例如IPsec策略模板下的用于定义保护对象范围的ACL是可选的,该参数在未配置的情况下,相当于支持最大范围的保护,即完全接受协商发起端的ACL设置。
IPsec隧道两端的配置必须符合以下要求:
· IPsec策略引用的IPsec安全提议中应包含相同的安全协议、认证/加密算法和报文封装模式。
· IPsec策略引用的IKE profile参数相匹配。
· 一条IKE协商方式的IPsec策略中最多可以引用六个IPsec安全提议。IKE协商过程中,IKE将会在隧道两端配置的IPsec策略中查找能够完全匹配的IPsec安全提议。如果IKE在两端找不到完全匹配的IPsec安全提议,则SA不能协商成功,需要被保护的报文将被丢弃。
· IKE协商的发起方必须配置IPsec隧道的对端地址,响应方可选配,且当前端点的对端地址与对端的本端地址应保持一致。
对于IKE协商建立的IPsec SA,遵循以下原则:
· 采用隧道两端设置的IPsec SA生存时间中较小者。
· 可同时存在基于时间和基于流量两种方式的IPsec SA生存时间,只要到达指定的时间或指定的流量,IPsec SA就会老化。
· 一条IPsec策略只能引用一个IKEv1 profile或者一个IKEv2 profile。同时引用时IKEv2 profile的优先级高于IKEv1 profile的优先级。
IKEv1 profile的相关配置请参见“安全配置指导”中的“IKE”。
IKEv2 profile的相关配置请参见“安全配置指导”中的“IKEv2”。
(1) 进入系统视图。
system-view
(2) 创建一条IKE协商方式的IPsec策略,并进入IPsec策略视图。
ipsec { ipv6-policy | policy } policy-name seq-number isakmp
(3) (可选)配置IPsec策略的描述信息。
description text
缺省情况下,无描述信息。
(4) (可选)配置触发建立IPsec SA的模式。
sa trigger-mode { auto | traffic-based }
缺省情况下,触发建立IPSec SA的模式为流量触发。
若IPsec策略/IPsec策略模板引用的ACL被指定为聚合方式或主机方式,则该IPsec策略/IPsec策略模板无法通过自动触发模式建立IPsec SA。
(5) 指定IPsec策略引用的ACL。
security acl [ ipv6 ] { acl-number | name acl-name } [ aggregation | per-host ]
缺省情况下,IPsec策略没有指定ACL。
一条IPsec策略只能引用一个ACL。
(6) 指定IPsec策略引用的IPsec安全提议。
transform-set transform-set-name&<1-6>
缺省情况下,IPsec策略没有引用IPsec安全提议。
(7) 指定IPsec策略引用的IKE profile或者IKEv2 profile。
¡ 指定IPsec策略引用的IKE profile。
ike-profile profile-name
缺省情况下,IPsec策略没有引用IKE profile。
¡ 指定IPsec策略引用的IKEv2 profile。
ikev2-profile profile-name
缺省情况下,IPsec策略没有引用IKEv2 profile。
(8) 指定IPsec隧道的本端IP地址。
local-address { ipv4-address | ipv6 ipv6-address }
缺省情况下,IPsec隧道的本端IPv4地址为应用IPsec策略的接口的主IPv4地址,本端IPv6地址为应用IPsec策略的接口的第一个IPv6地址。
此处指定的IPsec隧道本端IP地址必须与IKE使用的标识本端身份的IP地址一致。
IPsec隧道的本端IP地址不得为应用IPsec策略的接口的从IP地址。
(9) 指定IPsec隧道的对端IP地址。
remote-address { [ ipv6 ] host-name | ipv4-address | ipv6 ipv6-address } [ primary ] [ track track-id ]
缺省情况下,未指定IPsec隧道的对端IP地址。
为实现IPsec对端地址回切功能,需要至少指定两条IPsec隧道的对端IP地址,包括一条首选地址。IPsec隧道的对端地址都需要与Track项关联。
(10) (可选)开启IPsec对端地址回切功能。
remote-address switch-back enable
缺省情况下,IPsec对端地址回切功能处于关闭状态。
为实现本功能需要配置IPsec反向路由注入和IKE的DPD探测功能,并配置NQA相关功能。关于NQA的相关配置,请参见“网络管理和监控配置指导”中的“NQA”。
(11) (可选)配置IPsec SA的生存时间或空闲超时时间。
¡ 配置IPsec SA的生存时间。
sa duration { time-based seconds | traffic-based kilobytes }
缺省情况下,IPsec策略下的IPsec SA生存时间为当前全局的IPsec SA生存时间。
¡ 配置IPsec SA的软超时缓冲参数。
sa soft-duration buffer { time-based seconds | traffic-based kilobytes }
缺省情况下,未配置软超时缓冲参数。
¡ 配置IPsec SA的空闲超时时间。
sa idle-time seconds
缺省情况下,IPsec策略下的IPsec SA空闲超时时间为当前全局的IPsec SA空闲超时时间。
(12) (可选)开启TFC(Traffic Flow Confidentiality)填充功能。
tfc enable
缺省情况下,TFC填充功能处于关闭状态。
本功能仅适用于IKEv2协商的IPsec SA。
(13) (可选)启用IPsec策略表项。
policy enable
缺省情况下,IPsec策略表项处于启用状态。
(14) (可选)配置IPsec策略表项的别名。
policy alias alias-name
缺省情况下,IPsec策略表项的别名为IPsec策略名-IPsec策略表项序号。
(1) 进入系统视图。
system-view
(2) 创建一个IPsec策略模板,并进入IPsec策略模板视图。
ipsec { ipv6-policy-template | policy-template } template-name seq-number
(3) (可选)配置IPsec策略模板的描述信息。
description text
缺省情况下,无描述信息。
(4) (可选)指定IPsec策略模板引用的ACL。
security acl [ ipv6 ] { acl-number | name acl-name } [ aggregation | per-host ]
缺省情况下,IPsec策略模板没有指定ACL。
一条IPsec策略模板只能引用一个ACL。
(5) 指定IPsec策略模板引用的安全提议。
transform-set transform-set-name&<1-6>
缺省情况下IPsec策略模板没有引用IPsec安全提议。
(6) 指定IPsec策略模板引用的IKE profile或者IKEv2 profile。
¡ 指定IPsec策略模板引用的IKE profile。
ike-profile profile-name
缺省情况下,IPsec策略模板没有引用IKE profile。
不能引用已经被其它IPsec策略或IPsec策略模板引用的IKE profile。
¡ 指定IPsec策略模板引用的IKEv2 profile。
ikev2-profile profile-name
缺省情况下,IPsec策略模板没有引用IKEv2 profile。
(7) 指定IPsec隧道的本端IP地址和对端IP地址。
¡ 指定IPsec隧道的本端IP地址。
local-address { ipv4-address | ipv6 ipv6-address }
缺省情况下,IPsec隧道的本端IPv4地址为应用IPsec策略的接口的主IPv4地址,本端IPv6地址为应用IPsec策略的接口的第一个IPv6地址。
IPsec隧道本端IP地址必须与IKE对等体使用的标识本端身份的IP地址一致。
IPsec隧道的本端IP地址不得为应用IPsec策略的接口的从IP地址。
¡ 指定IPsec隧道的对端IP地址。
remote-address { [ ipv6 ] host-name | ipv4-address | ipv6 ipv6-address }
缺省情况下,未指定IPsec隧道的对端IP地址。
(8) (可选)配置IPsec SA的生存时间或者空闲超时时间。
¡ 配置IPsec SA的生存时间。
sa duration { time-based seconds | traffic-based kilobytes }
缺省情况下,IPsec策略模板下的IPsec SA生存时间为当前全局的IPsec SA生存时间。
¡ 配置IPsec SA的空闲超时时间。
sa idle-time seconds
缺省情况下,IPsec策略模板下的IPsec SA空闲超时时间为当前全局的IPsec SA空闲超时时间。
(9) (可选)开启TFC(Traffic Flow Confidentiality)填充功能。
tfc enable
缺省情况下,TFC填充功能处于关闭状态。
(10) (可选)启用IPsec策略模板表项。
policy enable
缺省情况下,IPsec策略模板表项处于启用状态。
(11) (可选)配置IPsec策略模板表项的别名。
policy alias alias-name
缺省情况下,IPsec策略模板表项的别名为template-IPsec策略模板名-IPsec策略模板表项序号。
(12) 退回系统视图。
quit
(13) 引用安全策略模板创建一条IKE协商方式的安全策略。
ipsec { ipv6-policy | policy } policy-name seq-number isakmp template template-name
为保证SA能够成功生成,IPsec隧道两端的配置必须符合以下要求:
· IPsec策略引用的IPsec安全提议应采用相同的安全协议、加密/认证算法和报文封装模式。
· 当前端点的IPv4对端地址应与对端应用IPsec策略的接口的主IPv4地址保持一致;当前端点的IPv6对端地址应与对端应用IPsec策略的接口的第一个IPv6地址保持一致。
· 应分别设置inbound和outbound两个方向的IPsec SA参数,且保证每一个方向上的IPsec SA的唯一性:对于出方向IPsec SA,必须保证三元组(对端IP地址、安全协议、SPI)唯一;对于入方向IPsec SA,必须保证SPI唯一。
· 本端和对端IPsec SA的SPI及密钥必须是完全匹配的。即,本端的入方向IPsec SA的SPI及密钥必须和对端的出方向IPsec SA的SPI及密钥相同;本端的出方向IPsec SA的SPI及密钥必须和对端的入方向IPsec SA的SPI及密钥相同。
· 两端IPsec SA使用的密钥应当以相同的方式输入,即如果一端以字符串方式输入密钥,另一端必须也以字符串方式输入密钥。如果先后以不同的方式输入了密钥,则最后设定的密钥有效。
· 对于ESP协议,以字符串方式输入密钥时,系统会自动地同时生成认证算法的密钥和加密算法的密钥。
(1) 进入系统视图。
system-view
(2) 创建一条手工方式的IPsec策略,并进入IPsec策略视图。
ipsec { ipv6-policy | policy } policy-name seq-number manual
(3) (可选)配置IPsec策略的描述信息。
description text
缺省情况下,无描述信息。
(4) 指定IPsec策略引用的ACL。
security acl [ ipv6 ] { acl-number | name acl-name }
缺省情况下,IPsec策略没有引用ACL。
一条安全策略只能引用一个ACL。
(5) 指定IPsec策略所引用的安全提议。
transform-set transform-set-name
缺省情况下,IPsec策略没有引用IPsec安全提议。
一条手工方式的IPsec策略只能引用一个安全提议。
(6) 指定IPsec隧道的对端IP地址。
remote-address { ipv4-address | ipv6 ipv6-address }
缺省情况下,未指定IPsec隧道的对端地址。
(7) 配置IPsec SA的入方向SPI。
sa spi inbound { ah | esp } spi-number
缺省情况下,不存在IPsec SA的入方向SPI。
(8) 配置IPsec SA的出方向SPI。
sa spi outbound { ah | esp } spi-number
缺省情况下,不存在IPsec SA的出方向SPI。
(9) 配置IPsec SA使用的密钥。
¡ 配置AH协议的认证密钥(以十六进制方式输入)。
sa hex-key authentication { inbound | outbound } ah { cipher | simple } string
¡ 配置AH协议的认证密钥(以字符串方式输入)。
sa string-key { inbound | outbound } ah { cipher | simple } string
¡ 配置ESP协议的认证密钥和加密密钥(以字符串方式输入)。
sa string-key { inbound | outbound } esp { cipher | simple } string
¡ 配置ESP协议的认证密钥(以十六进制方式输入)。
sa hex-key authentication { inbound | outbound } esp { cipher | simple } string
¡ 配置ESP协议的加密密钥(以十六进制方式输入)。
sa hex-key encryption { inbound | outbound } esp { cipher | simple } string
缺省情况下,未配置IPsec SA使用的密钥。
根据本安全策略引用的安全提议中指定的安全协议,配置AH协议或ESP协议的密钥,或者两者都配置。
(10) (可选)配置IPsec策略表项的别名。
policy alias alias-name
缺省情况下,IPsec策略表项的别名为IPsec策略名-IPsec策略表项序号。
为使定义的IPsec SA生效,应在每个要加密的数据流和要解密的数据流所在接口上应用一个IPsec策略,以对数据进行保护。当取消IPsec策略在接口上的应用后,此接口便不再具有IPsec的安全保护功能。
在将IKE方式的IPsec策略应用到多个接口上时,请使用共享源接口的IPsec策略;手工方式的IPsec策略只能应用到一个接口上。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 应用IPsec策略。
ipsec apply { ipv6-policy | policy } policy-name
缺省情况下,接口上没有应用IPsec策略。
一个接口下最多只能应用一个IPv4/IPv6类型的IPsec策略,但可以同时应用一个IPv4类型的IPsec策略和一个IPv6类型的IPsec策略。
|
型号 |
说明 |
|
|
WA7100系列 |
WA7130 |
支持 |
|
WA7200系列 |
WA7220 WA7220-HI WA7220-LI WA7220CE WA7220CM WA7220H WA7220H-EI WA7220X WA7220X-LI WA7222F WA7226-C WA7230 WA7230-LI WA7232 |
支持 |
|
WA7300系列 |
WA7320 WA7320i WA7320H-HI WA7322H-HI WA7320XE WA7330i WA7330X WA7338-HI |
WA7320:不支持 WA7320i:不支持 WA7320H-HI:支持 WA7322H-HI:不支持 WA7320XE:不支持 WA7330i:不支持 WA7330X:不支持 WA7338-HI:不支持 |
|
WA7500系列 |
WA7538 WA7539 |
支持 |
|
WA7600系列 |
WA7610E-T WA7620CE WA7630X WA7636 WA7638 |
支持 |
IPsec隧道两端的配置必须符合以下要求:
· IPsec安全框架引用的IPsec安全提议中应包含具有相同的安全协议、认证/加密算法和报文封装模式的IPsec安全提议。
· IPsec安全框架引用的IKE profile参数相匹配。
· 一条IKE协商方式的IPsec安全框架中最多可以引用六个IPsec安全提议。IKE协商过程中,IKE将会在隧道两端配置的IPsec安全框架中查找能够完全匹配的IPsec安全提议。如果IKE在两端找不到完全匹配的IPsec安全提议,则SA不能协商成功,需要被保护的报文将被丢弃。
对于IKE协商建立的IPsec SA,遵循以下原则:
· 采用隧道两端设置的IPsec SA生存时间中较小者。
· 可同时存在基于时间和基于流量两种方式的IPsec SA生存时间,只要到达指定的时间或指定的流量,IPsec SA就会老化。
IKE协商方式的IPsec安全框架定义了对数据流进行IPsec保护所使用的安全提议,以及IKE profile
(1) 进入系统视图。
system-view
(2) 创建一个IKE协商方式的IPsec安全框架,并进入IPsec安全框架视图。
ipsec profile profile-name isakmp
进入已创建的IPsec安全框架时,可以不指定协商方式isakmp。
(3) (可选)配置IPsec安全框架的描述信息。
description text
缺省情况下,无描述信息。
(4) 指定IPsec安全框架引用的IPsec安全提议。
transform-set transform-set-name&<1-6>
缺省情况下,IPsec安全框架没有引用IPsec安全提议。
要引用的IPsec安全提议所采用的封装模式必须为隧道模式。
(5) 指定IPsec安全框架引用的IKE profile。
ike-profile profile-name
缺省情况下,IPsec安全框架没有引用IKE profile。若系统视图下配置了IKE profile,则使用系统视图下配置的IKE profile进行性协商,否则使用全局的IKE参数进行协商。
只能引用一个IKE profile,IKE profile的相关配置请参见“安全配置指导”中的“IKE”。
(6) (可选)指定IPsec安全框架引用的IKEv2 profile。
ikev2-profile profile-name
缺省情况下,IPsec安全框架没有引用IKEv2 profile。若同时引用IKE profile和IKEv2 profile,优先使用IKEv2 profile进行协商。
只能引用一个IKEv2 profile,IKEv2 profile的相关配置请参见“安全配置指导”中的“IKEv2”。
(7) (可选)配置IPsec SA的生存时间。
sa duration { time-based seconds | traffic-based kilobytes }
缺省情况下,IPsec安全框架下的IPsec SA生存时间为当前全局的IPsec SA生存时间。
(8) (可选)配置IPsec SA的软超时缓冲参数。
sa soft-duration buffer { time-based seconds | traffic-based kilobytes }
缺省情况下,未配置软超时缓冲参数。
(9) (可选)配置IPsec SA的空闲超时时间。
sa idle-time seconds
缺省情况下,IPsec安全框架下的IPsec SA空闲超时时间为当前全局的IPsec SA空闲超时时间。
(10) (可选)配置IPsec安全框架的别名。
profile alias alias-name
缺省情况下,IPsec安全框架的别名为profile-安全框架名称。
(11) 进入系统视图。
system-view
(12) 创建一个Tunnel接口,指定隧道模式,并进入该Tunnel接口视图。
interface tunnel number mode ipsec-p2mp
(13) 在隧道接口上应用IPsec安全框架。
tunnel protection ipsec profile profile-name [ gateway ipv4-address ]
缺省情况下,隧道接口下未应用IPsec安全框架。
不同方式的IPsec策略或安全框架对IPsec可靠性功能的支持情况不同,具体支持情况请参见表1-2中的详细信息。
表1-2 IPsec可靠性功能支持情况描述表
|
功能名称 |
IPsec策略(用于非隧道接口) |
手工方式IPsec安全框架(用于IPv6路由协议) |
IKE方式IPsec安全框架(用于隧道接口) |
|
支持 |
不支持 |
不支持 |
|
|
支持 |
支持 |
支持 |
|
|
支持 |
不支持 |
支持 |
|
|
支持 |
不支持 |
不支持 |
|
|
支持 |
不支持 |
不支持 |
|
|
支持 |
不支持 |
不支持 |
|
|
支持 |
不支持 |
不支持 |
RRI(Reverse Route Injection,反向路由注入)功能是一种自动添加到达IPsec VPN私网静态路由的机制,可以实现为受IPsec保护的流量自动添加静态路由的功能。在大规模组网中,这种自动添加静态路由的机制可以简化用户配置,减少在企业总部网关设备上配置静态路由的工作量,并且可以根据IPsec SA的创建和删除进行静态路由的动态增加和删除,增强了IPsec VPN的可扩展性。
某企业在企业分支与企业总部之间的所有流量通过IPsec进行保护,企业总部网关上需要配置静态路由,将总部发往分支的数据引到应用IPsec策略的接口上来。如果未配置RRI,当企业分支众多或者内部网络规划发生变化时,就需要同时增加或调整总部网关上的静态路由配置,该项工作量大且容易出现配置错误。
企业总部侧网关设备GW上配置RRI功能后,每一个IPsec隧道建立之后,GW都会自动为其添加一条相应的静态路由。通过RRI创建的路由表项可以在路由表中查询到,其目的地址为受保护的对端网络,下一跳地址为IPsec隧道的对端地址或指定的地址,它使得发往对端的流量被强制通过IPsec保护并转发。
RRI创建的静态路由和手工配置的静态路由一样,可以向内网设备进行广播,允许内网设备选择合适的路由对IPsec VPN流量进行转发。也可以为RRI创建的静态路由配置优先级,从而更灵活地应用路由管理策略。例如:当设备上还有其他方式配置到达相同目的地的路由时,如果为它们指定相同的优先级,则可实现负载分担,如果指定不同的优先级,则可实现路由备份。同时,还可以通过修改静态路由的Tag值,使得设备能够在路由策略中根据Tag值对这些RRI生成的静态路由进行灵活的控制。
图1-14 IPsec VPN总部-分支组网图
开启RRI功能时,会删除相应IPsec策略协商出的所有IPsec SA。当有新的流量触发生成IPsec SA时,根据新协商的IPsec生成路由信息。
关闭RRI功能时,会删除相应IPsec策略协商出的所有IPsec SA。
RRI生成的静态路由随IPsec SA的创建而创建,随IPsec SA的删除而删除。
RRI功能在隧道模式和传输模式下都支持。
若修改了RRI生成的静态路由的优先级或Tag属性,则会删除由相应IPsec策略建立的IPsec SA和已添加的静态路由,修改后的属性值在下次生成IPsec SA且添加静态路由时生效。
在RRI功能开启的情况下,对于与未指定目的IP地址的ACL规则相匹配的报文流触发协商出的IPsec SA,设备并不会为其自动生成一条静态路由。因此,如果IPsec策略/IPsec策略模板引用了此类型的ACL规则,则需要通过手工配置一条到达对端受保护网络的静态路由。
(1) 进入系统视图。
system-view
(2) 进入IPsec策略视图或者IPsec策略模板视图。
¡ 进入IPsec策略视图。
ipsec { policy | ipv6-policy } policy-name seq-number isakmp
¡ 进入IPsec策略模板视图。
ipsec { ipv6-policy-template | policy-template } template-name seq-number
(3) 开启IPsec反向路由注入功能。
reverse-route [ next-hop [ ipv6 ] ip-address ] dynamic
缺省情况下,IPsec反向路由注入功能处于关闭状态。
(4) (可选)配置IPsec反向路由功能生成的静态路由的优先级。
reverse-route preference number
缺省情况下,IPsec反向路由注入功能生成的静态路由的优先级为60。
(5) (可选)配置IPsec反向路由功能生成的静态路由的Tag值。
reverse-route tag tag-value
缺省情况下,IPsec反向路由注入功能生成的静态路由的tag值为0。
通过配置IPsec分片功能,可以选择在报文进行IPsec封装之前是否进行分片:
· IPsec封装前分片功能处于开启状态时,设备会先判断报文在经过IPsec封装之后大小是否会超过发送接口的MTU值,如果封装后的大小超过发送接口的MTU值,那么会先对其分片再封装。
· IPsec封装后分片功能处于开启状态时,无论报文封装后大小是否超过发送接口的MTU值,设备会直接对其先进行IPsec封装处理,再由后续业务对其进行分片。
该功能仅对需要进行IPsec封装的IPv4报文有效。
(1) 进入系统视图。
system-view
(2) 配置IPsec分片功能。
ipsec fragmentation { after-encryption | before-encryption }
缺省情况下,IPsec封装前分片功能处于开启状态。
IP报文头中的DF(Don’t Fragment,不分片)位用于控制报文是否允许被分片。在隧道模式下,IPsec会在原始报文外封装一个新的IP头,称为外层IP头。IPsec的DF位设置功能允许用户设置IPsec封装后的报文外层IP头的DF位,并支持以下三种设置方式:
· clear:表示清除外层IP头的DF位,IPsec封装后的报文可被分片。
· set:表示设置外层IP头的DF位,IPsec封装后的报文不能被分片。
· copy:表示外层IP头的DF位从原始报文IP头中拷贝。
封装后外层IP头的DF位可以在IPsec策略视图/IPsec策略模板视图/IPsec安全框架视图、接口视图和系统视图下分别配置,IPsec策略/IPsec策略模板/IPsec安全框架下的配置优先级最高。如果IPsec策略/IPsec策略模板/IPsec安全框架下未配置IPsec DF位,将使用接口下配置的IPsec DF位;如果接口下也未配置IPsec DF位,将使用系统视图下配置的全局IPsec DF位。
· 该功能仅在IPsec的封装模式为隧道模式时有效,仅用于设置IPsec隧道模式封装后的外层IP头的DF位,原始报文IP头的DF位不会被修改。
· 只有IKE协商方式的IPsec才能够支持本功能。
· 如果有多个接口应用了共享源接口安全策略,则这些接口上必须使用相同的DF位设置。
· 转发报文时对报文进行分片、重组,可能会导致报文的转发延时较大。若设置了封装后IPsec报文的DF位,则不允许对IPsec报文进行分片,可以避免引入分片延时。这种情况下,要求IPsec报文转发路径上各个接口的MTU大于IPsec报文长度,否则,会导致IPsec报文被丢弃。如果无法保证转发路径上各个接口的MTU大于IPsec报文长度,则建议清除DF位。
(1) 进入系统视图。
system-view
(2) 进入IPsec策略视图/IPsec策略模板视图/IPsec安全框架视图。
¡ 进入IPsec策略视图。
ipsec { ipv6-policy | policy } policy-name seq-number isakmp
¡ 进入IPsec策略模板视图。
ipsec { ipv6-policy-template | policy-template } template-name seq-number
¡ 进入IPsec安全框架视图。
ipsec profile profile-name isakmp
(3) 为IPsec策略/IPsec策略模板/IPsec安全框架设置IPsec封装后外层IP头的DF位。
sa df-bit { clear | copy | set }
缺省情况下,未设置IPsec封装后外层IP头的DF位,采用接口或全局设置的DF位。
(1) 进入系统视图。
system-view
(2) 进入接口视图。
interface interface-type interface-number
(3) 为当前接口设置IPsec封装后外层IP头的DF位。
ipsec df-bit { clear | copy | set }
缺省情况下,接口下未设置IPsec封装后外层IP头的DF位,采用全局设置的DF位。
(1) 进入系统视图。
system-view
(2) 为全局设置IPsec封装后外层IP头的DF位。
ipsec global-df-bit { clear | copy | set }
缺省情况下,IPsec封装后外层IP头的DF位从原始报文IP头中拷贝。
在中心-分支组网环境中,当有新的分支加入组网时,如果新分支侧配置的保护数据流范围过大,可能会导致其他分支的流量被引入到该分支,导致报文转发错误。配置本功能后,当中心侧设备与分支侧设备进行IPsec SA协商时,如果中心侧需要保护数据流的源、目的IP地址的掩码长度大于或等于本功能配置的值,则允许继续协商;否则,IPsec SA协商失败,设备将生成掩码过滤失败的告警信息,提示用户当前需要保护数据流的掩码设置过小。当IPsec SA协商失败时,管理员需要针对当前组网环境,重新规划分支侧的ACL配置。
仅IPv4网络支持本功能。
本功能仅在设备采用IPsec策略模板方式协商IPsec SA时生效。
建议在中心-分支组网环境中的中心侧配置本功能。
(1) 进入系统视图。
system-view
(2) 配置IPsec掩码过滤功能。
ipsec netmask-filter { destination-mask mask-length | source-mask mask-length } *
缺省情况下,未配置IPsec掩码过滤功能。
身份过滤集用于对IPsec隧道协商的发起方进行身份过滤控制。只有符合条件的发起方才会被允许进行IPsec协商,并与响应方建立IPsec隧道。避免其他非法发起方与设备建立IPsec隧道,提高了安全性。
身份过滤集中可以定义作为发起方的对端体的相关参数,包括IP地址、域名、FQDN名称以及User FQDN名称。
在IPsec协商时,若IPsec安全框架下引用了身份过滤集,则IPsec安全框架将根据身份过滤集中的过滤条件对发起方对等体进行身份过滤控制,只有符合要求的对等体才能接入。
本功能仅支持在中心-分支组网中的中心侧进行配置。
当对端对等体符合身份过滤集中一个或多个条件,且两端的IPsec协商参数相匹配时,本端和对端可以成功建立IPsec隧道。
(1) 进入系统视图。
system-view
(2) 创建一个身份过滤集视图,并进入身份过滤集视图。
ipsec ike-identity identity-name
缺省情况下,不存在身份过滤集。
(3) 配置身份过滤集中的对端IP地址。
address { ipv4-address [ mask | mask-length ] | ipv6 ipv6-address [ prefix-length ] }
缺省情况下,身份过滤集中未指定对端的IP地址。
(4) 在身份过滤集中添加对端域名。
domain domain-name
缺省情况下,身份过滤集中未指定对端的域名。
(5) 在身份过滤集中添加对端的FQDN名称。
fqdn fqdn-name
缺省情况下,身份过滤集中未指定对端的FQDN名称。
(6) 配置身份过滤集中的对端User FQDN名称。
user-fqdn fqdn-name
缺省情况下,身份过滤集中未指定对端User FQDN名称。
(7) 创建一个IKE协商方式的IPsec安全框架,并进入IPsec安全框架视图。
ipsec profile profile-name isakmp
进入已创建的IPsec安全框架时,可以不指定协商方式isakmp。
(8) 引用身份过滤集。
match ike-identity identity-name
缺省情况下,IPsec 安全框架中未引用身份过滤集。
在中心-分支组网环境中,通常中心侧采用IPsec策略模板方式协商IPsec SA。当分支侧分支众多时,需保护的数据流范围可能会重叠。此时通过开启本功能,在协商IPsec SA时,设备会检测新建隧道与已有隧道的需保护数据流是否存在重叠。若重叠,则IPsec SA协商失败,设备将生成IPsec流量重叠检测失败的告警信息,提示用户当前需要保护的数据流存在流量重叠。当IPsec SA协商失败时,管理员需要针对当前组网环境,重新规划分支侧的ACL配置。
中心侧设备判断是否存在IPsec流量重叠的方法为:检测待保护数据流的目的IP地址范围是否与已有隧道保护的数据流的目的IP地址范围重叠。若重叠,则认为待保护的数据流与已有隧道保护的数据流发生了重叠。
本功能具有如下使用限制:
· 建议在中心-分支组网环境中的中心侧配置本功能。
· 仅在设备采用IPsec策略模板方式协商IPsec SA时生效。
· 仅支持对新建的IPsec SA进行流量重叠检测,不支持对已有的IPsec SA进行流量重叠检测。
· 仅支持在同一接口、同一VPN实例下进行流量重叠检测。
· 不支持对IPsec重协商后生成的IPsec SA进行流量重叠检测。
· 流量重叠检测时不会判断源IP地址范围是否与已有隧道保护的数据流的源IP地址范围重叠。
· 流量重叠检测对设备性能有一定的影响,建议仅在进行网络升级扩容等操作时开启,并在操作完成后及时关闭。
(1) 进入系统视图。
system-view
(2) 开启IPsec流量重叠检测功能。
ipsec flow-overlap check enable
缺省情况下,IPsec流量重叠检测功能处于关闭状态。
为了提高网络的可靠性,通常核心设备到ISP(Internet Service Provider,互联网服务提供商)都会有两条出口链路,它们互为备份或者为负载分担的关系。由于在不同的接口上应用安全策略时,各个接口将分别协商生成IPsec SA。因此,则在主备链路切换时,接口状态的变化会触发重新进行IKE协商,从而导致数据流的暂时中断。这种情况下,两个接口上的IPsec SA就需要能够平滑切换。
通过将一个IPsec策略与一个源接口绑定,使之成为共享源接口IPsec策略,可以实现主备链路切换时受IPsec保护的业务流量不中断。具体机制为:应用相同IPsec策略的多个物理接口共同使用一个指定的源接口(称为共享源接口)协商IPsec SA,当这些物理接口对应的链路切换时,如果该源接口的状态不变化,就不会删除该接口协商出的IPsec SA,也不需要重新触发IKE协商,各物理接口继续使用已有的IPsec SA保护业务流量。
· 只有IKE协商方式的IPsec策略才能配置为IPsec共享源接口安全策略。
· 一个IPsec策略只能与一个源接口绑定。
· 一个源接口可以同时与多个IPsec策略绑定。
· 删除与共享源接口IPsec策略绑定的共享源接口时,将使得该共享源接口IPsec策略恢复为普通IPsec策略。
· 若一个IPsec策略为共享源接口IPsec策略,但该IPsec策略中未指定隧道本端地址,则IKE将使用共享源接口地址作为IPsec隧道的本端地址进行IKE协商;如果共享源接口IPsec策略中指定了隧道本端地址,则将使用指定的隧道本端地址进行IKE协商。
(1) 进入系统视图。
system-view
(2) 配置IPsec策略为IPsec共享源接口安全策略。
ipsec { ipv6-policy | policy } policy-name local-address interface-type interface-number
缺省情况下,IPsec策略不是共享源接口IPsec策略,即未将IPsec策略与任何源接口绑定。
不同方式的IPsec策略或安全框架对IPsec安全性功能的支持情况不同,具体支持情况请参见表1-3中的详细信息。
表1-3 IPsec安全性功能支持情况描述表
|
功能名称 |
IPsec策略(用于非隧道接口) |
手工方式IPsec安全框架(用于IPv6路由协议) |
IKE方式IPsec安全框架(用于隧道接口) |
|
支持 |
不支持 |
不支持 |
|
|
支持 |
不支持 |
不支持 |
|
|
支持 |
支持 |
支持 |
|
|
支持 |
不支持 |
支持 |
|
|
支持 |
不支持 |
支持 |
在隧道模式下,接口入方向上解封装的IPsec报文的内部IP头有可能不在当前IPsec策略引用的ACL的保护范围内,如网络中一些恶意伪造的攻击报文就可能有此问题,所以设备需要重新检查解封装后的报文的IP头是否在ACL保护范围内。开启该功能后可以保证ACL检查不通过的报文被丢弃,从而提高网络安全性。
(1) 进入系统视图。
system-view
(2) 开启解封装后IPsec报文的ACL检查功能。
ipsec decrypt-check enable
缺省情况下,解封装后IPsec报文的ACL检查功能处于开启状态。
重放报文,通常是指设备再次接收到的已经被IPsec处理过的报文。IPsec通过滑动窗口(抗重放窗口)机制检测重放报文。AH和ESP协议报文中带有序列号,如果收到的报文的序列号与已经解封装过的报文序列号相同,或收到的报文的序列号出现得较早,即已经超过了抗重放窗口的范围,则认为该报文为重放报文。
对重放报文的解封装无意义,并且解封装过程涉及密码学运算,会消耗设备大量的资源,导致业务可用性下降,造成了拒绝服务攻击。通过开启IPsec抗重放检测功能,将检测到的重放报文在解封装处理之前丢弃,可以降低设备资源的消耗。
在某些特定环境下,业务数据报文的接收顺序可能与正常的顺序差别较大,虽然并非有意的重放攻击,但会被抗重放检测认为是重放报文,导致业务数据报文被丢弃,影响业务的正常运行。因此,这种情况下就可以通过关闭IPsec抗重放检测功能来避免业务数据报文的错误丢弃,也可以通过适当地增大抗重放窗口的宽度,来适应业务正常运行的需要。
· 只有IKE协商的IPsec SA才能够支持抗重放检测,手工方式生成的IPsec SA不支持抗重放检测。因此该功能开启与否对手工方式生成的IPsec SA没有影响。
· 使用较大的抗重放窗口宽度会引起系统开销增大,导致系统性能下降,与抗重放检测用于降低系统在接收重放报文时的开销的初衷不符,因此建议在能够满足业务运行需要的情况下,使用较小的抗重放窗口宽度。
· IPsec抗重放检测功能缺省是开启的,是否关闭该功能请根据实际需求慎重使用。
(1) 进入系统视图。
system-view
(2) 开启IPsec抗重放检测功能。
ipsec anti-replay check
缺省情况下,IPsec抗重放检测功能处于开启状态。
(3) 配置IPsec抗重放窗口宽度。
ipsec anti-replay window width
缺省情况下,IPsec抗重放窗口宽度为64。
此功能用来配置对本端IPsec隧道数目的限制。本端允许建立IPsec隧道的最大数与内存资源有关。内存充足时可以设置较大的数值,提高IPsec的并发性能;内存不足时可以设置较小的数值,降低IPsec占用内存的资源。
(1) 进入系统视图。
system-view
(2) 配置本端允许建立IPsec隧道的最大数。
ipsec limit max-tunnel tunnel-limit
缺省情况下,本端允许建立IPsec隧道的最大数为4294967295。
缺省情况下,如果IPsec对等体两端均采用IKE协商方式的IPsec安全框架建立IPsec SA,则两端均会主动发起协商,对等体之间将存在两个协商IPsec SA的过程,但对等体之间最终只会建立一个IPsec SA,该协商过程将会造成设备CPU资源的浪费。此时可以配置本功能,指定本端只能作为建立IPsec SA的响应方,不主动发起协商,可以有效解决此问题,同时也有助于IPsec故障的诊断和定位。
建议在中心-分支组网环境中的中心侧配置本功能。
(1) 进入系统视图。
system-view
(2) 进入IPsec策略视图/IPsec策略模板视图/IPsec安全框架视图。
¡ 进入IPsec策略视图。
ipsec { ipv6-policy | policy } policy-name seq-number isakmp
¡ 进入IPsec策略模板视图。
ipsec { ipv6-policy-template | policy-template } template-name seq-number
¡ 进入IPsec安全框架视图。
ipsec profile profile-name isakmp
(3) 开启本端仅作为协商IPsec SA的响应方功能。
responder-only enable
缺省情况下,本端仅作为协商IPsec SA的响应方功能处于关闭状态。
此功能用来配置IPsec SA生存时间和空闲超时功能。对于IKE协商建立的IPsec SA,遵循以下原则:
· 采用隧道两端设置的IPsec SA生存时间中较小者。
· 可同时存在基于时间和基于流量两种方式的IPsec SA生存时间,只要到达指定的时间或指定的流量,IPsec SA就会老化。
(1) 进入系统视图。
system-view
(2) 配置IPsec SA生存时间或者IPsec SA空闲超时时间。
¡ 配置IPsec SA生存时间。
ipsec sa global-duration { time-based seconds | traffic-based kilobytes }
缺省情况下,IPsec SA基于时间的生存时间为3600秒,基于流量的生存时间为1843200千字节。
¡ 配置IPsec SA的全局软超时缓冲参数。
ipsec sa global-soft-duration buffer { time-based seconds | traffic-based kilobytes }
缺省情况下,未配置全局软超时缓冲参数。
¡ 开启IPsec SA空闲超时功能,并配置IPsec SA空闲超时时间。
ipsec sa idle-time seconds
缺省情况下, IPsec SA空闲超时功能处于关闭状态。
不同方式的IPsec策略或安全框架对IPsec高级功能的支持情况不同,具体支持情况请参见表1-4中的详细信息。
表1-4 IPsec高级功能支持情况描述表
|
功能名称 |
IPsec策略(用于非隧道接口) |
手工方式IPsec安全框架(用于IPv6路由协议) |
IKE方式IPsec安全框架(用于隧道接口) |
|
支持 |
不支持 |
不支持 |
|
|
支持 |
支持 |
支持 |
|
|
支持 |
支持 |
支持 |
|
|
支持 |
支持 |
支持 |
|
|
不支持 |
不支持 |
支持 |
当在接口上同时应用了IPsec策略与QoS策略时,缺省情况下,QoS使用封装后报文的外层IP头信息来对报文进行分类。但如果希望QoS基于被封装报文的原始IP头信息对报文进行分类,则需要配置QoS预分类功能来实现。
· 若在接口上同时配置IPsec和QoS,同一个IPsec SA保护的数据流如果被QoS分类进入不同队列,会导致部分报文发送乱序。由于IPsec具有抗重放功能,IPsec入方向上对于抗重放窗口之外的报文会进行丢弃,从而导致丢包现象。因此当IPsec与QoS配合使用时,必须保证IPsec分类与QoS分类规则配置保持一致。
· IPsec的分类规则完全由引用的ACL规则确定,QoS策略及QoS分类的相关介绍请参见“QoS配置指导”中的“QoS”。
(1) 进入系统视图。
system-view
(2) 进入IPsec策略视图或者IPsec策略模板视图。
¡ 进入IPsec策略视图。
ipsec { ipv6-policy | policy } policy-name seq-number [ isakmp | manual ]
¡ 进入IPsec策略模板视图。
ipsec { ipv6-policy-template | policy-template } template-name seq-number
(3) 开启QoS预分类功能。
qos pre-classify
开启IPsec报文日志记录功能后,设备会在丢弃IPsec报文的情况下,例如入方向找不到对应的IPsec SA、AH/ESP认证失败、ESP加密失败等时,输出相应的日志信息,该日志信息内容主要包括报文的源和目的IP地址、报文的SPI值、报文的序列号信息,以及设备丢包的原因。
(1) 进入系统视图。
system-view
(2) 开启IPsec报文日志记录功能。
ipsec logging packet enable
开启IPsec协商事件日志记录功能后,设备会输出IPsec协商过程中的相关日志。
(1) 进入系统视图。
system-view
(2) 开启IPsec协商事件日志功能。
ipsec logging negotiation enable
缺省情况下,IPsec协商事件日志功能处于关闭状态。
开启IPsec的Trap功能后,IPsec会生成告警信息,用于向网管软件报告该模块的重要事件。生成的告警信息将被发送到设备的SNMP模块,通过设置SNMP中告警信息的发送参数,来决定告警信息输出的相关属性。有关告警信息的详细介绍,请参见“网络管理和监控配置指导”中的“SNMP”。
如果希望生成并输出某种类型的IPsec告警信息,则需要保证IPsec的全局告警功能以及相应类型的告警功能均处于开启状态。
(1) 进入系统视图。
system-view
(2) 开启IPsec的全局告警功能。
snmp-agent trap enable ipsec global
缺省情况下,IPsec的全局告警功能处于关闭状态。
(3) 开启IPsec的指定告警功能。
snmp-agent trap enable ipsec [ auth-failure | connection-start | connection-stop | decrypt-failure | encrypt-failure | invalid-sa-failure | no-sa-failure | policy-add | policy-attach | policy-delete | policy-detach | tunnel-start | tunnel-stop ] *
缺省情况下,IPsec的所有告警功能均处于关闭状态。
开启IPsec P2MP隧道表项日志记录功能后,当IPsec P2MP隧道学习表项和删除表项时,设备会输出相关日志信息。有关日志信息的详细介绍,请参见“设备管理配置指导”中的“信息中心”。
本功能的支持情况与设备型号有关,请以设备的实际情况为准。
|
系列 |
型号 |
说明 |
|
WA7100系列 |
WA7130 |
支持 |
|
WA7200系列 |
WA7220 WA7220-HI WA7220-LI WA7220CE WA7220CM WA7220H WA7220H-EI WA7220X WA7220X-LI WA7222F WA7226-C WA7230 WA7230-LI WA7232 |
支持 |
|
WA7300系列 |
WA7320 WA7320i WA7320H-HI WA7322H-HI WA7320XE WA7330i WA7330X WA7338-HI |
WA7320:不支持 WA7320i:不支持 WA7320H-HI:支持 WA7322H-HI:不支持 WA7320XE:不支持 WA7330i:不支持 WA7330X:不支持 WA7338-HI:不支持 |
|
WA7500系列 |
WA7538 WA7539 |
支持 |
|
WA7600系列 |
WA7610E-T WA7620CE WA7630X WA7636 WA7638 |
支持 |
(1) 进入系统视图。
system-view
(2) 开启IPsec P2MP隧道表项日志功能。
ipsec logging ipsec-p2mp enable
缺省情况下,IPsec的P2MP隧道表项日志记录功能处于关闭状态。
在完成上述配置后,在任意视图下执行display命令可以显示配置后IPsec的运行情况,通过查看显示信息认证配置的效果。
在用户视图下执行reset命令可以清除IPsec统计信息。
表1-5 IPsec显示和维护
|
操作 |
命令 |
|
显示IPsec的全局配置信息 |
display ipsec global-info |
|
显示IPsec策略的信息 |
display ipsec { ipv6-policy | policy } [ policy-name [ seq-number ] ] |
|
显示IPsec策略模板的信息 |
display ipsec { ipv6-policy-template | policy-template } [ template-name [ seq-number ] ] |
|
显示IPsec P2MP隧道表项的信息 |
display ipsec p2mp tunnel-table interface tunnel tunnel-number [ ipv4 | ipv6 ] |
|
显示IPsec安全框架的信息 |
display ipsec profile [ profile-name ] |
|
显示IPsec SA的相关信息 |
display ipsec sa [ brief | count | interface interface-type interface-number | { ipv6-policy | policy } policy-name [ seq-number ] | profile profile-name | remote [ ipv6 ] ip-address ] |
|
显示IPsec处理报文的统计信息 |
display ipsec statistics [ tunnel-id tunnel-id ] |
|
显示IPsec安全提议的信息 |
display ipsec transform-set [ transform-set-name ] |
|
显示IPsec隧道的信息 |
display ipsec tunnel [ brief | count | tunnel-id tunnel-id ] |
|
清除已经建立的IPsec SA |
reset ipsec sa [ { ipv6-policy | policy } policy-name [ seq-number ] | profile profile-name | remote { ipv4-address | ipv6 ipv6-address } | spi { ipv4-address | ipv6 ipv6-address } { ah | esp } spi-num ] |
|
清除IPsec的报文统计信息 |
reset ipsec statistics [ tunnel-id tunnel-id ] |
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!
