三、IPSec VPN原理

——————————————————————————————————————————————————

1、IPSec起源和定义

由于IP协议未考虑安全性,Internet上有大量的不可靠用户和网络设备,所以用户业务数据要穿越这些未知网络,无法保证数据的安全性,数据易被伪造、篡改或窃取。为了解决上述问题,IPSec应运而生。IPSec是对IP的安全性补充,工作在IP层。

定义

IPSec是为IP网络提供安全性的协议和服务的集合,包括认证头AH和封装安全载荷ESP两个安全协议、密钥交换和用于验证及加密的一些算法等。通过这些协议,在两个设备之间建立一条IPSec隧道。数据通过IPSec隧道进行转发,实现保护数据的安全性。

——————————————————————————————————————————————————

2、IPSec原理

——————————————————————————————————————————————————

2.1、IPSec协议框架

——————————————————————————————————————————————————

2.1.1、安全联盟

安全联盟SA:对等体间利用安全服务进行安全的通信。包括对等体间使用何种安全协议、需要保护的数据流特征、对等体间传输的数据的封装模式、协议采用的加密和验证算法,以及用于数据安全转换传输的密钥和SA的生存周期等。

安全联盟简称IPSec SA。IPSec安全传输数据的前提是在IPSec对等体之间成功建立安全联盟。

IPSec SA包括安全参数索引SPI、目的IP地址和使用的安全协议号AH或ESP、其中,SPI是为唯一标识SA而生成的一个32位比特的数值,它被封装在AH和ESP头中。

IPSec SA是单向的逻辑连接,通常成对建立(Inbound和Outbound)。因此两个IPSec对等体之间的双向通信,最少需要建立一对IPSec SA形成一个安全互通的IPSec隧道,分别对两个方向的数据流进行安全保护。

在这里插入图片描述

建立IPSec SA有两种方式:手工方式和IKE方式。

加密/验证密钥配置和刷新方式:

手工配置、刷新,而且易出错密钥管理成本很高;IKE方式,密钥通过DH算法生成、动态刷新密钥管理成本低。

SPI取值:

手工方式需要手动配置;IKE方式随机生成。

生存周期:

手工方式配置无生存周期限制,SA永久存在;IKE方式由双方生存周期参数控制,SA动态刷新。

安全性:

手工方式:低;IKE方式:高

适用场景:

手工方式:小型网络;IKE:小型、中大型网络

——————————————————————————————————————————————————

2.1.2、安全协议

IPSec使用认证头AH和封装安全载荷ESP两种IP传输层协议来提供认证或加密等安全服务。

AH协议:

AH仅支持认证功能,不支持加密功能。AH在数据包IP报头后面添加AH报文头,对数据包和认证密钥进行Hash计算,接收方执行同样的Hash计算并与原计算结果比较,一致有效,不一致数据无效,这样就提供了数据来源认证和数据完整性校验。AH协议的完整性验证范围为整个IP报文。

在这里插入图片描述

ESP协议:

ESP支持认证和加密功能。ESP在数据包的IP报头后面添加ESP报文头,并在数据包后面追加ESP尾。

ESP将数据中的有效载荷进行加密后再封装到数据包中,以保证数据的机密性,但ESP没有对IP头的内容进行保护。

在这里插入图片描述

协议号:AH51,ESP50。
数据源验证:AH、ESP都支持。
数据加密:AH不支持、ESP支持。

——————————————————————————————————————————————————

2.1.3、安全协议报文头结构

AH:

在这里插入图片描述
下一头部:标识AH报文头后面的负载类型。
SPI:用于唯一标识IPSec安全联盟。
序列号:唯一地标识每一个数据包,用于防止重放攻击。
认证数据:用于接收方进行完整性校验。MD5和SHA1验证算法存在安全隐患,建议优先使用SHA2或SM3算法。

ESP:

在这里插入图片描述

——————————————————————————————————————————————————

2.1.4、封装模式

封装模式是指将AH或ESP相关的字段插入到原始IP报文中,以实现对报文的认证和加密,封装模式有传输模式和隧道模式两种。

传输模式:

在传输模式中,AH头或ESP头被插入到IP头与传输层协议头之间,保护TCP/UDP/ICMP负载。由于传输模式未添加额外的IP头,所以原始报文中的IP地址在加密后报文的IP头中可见。

在这里插入图片描述

与AH协议相比,传输模式下,ESP协议的完整性验证范围不包括IP头,无法保证IP头的安全。

隧道模式:

在隧道模式下,AH头或ESP头被插到原始IP头之前,另外生成一个新的报文头放到AH头或ESP头之前,保护IP头和负载。

在这里插入图片描述
与AH协议相比,隧道模式下,ESP协议的完整性验证范围不包括新IP头,无法保证新IP头的安全。

从安全性来讲,隧道模式优于传输模式。它可以完全地对原始IP数据包进行验证和加密。隧道模式下可以隐藏内部IP地址,协议类型和端口。

从性能来讲,隧道模式因为有一个额外的IP头,所以它将比传输模式占用更多带宽。

从场景来讲,传输模式主要应用于两台主机或一台主机和一台VPN网关之间通信;隧道模式主要应用于两台VPN网关之间或一台主机与一台VPN网关之间的通信。

当安全协议同时采用AH和ESP时,AH和ESP协议必须采用相同的封装模式。

——————————————————————————————————————————————————

2.1.5、加密和验证

IPSec提供了两种安全机制:加密和验证。加密机制保证数据的机密性,防止数据在传输过程中被窃听;验证机制能保证数据真实可靠,防止数据在传输过程中被仿冒和篡改。

