IPSec(IP Security)是IETF制定的三层隧道加密协议,它为Internet上传输的数据提供了高质量的、可互操作的、基于密码学的安全保证。特定的通信方之间在IP层通过加密与数据源认证等方式,提供了以下的安全服务:

1. 数据机密性(Confidentiality):IPsec发送方在通过网络传输包前对包进行加密。

2. 数据完整性(Data Integrity):IPsec接收方对发送方发送来的包进行认证,以确保数据在传输过程中没有被篡改。

3. 数据来源认证(Data Authentication):IPsec在接收端可以认证发送IPsec报文的发送端是否合法。

4. 防重放(Anti-Replay):IPsec接收方可检测并拒绝接收过时或重复的报文。

IPSec有两种工作模式,传输模式和隧道模式。

下图是IPSec传输模式,实现点到点通信安全,IPSec隧道起点和终点是通信的两个计算机。

image

下图是IPSec隧道模式,在AR1和AR3之间配置IPSec隧道,实现网络1和网络2之间安全通信,图中标注了PC2发送给PC6的数据包,经过IPSec隧道的封装示意图,可以看到PC2访问PC6的数据包经过加密认证后又使用隧道的起点和终点地址进行了封装。

image  

IPSec隧道模式,这种数据包封装,正好可以被利用在通过Internet连接两个局域网,实现局域网跨Internet通信。通过IPSec隧道模式建立两个局域网安全隧道,这就是IPSec×××。

配置IPSec V P N

下面就使用eNSP搭建如图所示的网络环境,在AR1和AR3上配置IPSec隧道,使得北京和上海的网络能够跨Internet通信。

image

配置IPSecV P N需要在AR1和AR3路由器上进行以下配置。

1. 定义需要保护的数据流,这里采用高级ACL,对要保护的数据流的源/目的IP地址等信息进行限制,仅允许指定的数据流进入IPSec隧道中传输。

2. 确定IPSec安全提议,定义加密通信两端所采用的安全参数(AH或ESP,同时都选用),认证算法(MD5、SHA-1、SHA-2),加密算法(DES、3DES,SM1)。报文封装格式(传输模式或隧道模式)

3. 创建IKE (Internet Key Exchange Protocol,Internet密钥交换协议)对等实体,指定隧道终点地址和进行身份验证的预共享秘钥。

4. 配置安全策略,是两端建立SA(Security Association,安全联盟)的基础信息,包括引用前面定义的数据流保护ACL和IPSec安全提议,配置IPSec隧道的起点和终点IP地址,SA出/入方向的SPI值、SA出/入方向的安全协议的认证秘钥和加密秘钥。

5. 在接口上应用安全策略。

6. 添加到远程网络的路由。

在AR1上的配置。

定义要保护的数据流(感兴趣流)。

[AR1]acl 3000

[AR1-acl-adv-3000]rule permit ip source 10.1.1.0 0.0.0.255 destination 10.1.2.0 0.0.0.255

[AR1-acl-adv-3000]rule deny ip

[AR1-acl-adv-3000]quit

确定IPSec安全提议。

[AR1]ipsec proposal prol --创建安全提议,名称为prol

[AR1-ipsec-proposal-prol]esp authentication-algorithm sha1 --指定身份验证算法

[AR1-ipsec-proposal-prol]esp encryption-algorithm aes-128 --指定数据加密算法

[AR1-ipsec-proposal-prol]quit

[AR1]display ipsec proposal name prol --查看定义的安全提议

IPSec proposal name: prol

Encapsulation mode: Tunnel

Transform : esp-new

ESP protocol : Authentication SHA1-HMAC-96

Encryption AES-128

创建IKE对等实体。

[AR1]ike peer toshanghai v1 --指定对等实体名称和版本

[AR1-ike-peer-toshanghai]pre-shared-key simple 91xueit --预共享秘钥为91xueit

[AR1-ike-peer-toshanghai]remote-address 20.1.2.1 --隧道终点IP地址

[AR1-ike-peer-toshanghai]quit

创建IPSec安全策略。

[AR1]ipsec policy policy1 10 ? --策略名policy1 指定索引号10

isakmp Indicates use IKE to establish the IPSec SA --使用IKE建立IPSec安全联盟

manual Indicates use manual to establish the IPSec SA --人工建立IPSec安全联盟

<cr> Please press ENTER to execute command

[AR1]ipsec policy policy1 10 isakmp

[AR1-ipsec-policy-isakmp-policy1-10]ike-peer toshanghai --指定IKE对等实体

[AR1-ipsec-policy-isakmp-policy1-10]proposal prol --指定安全提议

[AR1-ipsec-policy-isakmp-policy1-10]security acl 3000 --指定感兴趣流

[AR1-ipsec-policy-isakmp-policy1-10]quit

把IPSec绑定到物理接口。

[AR1]interface GigabitEthernet 0/0/0

[AR1-GigabitEthernet0/0/0]ipsec policy policy1

[AR1-GigabitEthernet0/0/0]quit

添加到上海网络的路由,注意:下一跳是路由器AR1的GE 0/0/0接口地址。

[AR1]ip route-static 10.1.2.0 24 20.1.1.2

在AR3上的配置。

定义要保护的数据流。

[AR3]acl 3000

[AR3-acl-adv-3000]rule permit ip source 10.1.2.0 0.0.0.255 destination 10.1.1.0 0.0.0.255

[AR3-acl-adv-3000]rule deny ip

[AR3-acl-adv-3000]quit

确定IPSec安全提议。

[AR3]ipsec proposal prol

[AR3-ipsec-proposal-prol]esp authentication-algorithm sha1

[AR3-ipsec-proposal-prol]esp encryption-algorithm aes-128