加密:

IPSec采用对称加密算法对数据进行加密和解密。数据发送方和接收方使用相同的密钥进行加密、解密。

在这里插入图片描述

常用的对称加密算法包括:数据加密标准DES、3DES、先进加密标准AES、国密算法(SM1和SM4),其中DES和3DES算法安全性低,存在风险,不推荐使用。

验证:

IPSec的加密功能,无法验证解密后的信息是否是原始发送的信息或完整。IPSec采用HMAC功能,比较完整性校验值ICV进行数据包完整性和真实性验证。通常情况下,加密和验证通常配合使用。

在这里插入图片描述

常用的验证算法包括:消息摘要DM5、安全散列算法SHA1、SHA2、国密算法SM3,其中DM5、SHA1安全性低,存在风险,不建议使用。

——————————————————————————————————————————————————

2.1.6、IKE安全机制

使用对称密钥进行加密、验证时,如何安全地共享密钥是一个很重要的问题。

通过IKE协议自动协商密钥

IKE采用DH算法在不安全的网络上安全地分发密钥。通信双方通过交换密钥交换材料来计算共享的密钥,即使第三方截获了双方用于计算密钥的所有交换数据,也无法计算出真正的密钥,这样极大地提高了安全性。

IKE协议是基于UDP的应用层协议,它为IPSec提供了自动协商密钥、建立IPSec安全联盟的服务,能够简化IPSec的配置和维护工作。

IKE与IPSec的关系如图所示:对等体之间建立一个IKE SA完成身份验证和密钥信息交换后,在IKE SA的保护下,根据配置的AH/ESP安全协议等参数协商出一对IPSec SA。此后,对等体间的数据将在IPSec隧道中加密传输。

在这里插入图片描述

IKE安全机制

IKE具有一套自保护机制,可以在网络上安全地认证身份、分发密钥、建立IPSec SA。

1、身份认证

预共享密钥认证

通信双方采用共享的密钥对报文进行Hash计算,判断双方的计算结果是否相同。如果相同,则认证通过;否则认证失败。当有1个对等体对应多个对等体时,需要为每个对等体配置预共享的密钥。该方法在小型网络中容易建立,但安全性较低。

数字证书认证

通信双方使用CA证书进行数字证书合法性验证,双方各有自己的公钥(网络上传输)和私钥(自己持有)。发送方对原始报文进行Hash计算,并用自己的私钥对报文计算结果进行加密,生成数字签名。接收方使用发送方的公钥对数字签名进行解密,并对报文进行Hash计算,判断计算结果与解密后的结果是否相同。如果相同,则认证通过;否则认证失败。使用数字证书安全性高,但需要CA来颁发数字证书,适合在大型网络中使用。

数字信封认证

发送方首先随机产生一个对称密钥,使用接收方的公钥对此对称密钥进行加密,发送方用对称密钥加密报文,同时用自己的私钥生成数字签名。接收方用自己的私钥解密数字信封得到对称密钥,再用对称密钥解密报文,同时根据发送方的公钥对数字签名进行解密,验证发送方的数字签名是否正确。如果正确,则认证通过;否则认证失败。数字信封认证用于设备需要符合国家密码管理局要求时使用,此认证方法只能在IKEv1的主模式协商过程中支持。

IKE支持的认证算法有:MD5、SHA1、SHA2-256、SHA2-384、SHA2-512、SM3。

2、身份保护

身份数据在密钥产生之后加密传送,实现了对身份数据的保护。

IKE支持的加密算法有:DES、3DES、AES-128、AES-192、AES-256、SM1和SM4。

3、DH

DH是一种公共密钥交换方法,它用于产生密钥材料,并通过ISAKMP消息在发送和接收设备之间进行密钥材料交换。然后,两端设备各自计算出完全相同的对称密钥。该对称密钥用于计算加密和验证的密钥。在任何时候,通信双方都不交换真正的密钥。DH密钥交换是IKE的精髓所在。

4、PFS

完善的前向安全性PFS通过执行一次额外的DH交换,确保即使IKE SA中使用的密钥被泄露,IPSec SA中使用的密钥也不会受到损害。

MD5和SHA1认证算法不安全,建议使用SHA2-256、SHA2-384、SHA2-512、SM3算法。
DES和3DES加密算法不安全,建议使用AES或SM算法。

——————————————————————
IKE版本

IKE协议分IKEv1和IKEv2两个版本。IKEv2与IKEv1相比有以下优点:

简化了安全联盟的协商过程,提高了协商效率

IKEv1使用两个阶段为IPSec进行密钥协商并建立IPSec SA:

第一阶段,通信双方协商和建立IKE本身使用的安全通道,建立一个IKE SA。
第二阶段,利用这个已通过了认证和安全保护的安全通道,建立一对IPSec SA。

IKEv2则简化了协商过程:

在一次协商中可直接生成IPSec的密钥并建立IPSec SA。

修复了多处公认的密码学方面的安全漏洞,提高了安全性能。

——————————————————————————————————————————————————

2.2、IPSec基本原理

IPSec通过在IPSec对等体间建立双向安全联盟形成一个安全互通的IPSec隧道,并通过定义IPSec保护的数据流将要保护的数据引入该IPSec隧道,然后对流经IPSec隧道的数据通过安全协议进行加密和验证,进而实现在Internet上安全传输指定的数据。

IPSec安全联盟可以手工建立,也可以通过IKEv1或IKEv2协议自动协商建立。

——————————————————————————————————————————————————

2.2.1、定义IPSec保护的数据流

IPSec是基于定义的感兴趣流触发对特定数据的保护,至于什么样的数据是需要IPSec保护的,可以通过以下两种方式定义。

ACL方式

由ACL来指定要保护的数据流范围,筛选出需要进入IPSec隧道的报文,ACL规则允许(permit)的报文将被保护,根据IP地址、端口、协议类型等对报文进行过滤进而灵活制定IPSec的保护方法。

路由方式

通过IPSec虚拟隧道接口建立IPSec隧道,将所有路由到IPSec虚拟隧道接口的报文都进行IPSec保护,根据该路由的目的地址确定哪些数据流需要IPSec保护。

路由方式优点:

通过路由将需要IPSec保护的数据流引到虚拟隧道接口,不需使用ACL定义待加/解密的流量特征,简化了IPSec配置的复杂性。支持动态路由协议。通过GRE over IPSec支持对组播流量的保护。

——————————————————————————————————————————————————

2.2.2、IKEv1协商安全联盟的过程

采用IKEv1协商安全联盟主要分为两个阶段:第一阶段,通信双方协商和建立IKE协议本身使用的安全通道,即建立一个IKE SA;第二阶段,利用第一阶段已通过认证和安全保护的安全通道,建立一对用于数据安全传输的IPSec安全联盟。

IKEv1协商阶段1

IKEv1协商阶段1的目的是建立IKE SA。IKE SA建立后对等体间所有ISAKMP消息都将通过加密和验证,这条安全通道可以保证IKEv1第二阶段的协商能够安全进行。

IKEv1协商阶段1支持两种协商模式:主模式(Main Mode)和野蛮模式(Aggressive Mode)。

主模式包含三次双向交换,用到了六条ISAKMP信息。

消息1和2用于提议交换:发起方发送一个或多个IKE安全提议,响应方查找最先匹配的IKE安全提议,并将这个IKE安全提议回应给发起方。匹配的原则为协商双方具有相同的加密算法、认证算法、认证方法和Diffie-Hellman组标识。

消息3和4用于密钥信息交换:双方交换Diffie-Hellman公共值和nonce值,用于IKE SA的认证和加密密钥在这个阶段产生。

消息5和6用于身份和认证信息交换:双方进行身份认证和对整个主模式交换内容的认证。

野蛮模式只用到三条信息,前两条消息1和2用于协商IKE安全提议,交换Diffie-Hellman公共值、必需的辅助信息以及身份信息,并且消息2中还包括响应方发送身份信息供发起方认证,消息3用于响应方认证发起方。

在这里插入图片描述

与主模式相比,野蛮模式减少了交换信息的数目,提高了协商的速度,但是没有对身份信息进行加密保护。

IKEv1协商阶段2

IKEv1协商阶段2的目的就是建立用来安全传输数据的IPSec SA,并为数据传输衍生出密钥。这一阶段采用快速模式(Quick Mode)。该模式使用IKEv1协商阶段1中生成的密钥对ISAKMP消息的完整性和身份进行验证,并对ISAKMP消息进行加密,故保证了交换的安全性。

在这里插入图片描述

IKEv1协商阶段2通过三条ISAKMP消息完成双方IPSec SA的建立:

1.协商发起方发送本端的安全参数和身份认证信息。

安全参数包括被保护的数据流和IPSec安全提议等需要协商的参数。身份认证信息包括第一阶段计算出的密钥和第二阶段产生的密钥材料等,可以再次认证对等体。

2.协商响应方发送确认的安全参数和身份认证信息并生成新的密钥。IPSec SA数据传输需要的加密、验证密钥由第一阶段产生的密钥、SPI、协议等参数衍生得出,以保证每个IPSec SA都有自己独一无二的密钥。如果启用PFS,则需要再次应用DH算法计算出一个共享密钥,然后参与上述计算,因此在参数协商时要为PFS协商DH密钥组。

3.发送方发送确认信息,确认与响应方可以通信,协商结束。

——————————————————————————————————————————————————

2.2.3、IKEv2协商安全联盟的过程

采用IKEv2协商安全联盟比IKEv1协商过程要简化的多。IKEv2正常情况使用2次交换共4条消息就可以完成一对IPSec SA的建立,如果要求建立的IPSec SA大于一对时,每一对IPSec SA只需额外增加1次创建子SA交换,也就是2条消息就可以完成。

IKEv2定义了三种交换:初始交换、创建子SA交换以及通知交换。

初始交换

IKEv2通过初始交换就可以完成第一对IPSec SA的协商建立。初始交换包含两次交换四条消息。

在这里插入图片描述

消息1和2属于第一次交换,明文方式完成IKE SA的参数协商,包括协商加密和验证算法,交换临时随机数和DH交换。IKE_SA_INIT交换后生成一个共享密钥材料,可以衍生出IPSec SA的所有密钥。

消息3和4属于第二次交换,以加密方式完成身份认证、对前两条信息的认证和IPSec SA的参数协商。

创建子SA交换

当一个IKE SA需要创建多对IPSec SA时,需要使用创建子SA交换来协商多于一对的IPSec SA。另外,创建子SA交换还可以用于IKE SA的重协商。

通知交换

运行IKE协商的两端有时会传递一些控制信息,例如错误信息或者通告信息,这些信息在IKEv2中是通过通知交换完成的。

——————————————————————————————————————————————————

2.3、IPSec增强原理

L2TP over IPSec、GRE over IPSec、IPSec多实例、Efficient VPN等。