[AR3-ipsec-proposal-prol]quit

创建IKE对等实体。

[AR3]ike peer tobeijing v1

[AR3-ike-peer-tobeijing]pre-shared-key simple 91xueit --这个秘钥一定要和AR1定义的相同

[AR3-ike-peer-tobeijing]remote-address 20.1.1.1

[AR3-ike-peer-tobeijing]quit

创建IPSec安全策略。

[AR3]ipsec policy policy1 10 isakmp

[AR3-ipsec-policy-isakmp-policy1-10]ike-peer tobeijing

[AR3-ipsec-policy-isakmp-policy1-10]proposal prol

[AR3-ipsec-policy-isakmp-policy1-10]security acl 3000

[AR3-ipsec-policy-isakmp-policy1-10]quit

把IPSec绑定到物理接口。

[AR3]interface GigabitEthernet 0/0/0

[AR3-GigabitEthernet0/0/0]ipsec policy policy1

[AR3-GigabitEthernet0/0/0]quit

添加到上海网络的路由,注意:下一跳是路由器AR1的GE 0/0/0接口地址。

[AR3]ip route-static 10.1.1.0 24 20.1.2.2

抓包分析IPSec隧道中的数据包格式。如图所示,右击AR2路由器,点击“数据抓包”,点击“GE 0/0/0”接口。

开始抓包后,PC1 ping PC2,观察捕获的数据包,查看IPSec隧道中的数据包,可以看到PC1发送给PC2中的数据包被封装在安全载荷中,不能看到数据包的内网地址信息了。

image

基于tunnel接口的IPSec V P N

还有一种IPSecV P N,就是基于Tunnel接口的IPSecV P N,先创建连接局域网的隧道接口,添加到局域网的路由,然后在将IPSec策略绑定到隧道接口,就不用使用ACL确定对哪些数据流进行IPSec保护。

实验环境如图所示, 在AR1和AR3配置基于Tunnel接口的IPSecV P N,通过Internet连接北京和上海两个网络。

image

在AR1上的配置。

[AR1]ipsec proposal prop --创建安全提议,名称为prop

[AR1-ipsec-proposal-prop]quit --使用默认参数

[AR1]ike peer toshanghai v2 --创建IKE对等实体

[AR1-ike-peer-toshanghai]peer-id-type ?

ip Select IP address as the peer ID --选择IP地址作为对等ID

name Select name as the peer ID

[AR1-ike-peer-toshanghai]peer-id-type ip

[AR1-ike-peer-toshanghai]pre-shared-key simple 91xueit --指定预共享秘钥

[AR1-ike-peer-toshanghai]quit

[AR1]ipsec profile profile1 --创建安全框架

[AR1-ipsec-profile-profile1]proposal prop --指定安全提议

[AR1-ipsec-profile-profile1]ike-peer toshanghai --指定IKE对等实体

[AR1-ipsec-profile-profile1]quit

[AR1]interface Tunnel 0/0/0 --定义到上海网络的隧道接口

[AR1-Tunnel0/0/0]ip address 172.16.0.1 24 --指定隧道接口地址

[AR1-Tunnel0/0/0]tunnel-protocol ? --查看隧道可以使用的协议

gre Generic Routing Encapsulation

ipsec IPSEC Encapsulation

ipv4-ipv6 IP over IPv6 encapsulation

ipv6-ipv4 IPv6 over IP encapsulation

mpls MPLS Encapsulation

none Null Encapsulation

[AR1-Tunnel0/0/0]tunnel-protocol ipsec --隧道协议使用ipsec

[AR1-Tunnel0/0/0]source 20.1.1.1 --定义隧道的起点(源地址)

[AR1-Tunnel0/0/0]destination 20.1.2.1 --定义隧道的终点(目标的地址)

[AR1-Tunnel0/0/0]ipsec profile profile1 --绑定IPSec框架

[AR1-Tunnel0/0/0]quit

[AR1]ip route-static 10.1.2.0 24 172.16.0.2 --添加到上海网络的路由

在AR3上的配置。

[AR3]ipsec proposal prop --创建安全提议,名称为prop

[AR3-ipsec-proposal-prop]quit --使用默认参数

[AR3]ike peer tobeijing v2 --创建IKE对等实体

[AR3-ike-peer-tobeijing]peer-id-type ip --选择IP地址作为对等ID

[AR3-ike-peer-tobeijing]pre-shared-key simple 91xueit --指定预共享秘钥

[AR3-ike-peer-tobeijing]quit

[AR3]ipsec profile profile1 --创建安全框架

[AR3-ipsec-profile-profile1]proposal prop --指定安全提议

[AR3-ipsec-profile-profile1]ike-peer tobeijing --指定IKE对等实体

[AR3-ipsec-profile-profile1]quit

[AR3]interface Tunnel 0/0/0 --定义到北京网络的隧道接口

[AR3-Tunnel0/0/0]ip address 172.16.0.2 24 --指定隧道接口地址

[AR3-Tunnel0/0/0]tunnel-protocol ipsec --隧道协议使用ipsec

[AR3-Tunnel0/0/0]source 20.1.2.1 --定义隧道的起点(源地址)

[AR3-Tunnel0/0/0]destination 20.1.1.1 --定义隧道的终点(目标的地址)

[AR3-Tunnel0/0/0]ipsec profile profile1 --绑定IPSec框架

[AR3-Tunnel0/0/0]quit

[AR3]ip route-static 10.1.1.0 24 172.16.0.1 --添加到北京网络的路由。


点击,学习 韩老师的 

华为认证网络工程师(HCNA)-路由交换视频教程

752096d7bf4af04d3e7961d7e9b953c6