L2TP over IPSec,即先用L2TP封装报文再用IPSec封装,这样可以综合两种VPN的优势,通过L2TP实现用户验证和地址分配,并利用IPSec保障通信的安全性。

GRE over IPSec可利用GRE和IPSec的优势,通过GRE将组播、广播和非IP报文封装成普通的IP报文,通过IPSec为封装后的IP报文提供安全地通信。当网关之间采用GRE over IPSec连接时,先进行GRE封装,再进行IPSec封装。

很多的隧道技术是不具备认证加密功能的,都是配合IPSec来实现加密的。

——————————————————————————————————————————————————

2.4、IPSec可靠性

为提高网络可靠性,企业分支一般通过两条或多条链路与企业总部建立IPSec连接,如何在一条链路故障后将流量及时切换到其他链路,以保证业务的正常运行就成为需要解决的问题。为此,设备提供IPSec主备链路冗余备份和IPSec多链路冗余备份两种功能。

IPSec主备链路冗余备份

如图:RA通过主备两条链路连接RB,在RA上创建两个Tunnel接口,借用同一个物理接口的IP地址,分别应用不同的IPSec安全策略,在RB的两个物理接口上也分别应用不同的IPSec安全策略,这样可以创建主备两条IPSec隧道。正常情况下,流量通过由主链路和Tunnel1接口建立的IPSec隧道传输;当主链路故障时,RA感知变化,采用Tunnel2接口与RB的备份链路建立IPSec隧道,旧的IPSec隧道被拆除,流量切换也随之完成。

在这里插入图片描述

IPSec多链路冗余备份

如图:RA通过主备两条链路连接RB。系统在RA的物理接口与RB的Tunnel接口之间建立一个IPSec隧道,流量通过Tunnel接口进行IPSec处理,然后通过路由表选择物理接口发送。当主物理链路失效时,其路由变为不可达,流量自然切换到备用链路。这种情况下,IPSec隧道不需要进行重协商,故可快速完成流量切换。

在这里插入图片描述

通过Tunnel接口进行链路冗余备份可以实现多条链路的冗余备份,而且与主备链路冗余备份相比,配置更简单,流量切换速度更快。

——————————————————————————————————————————————————

2.5、IPSec应用场景

——————————————————————————————————————————————————

2.5.1、通过IPSec VPN实现局域网安全互联

点到点VPN—IPSec

点到点VPN也称为局域网到局域网VPN,网关到网关VPN,主要用于两个网关之间建立IPSec隧道,从而实现局域网之间安全地互访。分支与总部互联主要有如下场景。

在这里插入图片描述

点到点VPN两端网关必须提供固定的IP地址或固定的域名。通信双方都可以主动发起连接。

Router支持同时做IPSec网关和NAT网关。当两个IPSec网关之间存在NAT设备时,Router支持IPSec NAT穿越。

点到点VPN—L2TP over IPSec

L2TP over IPSec,即先将报文用L2TP封装再用IPSec传输。L2TP和IPSec这两种VPN经常一起使用,可以实现优势互补。L2TP用于拨号并获取总部内网的IP地址,但是L2TP本身不够安全,正好可以通过IPSec保障通信的安全性。L2TP over IPSec适用于分支网络通过LAC拨号接入VPN并进行安全访问的场景。LAC侧对用户的身份进行验证,LNS侧还可以对用户的身份进行二次验证。验证通过后由LNS为接入用户分配总部内网的IP地址。

在这里插入图片描述

点到点VPN-GRE over IPSec

GRE是常用的隧道封装协议,可以很好的实现对于组播、广播和非IP报文的数据承载,但是GRE只有简单的密码验证,没有加密功能,数据传输安全性较低。IPSec虽具备很高的数据安全传输能力,但其本身不支持封装组播、广播和非IP报文。当需要在IPSec VPN上传输组播、广播和非IP报文时,如在总部和分支之间开视频会议等组播业务,可以采用GRE over IPSec。GRE over IPSec利用了GRE和IPSec的优势,利用GRE将组播、广播和非IP报文封装成普通的IP报文,通过IPSec将封装后的IP报文安全地传输。

在这里插入图片描述

GRE over IPSec使用的封装模式为可以是隧道模式也可以是传输模式。因为隧道模式跟传输模式相比多增加了IPSec头,导致报文长度更长,更容易导致分片。所以推荐采用传输模式GRE over IPSec。

点到多点VPN(Hub-Spoke VPN)

实际组网中最常见的是公司总部与多个分支机构通过点到多点IPSec VPN互通。

在这里插入图片描述

总部的IP地址通常为固定公网IP地址或提供固定域名,分支的IP地址可以为静态公网IP也可以为内网IP或动态公网IP。此时网络内数据流量可能存在如下几种情况:

各分支机构之间不需要通信:此时只需要在总部和分支之间部署IPSec VPN。

各分支机构之间需要通信:此时,若分支采用动态的公网地址接入Internet时,部署传统的IPSec VPN将存在一个问题,即分支与分支间无法直接通信,所有分支与分支间的通信数据只能由总部中转。而总部在中转分支间的通信流量时会消耗Hub的CPU及内存资源,造成资源紧张;另外,总部要对分支间的流量进行封装和解封装,会引入额外的网络延时。

通过部署DSVPN可以解决Hub-Spoke组网方式下动态IP的分支之间建立VPN隧道的难题。在部署DSVPN的同时绑定IPSec安全框架,即部署DSVPN over IPSec,以此达到安全通信的目的。

——————————————————————————————————————————————————

2.5.2、通过IPSec VPN实现移动用户远程安全接入

远程接入是指出差员工在非固定办公地点,例如酒店、机场等场所,通过不安全的公网接入核心网络,并访问核心网中的内部资源。由于远程接入是通过不安全的网络接入的,因此关键是要保证远程访问的安全性。为此,可通过部署IPSec VPN,在用户终端和核心网网关之间构建IPSec隧道,通过IPSec来保证数据的安全可靠传输。

移动用户通过Windows自带拨号软件或其他拨号软件通过拨号接入企业网络。L2TP具有很好的用户认证功能,但没有加密功能,不够安全。为此可部署L2TP over IPSec,在企业网关Router和PC之间建立L2TP over IPSec隧道,报文将先由L2TP封装再用IPSec加密后传输,保障了通信的安全性。

在这里插入图片描述

——————————————————————————————————————————————————

2.5.3、通过Efficient VPN实现多分支安全接入

大量的分支机构和出差员工与总部之间建立IPSec隧道时,必须在分支网关和总部网关进行许多相似或者重复的IPSec配置及其他网络资源配置。Efficient VPN方案采用将复杂配置集中在总部网关上、各个分支网关的配置尽量简单的方法,将管理员从IPSec VPN复杂的配置和维护中解脱出来,实现了配置的简化,提高了可维护性。

在这里插入图片描述

——————————————————————————————————————————————————

2.6、IPSec注意事项

License支持

如果需要支持国家密码管理局规定的IPSec协议规范中的SM1算法,设备的SIC卡槽位上必须插有网络数据加密卡NDE或高性能国密卡SMXH。但Efficient VPN不支持国家密码管理局规定的IPSec协议规范。

对于支持Efficient VPN特性的设备,根据设备的不同,可能需要购买Efficient VPN特性的License支持。

对性能的影响

DH组值的大小对IKE协商性能(如隧道新建速率等)有影响,且DH组值越大,对IKE协商性能的影响就越大(如导致隧道新建速率显著降低)。

当设备IPSec隧道数目大于设备规格的50%时,执行命令undo ipsec policy或undo ipsec profile可能会导致设备出现短时间CPU占用率高的告警,在所有SA清除后,CPU占用率会恢复正常。

特性自身的使用限制

SM1、SM3、SM4算法只能在IKEv1协商过程中使用。

RSA数字信封认证”认证方法由中国国家密码管理局定义,只能在IKEv1的主模式协商过程中使用,不能在IKEv1野蛮模式及IKEv2的协商过程中使用。

与NAT结合的使用限制

如果应用了IPSec安全策略组的接口上同时配置了NAT,则由于设备先执行NAT相关配置,可能会导致IPSec配置不生效。

如果接口只做IPSec不做NAT,则需要将NAT引用的相关ACL规则设置为“deny”,并将规则的目的IP地址配置为IPSec策略引用的ACL规则的目的IP地址。

如果接口只做NAT不做IPSec,则IPSec策略引用的ACL规则的目的IP地址不可引用NAT转换后的IP地址。

如果接口同时做IPSec和NAT,则IPSec策略引用的ACL规则的目的IP地址需要引用NAT转换后的IP地址。

——————————————————————————————————————————————————

2.7、IPSce实验

——————————————————————————————————————————————————

2.7.1、手工方式建立IPSec隧道示例

FW1为企业分支网关,FW2为企业总部网关,分支与总部通过公网建立通信。分支子网为192.168.1.0/24,总部子网为192.168.100.0/24。

企业希望对分支子网与总部子网之间相互访问的流量进行安全保护。分支与总部通过公网建立通信,可以在分支网关与总部网关之间建立一个IPSec隧道来实施安全保护。由于维护网关较少,可以考虑采用手工方式建立IPSec隧道。

在这里插入图片描述

——————————————————————————————

配置接口的IP地址和到对端的静态路由,保证两端路由可达。

FW1:

firewall zone trust 
add int g1/0/1
firewall zone untrust 
add int g1/0/0                             

security-policy
default action permit       **先开启策略大招**

int g1/0/0
ip add 1.1.1.1 30
service-manage ping permit
int g1/0/1
ip add 192.168.1.254 24
service-manage ping permit


ip route-static 2.1.1.0 30 1.1.1.2
ip route-static 192.168.100.0 24 1.1.1.2

FW2:

firewall zone trust 
add int g1/0/1
firewall zone untrust 
add int g1/0/0

security-policy
default action permit    

int g1/0/0
ip add 2.1.1.1 30
service-manage ping permit
int g1/0/1
ip add 192.168.100.254 24
service-manage ping permit


ip route-static 1.1.1.0 30 2.1.1.2 
ip route-static 192.168.1.0 24 2.1.1.2

AR1:

int g0/0/0
ip add 1.1.1.2 30
int g0/0/1
ip add 2.1.1.2 30

ip route-static 192.168.1.0 24 1.1.1.1
ip route-static 192.168.100.0 24 2.1.1.1

——————————————————————————————

配置ACL,定义需要IPSec保护的数据流

FW1:

acl number 3100
rule permit ip source 192.168.1.0 0.0.0.255 destination 192.168.100.0 0.0.0.255      

FW2:

acl number 3100
rule permit ip source 192.168.100.0 0.0.0.255 destination 192.168.1.0 0.0.0.255

——————————————————————————————

创建IPSec安全提议

IPSec安全提议是安全策略或者安全框架的一个组成部分,它包括IPSec使用的安全协议、认证/加密算法以及数据的封装模式,定义了IPSec的保护方法。

FW1:

ipsec proposal Sec                               **安全提议名Sec**
esp authentication-algorithm sha2-256            **配置ESP协议使用的认证算法,默认就是sha2-256**
esp encryption-algorithm aes-128                 **配置ESP协议使用的加密算法,默认是AES-256**

FW2:

ipsec proposal Sec
esp authentication-algorithm sha2-256      
esp encryption-algorithm aes-128

——————————————————————————————

创建安全策略

手工方式创建安全策略

FW1:

ipsec policy Sec 10 manual             **创建安全策略,Sec安全策略名字,10是序号,manual手工方式**
security acl 3100                      **安全策略引用ACL**
proposal Sec                           **安全策略引用安全提议**
tunnel remote 2.1.1.1                  **配置IPSec隧道的对端地址**
tunnel local 1.1.1.1                   **配置IPSec隧道的本端地址**
sa spi outbound esp 123456             **配置出方向SASPI**      
sa spi inbound esp 654321              **配置入方向SASPI**        
sa string-key outbound esp huawei      **配置出方向ESP协议的认证密钥**
sa string-key inbound esp huawei       **配置入方向ESP协议的认证密钥**              

配置策略:引用ACL、引用安全提议、配置两端隧道地址、配置出方向/入方向SPI和ESP认证密钥。

安全协议采用ESP协议时,如果选择以字符串形式输入认证密钥,设备将自动生成ESP的加密密钥,用户无需再次配置ESP加密密钥。

FW2:

ipsec policy Sec 10 manual           
security acl 3100                    
proposal Sec                         
tunnel remote 1.1.1.1                  
tunnel local 2.1.1.1                   
sa spi outbound esp 654321               
sa spi inbound esp 123456            
sa string-key outbound esp huawei      
sa string-key inbound esp huawei              

执行:dis ipsec policy会显示所配置的信息

——————————————————————————————

接口引用策略

FW1:

int g1/0/0
ipsec policy Sec

FW2:

int g1/0/0
ipsec policy Sec

——————————————————————————————

配置完成后,在主机PC1上执行ping操作仍然可以ping通主机PC2。执行display ipsec statistics可以查看数据包的统计信息。

display ipsec proposal:查看IPSec提议配置参数

在这里插入图片描述

display ipsec policy brief:查看IPSec策略摘要

在这里插入图片描述
display ipsec policy:查看指定IPSec策略详细信息

在这里插入图片描述

隐藏了真实IP。

在这里插入图片描述

——————————————————————————————————————————————————

2.7.2、IKE协商方式建立IPSec隧道示例

FW1为企业分支网关,FW2为企业总部网关,分支与总部通过公网建立通信。分支子网为192.168.1.0/24,总部子网为192.168.100.0/24。企业希望对分支子网与总部子网之间相互访问的流量进行安全保护。分支与总部通过公网建立通信,可以在分支网关与总部网关之间建立一个IPSec隧道来实施安全保护。

在这里插入图片描述

——————————————————————————————

配置接口的IP地址和到对端的静态路由,保证两端路由可达。(略)

——————————————————————————————

配置ACL,定义需要IPSec保护的数据流

FW1:

acl number 3100
rule permit ip source 192.168.1.0 0.0.0.255 destination 192.168.100.0 0.0.0.255

FW2:

acl number 3100
rule permit ip source 192.168.100.0 0.0.0.255 description 192.168.1.0 0.0.0.255

——————————————————————————————

配置安全提议

FW1:

ipsec proposal Sec
esp authentication-algorithm sha2-256
esp encryption-algorithm aes-128

FW2:

ipsec proposal Sec
esp authentication-algorithm sha2-256
esp encryption-algorithm aes-128

——————————————————————————————

配置IKE对等体

IKE安全提议是IKE对等体的一个组成部分,定义了对等体进行IKE协商时使用的参数,包括加密算法、认证方法、认证算法、DH组和IKE安全联盟的生存周期。

FW1:

IKE安全提议:

ike proposal 5
authentication-method pre-share                   **配置IKE认证方法Pre-share预共享,不配置默认为pre-share**                          
encryption-algorithm aes-128                      **配置IKE协商时所使用的加密算法**
authentication-algorithm sha2-256                 **配置IKE协商时所使用的认证算法**
dh group14                                        **配置IKE协商时采用的DH组,默认dh group14组**

IKE对等体(默认配置,配置预共享密钥和对端ID):

ike peer spub
undo version 1                                    **配置IKE对等体使用的IKE协议版本号,默认同时支持V1V2**
ike-proposal 5                                    **引用IKE安全提议**
pre-shared-key huawei@123                         **配置对等体IKE协商采用预共享密钥认证时所使用的预共享密钥**
remote-address 2.1.1.1                            **配置IKE协商时的对端IP地址**

FW2:

IKE安全提议:

ike proposal 5
encryption-algorithm aes-128
authentication-algorithm sha2-256
dh group14

IKE对等体(默认配置,配置预共享密钥和对端ID):

ike peer spub
undo version 1
ike-proposal 5
pre-shared-key huawei@123
remote-address 1.1.1.1

——————————————————————————————

创建安全策略

FW1:

ipsec policy Sec1 10 isakmp                       **isakmp,采用IKE方式**
ike-peer spub                                     **引用IKE对等体**
proposal Sec                                      **引用安全提议**
security acl 3100                                 **引用ACL**

FW2:

ipsec policy Sec1 10 isakmp
ike-peer spub
proposal Sec
security acl 3100

——————————————————————————————

接口引用安全策略组

FW1:

interface gigabitethernet 1/0/0
ipsec policy Sec1

FW2:

interface gigabitethernet 1/0/0
ipsec policy Sec1

——————————————————————————————

配置检查

配置完,在PC1 Ping PC2仍然可以Ping通,之间数据传输被加密。执行命令,display ipsec statistics可以查看数据包的统计信息。

在这里插入图片描述

在这里插入图片描述

——————————————————————————————————————————————————

2.7.3、Tunnel接口建立IPSec隧道示例

FW1为企业分支网关,FW2为企业总部网关,分支与总部通过公网建立通信。分支子网为192.168.1.0/24,总部子网为192.168.100.0/24。企业希望对分支子网与总部子网之间相互访问的流量进行安全保护。分支与总部通过公网建立通信,可以在分支网关与总部网关之间建立一个IPSec隧道来实施安全保护。由于分支子网较为庞大,有大量需要IPSec保护的数据流,可基于虚拟隧道接口方式建立IPSec隧道,对Tunnel接口下的流量进行保护,不需使用ACL定义待保护的流量特征。

在这里插入图片描述

——————————————————————————————

配置接口的IP地址和到对端的静态路由,保证两端路由可达。(略)

FW1/FW2不需配置去往192.168.100.0/24 192.168.1.0/24段的静态路由。

——————————————————————————————

创建IPSec安全提议

FW1:
ipsec proposal Sec
esp au sha2-256
esp en aes-128

FW2:
ipsec proposal Sec
esp au sha2-256
esp en aes-128

——————————————————————————————

创建IKE对等体

FW1:
ike proposal 5
au sha2-256
en aes-128
dh group14

ike peer spub
undo version 2
ike-proposal 5
pre-sh huawei@123

FW2:
ike proposal 5
au sha2-256
en aes-128
dh group14

ike peer spub
undo version 2
ike-proposal 5
pre-sh huawei@123

——————————————————————————————

创建安全框架

FW1:
ipsec profile ipsvpn
proposal Sec
ike-peer spub

FW2:
ipsec profile ipsvpn
proposal Sec
ike-peer spub

——————————————————————————————

接口上应用各自的安全框架

FW1:
int Tunnel 0
ip address 192.168.200.1 24
tunnel-protocol ipsec
source 1.1.1.1
destination 2.1.1.1
ipsec profile ipsvpn


FW2:
int Tunnel 0
ip address 192.168.200.2 24
tunnel-protocol ipsec
source 2.1.1.1
destination 1.1.1.1
ipsec profile ipsvpn

——————————————————————————————

将需要IPSec保护的数据流引到Tunnel接口

FW1:
ip route-static 192.168.100.0 24 Tunnel 0

FW2:
ip route-static 192.168.1.0 24 Tunnel 0

——————————————————————————————

防火墙的Tunnel 0接口加入Trust

FW1:
firewall zone trust
add interface Tunnel0

FW2:
firewall zone trust
add interface Tunnel0

——————————————————————————————

验证

执行display ike sa查看到状态为RD的阶段一和阶段二SA信息、Conn-ID保持稳定,且执行命令display ipsec sa可以查看到IPSec SA的信息,说明IPSec隧道已建立成功。也可以在隧道端PING目的端地址。

在这里插入图片描述

在这里插入图片描述

display ike sa会显示所配置的信息

——————————————————————————————————————————————————

2.7.4、安全策略组方式与分支建立多条IPSec隧道示例

FW2和FW3为企业分支网关,FW1为企业总部网关,分支与总部通过公网建立通信,并且各网关的IP地址均固定。分支A子网为192.168.1.0/24,分支B子网为192.168.2.0/24,总部子网为192.168.100.0/24。

对分支子网与总部子网之间相互访问的流量进行安全保护。分支与总部通过公网建立通信,可以在分支网关与总部网关之间建立IPSec隧道来实施安全保护。由于总部网关可以指定分支网关的IP地址,在FW1上部署安全策略组,就可以向各分支网关发起IPSec协商或接入各分支网关发起的IPSec协商,完成多条IPSec隧道的建立。

在这里插入图片描述

——————————————————————————————

1、配置接口的IP地址和到对端的静态路由,保证两端路由可达。

配置接口路由(略)

——————————————————————————————

2、配置ACL,以定义需要IPSec保护的数据流。

在FW2上配置ACL,定义由子网192.168.1.0/24去子网192.168.100.0/24的数据流。
在FW3上配置ACL,定义由子网192.168.2.0/24去子网192.168.100.0/24的数据流。
在FW1上配置ACL,定义由子网192.168.100.0/24分别去子网192.168.1.0/24和子网192.168.2.0/24的数据流。

FW2:
acl number 3100
rule permit ip source 192.168.1.0 0.0.0.255 destination 192.168.100.0 0.0.0.255

FW3:
acl number 3100
rule permit ip source 192.168.2.0 0.0.0.255 destination 192.168.100.0 0.0.0.255

FW1:
acl number 3100
rule permit ip source 192.168.100.0 0.0.0.255 destination 192.168.1.0 0.0.0.255
acl number 3101
rule permit ip source 192.168.100.0 0.0.0.255 destination 192.168.2.0 0.0.0.255

——————————————————————————————

3、配置IPSec安全提议,定义IPSec的保护方法。

FW2:
ipsec proposal Sec
esp aut sha2-256
esp enc aes-128

FW3:
ipsec proposal Sec
esp aut sha2-256
esp enc aes-128

FW1:
ipsec proposal Sec
esp aut sha2-256
esp enc aes-128

——————————————————————————————

4、配置IKE对等体,定义对等体间IKE协商时的属性。

FW2:
ike proposal 5
en aes-128
au sha2-256
dh group14

ike peer rut
undo version 1
ike-proposal 5
pre-shared-key huawei@123
remote-address 3.1.1.1

FW3:
ike proposal 5
en aes-128
au sha2-256
dh group14

ike peer rut
undo version 1
ike-proposal 5
pre-shared-key huawei@123
remote-address 3.1.1.1

FW1:
ike propo 5
en aes-128
au sha2-256
dh group14

ike peer rut1
undo ver 1
ike-propo 5
pre huawei@123
remo 1.1.1.1

ike peer rut2
undo version 1
ike-prop 5
pre huawei@123
rem 2.1.1.1

——————————————————————————————

5、分别在FW2和FW3上创建安全策略,确定对何种数据流采取何种保护方法。在FW1上创建安全策略组,分别确定对FW2与FW1、FW3与FW1之间的数据流采取何种保护方法。

FW2:
ipsec policy ipvpn 10 isakmp
ike-peer rut
proposal Sec
security acl 3100

FW3:
ipsec policy ipvpn 10 isakmp
ike-peer rut
proposal Sec
security acl 3100

FW1:
ipsec policy ipvpn 10 isakmp
ike-peer rut1
proposal Sec
security acl 3100

ipsec policy ipvpn 11 isakmp
ike-peer rut2
proposal Sec
security acl 3101

——————————————————————————————

6、在接口上应用安全策略组,使接口具有IPSec的保护功能。

FW2:
int g1/0/0
ipsec policy ipvpn

FW3:
int g1/0/0
ipsec policy ipvpn

FW1:
int g1/0/0
ipsec policy ipvpn

——————————————————————————————

验证

配置成功后,在PC1和PC4分别PingPC2,仍然可以Ping通,之间数据被加密,再执行dis ike sa,会显示相应信息。

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

——————————————————————————————————————————————————

2.7.5、采用策略模板方式与分支建立多条IPSec隧道示例

FW2和FW3为企业分支网关,FW1为企业总部网关,分支与总部通过公网建立通信,FW2为固定IP地址接入公网,FW3为动态地址接入公网。分支A子网为192.168.1.0/24,分支B子网为192.168.2.0/24,总部子网为192.168.100.0/24。

在这里插入图片描述
——————————————————————————————

配置接口的IP地址和到对端的静态路由,保证两端路由可达(略)

FW3动态获取的话,路由的下一条地址为出接口G1/0/0,实验中还是上个实验一样,用的固定IP。

——————————————————————————————

配置ACL,以定义需要IPSec保护的数据流

分别在FW2和FW3上配置ACL,定义各自要保护的数据流,FW1采用策略模板创建安全策略,ACL是可选操作。

FW2:
acl number 3100
rule permit ip source 192.168.1.0 0.0.0.255 destination 192.168.100.0 0.0.0.255

FW3:
acl number 3100
rule permit ip source 192.168.2.0 0.0.0.255 destination 192.168.100.0 0.0.0.255

——————————————————————————————

配置IPSec安全提议,定义IPSec的保护方法

FW2:
ipsec proposal Sec
esp aut sha2-256
esp enc aes-128

FW3:
ipsec proposal Sec
esp aut sha2-256
esp enc aes-128

FW1:
ipsec proposal Sec
esp aut sha2-256
esp enc aes-128

——————————————————————————————
配置IKE对等体,定义对等体间IKE协商时的属性

FW2使用固定地址接入,采用IP地址进行验证。FW3使用动态地址接入采用名称进行验证。

在FW1上配置身份过滤集,指定FW2和FW3接入,避免其他非法发起方与FW1建立IPSec隧道。FW2采用IP地址检查。对FW3采用名称检查。

FW2:
ike proposal 5
en aes-128
au sha2-256
dh group14

ike peer rut
undo version 1
ike-proposal 5
pre-shared-key huawei@123
remote-address 3.1.1.1

FW3:
ike proposal 5
en aes-128
au sha2-256
dh group14

**FW3使用动态地址接入,配置IKE协商时的本端名称为huawei,本端ID类型为FQDN**

ike local-name huawei
ike peer rut
undo version 1
ike-proposal 5
pre-shared-key huawei@123
local-id-type fqdn
remote-address 3.1.1.1

FW1:
ike proposal 5
en aes-128
au sha2-256
dh group14

**FW1作为IKE协商响应方,采用策略模板配置安全策略,不需要配置remote-address**

ike peer rut1
undo version 1
ike-proposal 5
pre-shared-key huawei@123

在FW1上配置身份过滤集(ENSP V6000没身份过滤集命令)

FW1:
ike identity identity1
ip address 1.1.1.1 30
fqdn huawei

——————————————————————————————

创建安全策略,其中FW1采用策略模板方式创建安全策略

FW2:
ipsec policy ipvpn 10 isakmp
ike-peer rut
proposal Sec
security acl 3100

FW3:
ipsec policy ipvpn 10 isakmp
ike-peer rut
proposal Sec
security acl 3100

**FW1上配置策略模板,并在安全策略中引用该策略模板**

FW1:
ipsec policy-template use1 10
ike-peer rut1
proposal Sec
match ike-identity identity1

ipsec policy ipvpn 10 isakmp template use1

——————————————————————————————

接口上应用各自的安全策略组,使接口具有IPSec的保护功能

FW2:
int G1/0/0
ipsec policy ipvpn

FW3:
int G1/0/0
ipsec policy ipvpn

FW1:
int G1/0/0
ipsec policy ipvpn

——————————————————————————————

  • 0
    点赞
  • 29
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值