IPSec

1. IPSec 协议

IPSec 是一系列网络安全协议的总称,它是由IETF(Internet Engineering Task

Force,Internet 工程任务组)开发的,可为通讯双方提供访问控制、无连接的完整

性、数据来源认证、反重放、加密以及对数据流分类加密等服务。

IPSec 是网络层的安全机制。通过对网络层包信息的保护,上层应用程序即使没有

实现安全性,也能够自动从网络层提供的安全性中获益。这打消了人们对***

(Virtual Private Network,虚拟专用网络)安全性的顾虑,使得*** 得以广泛应

用。

2. IPSec 对报文的处理过程

IPSec 对报文的处理过程如下(以AH 协议为例):

(1) 对报文添加认证头:从IPSec 队列中读出IP 模块送来的IP 报文,根据配置选

择的协议模式(传输或是隧道模式)对报文添加AH 头,再由IP 层转发。

(2) 对报文进行认证后解去认证头:IP 层收到IP 报文经解析是本机地址,并且协

议号为51,则查找相应的协议开关表项,调用相应的输入处理函数。此处理

函数对报文进行认证和原来的认证值比较,若相等则去掉添加的AH 头,还原

出原始的IP 报文再调用IP 输入流程进行处理;否则此报文被丢弃。

3.与IPSec 相关的几个术语

1.数据流:

在 IPSec 中,一组具有相同源地址/掩码、目的地址/掩码和上层协议

的数据集称为数据流。通常,一个数据流采用一个访问控制列表(acl)来定

义,所有为ACL 允许通过的报文在逻辑上作为一个数据流。为更容易理解,

数据流可以比作是主机之间一个的TCP 连接。IPSec 能够对不同的数据流施

加不同的安全保护,例如对不同的数据流使用不同的安全协议、算法或密钥。

2. 安全策略:

由用户手工配置,规定对什么样的数据流采用什么样的安全措施。

对数据流的定义是通过在一个访问控制列表中配置多条规则来实现,在安全策

略中引用这个访问控制列表来确定需要进行保护的数据流。一条安全策略由

“名字”和“顺序号”共同唯一确定。

3.安全策略组:

所有具有相同名字的安全策略的集合。在一个接口上,可应用或

者取消一个安全策略组,使安全策略组中的多条安全策略同时应用在这个接口

上,从而实现对不同的数据流进行不同的安全保护。在同一个安全策略组中,

顺序号越小的安全策略,优先级越高。

4.安全联盟

(Security Association,简称SA):IPSec 对数据流提供的安全服

务通过安全联盟SA 来实现,它包括协议、算法、密钥等内容,具体确定了如

何对IP 报文进行处理。一个SA 就是两个IPSec 系统之间的一个单向逻辑连

接,输入数据流和输出数据流由输入安全联盟与输出安全联盟分别处理。安全

联盟由一个三元组(安全参数索引(SPI)、IP 目的地址、安全协议号(AH

或ESP))来唯一标识。安全联盟可通过手工配置和自动协商两种方式建立。

手工建立安全联盟的方式是指用户通过在两端手工设置一些参数,然后在接口

上应用安全策略建立安全联盟。自动协商方式由IKE 生成和维护,通信双方基

于各自的安全策略库经过匹配和协商,最终建立安全联盟而不需要用户的干

预。

5.安全联盟超时处理:

安全联盟更新时间有“计时间”(即每隔定长的时间进行

更新)和“计流量”(即每传输一定字节数量的信息就进行更新)两种方式。

安全参数索引(SPI):是一个32 比特的数值,在每一个IPSec 报文中都携

带该值。SPI、IP 目的地址、安全协议号三者结合起来共同构成三元组,来唯

一标识一个特定的安全联盟。在手工配置安全联盟时,需要手工指定SPI 的取

值。为保证安全联盟的唯一性,每个安全联盟需要指定不同的SPI 值;使用IKE

协商产生安全联盟时,SPI 将随机生成。

安全提议:包括安全协议、安全协议使用的算法、安全协议对报文的封装形式,

规定了把普通的IP 报文转换成IPSec 报文的方式。在安全策略中,通过引用

一个安全提议来规定该安全策略采用的协议、算法等。

实验:

实现192.168.1.0网段和2.0 、3.0互通

image

设备:

H3C F100-C 2台

H3C R2621 2台

计算机 3台

步骤:

FW1

int eth0/1

ip add 192.168.20.200

int eth0/2

ip add 192.168.2.1

quit

ip route-static 0.0.0.0 0.0.0.0 192.168.20.1

指定IKE(Internet Key Exchange)模块配置信息

ike peer R1 指定IKE网关

pre-shared-key 123456 指定预共享密钥

remote-address 192.168.10.200 指定对端IP地址 指定安全隧道的起点与终点

local-address 192.168.20.200 指定本端IP地址

acl number 3000

acl 3000

rule permit ip source 192.168.2.0 0.0.0.255 destination 192.168.1.0 0.0.0.255

rule permit ip source any destination any

quit

ipsec proposal R1指定IPSec(IP Security)模块配置信息

,配置IPSec安全提议,安全提议的名字

encapsulation-mode tunnel 指定安全协议的报文封装模式,采用隧道模式封装保护整个IP报文

clip_image001安全协议数据封装格式

transform esp 设置用于对报文进行转换的安全协议,RFC2406定义的ESP协议

esp authentication-algorithm md5 指定ESP(RFC2406)协议的参数

,指定IPSec安全协议的验证算法,使用HMAC-MD5-96算法

esp encryption-algorithm des 指定IPSec安全协议的加密算法,使用DES

quit

指定IPSec(IP Security)模块配置信息

ipsec policy test 10 isakmp 配置IPSec安全策略的名称;安全策略的顺序号;使用IKE协商建立安全联盟,指定模式

security acl 3000 指定由此安全策略保护的报文,由访问列表号来指定报文

ike-peer R1 设置IPSec安全策略的安全网关,IKE安全网关的名字

proposal R1 设置IPSec安全策略中引用的安全提议,IPSec安全提议的名字

firewall zone trust 进入防火墙命令组,指定安全区域的配置,受信安全区域

add interface Ethernet0/1 增加一个接口到安全区域,以太网接口

add interface Ethernet0/2

int eth0/1 进入接口配置视图

ipsec policy test 在接口上应用IPSec安全策略组

FW2

int eth0/1

ip add 192.168.30.200

int eth0/2

ip add 192.168.3.1

quit

ip route-static 0.0.0.0 0.0.0.0 192.168.30.1

ike peer R1

pre-shared-key 123456

remote-address 192.168.10.200

local-address 192.168.30.200

acl number 3000

acl 3000

rule permit ip source 192.168.3.0 0.0.0.255 destination 192.168.1.0 0.0.0.255

rule permit ip source any destination any

quit

ipsec proposal R1

encap tunnel

transform esp

esp authen md5

esp enc des

quit

ipsec policy test 10 isakmp

security acl 3000

ike-peer R1

proposal R1

firewall zone trust

add interface Ethernet0/1

add interface Ethernet0/2

int eth0/1

ipsec policy test

R1

int e1

ip add 192.168.1.1

int s1

ip add 192.168.10.200

shu un shu

quit

ip route-static 0.0.0.0 0.0.0.0 192.168.10.1

acl 3000

rule permit ip source 192.168.1.0 0.0.0.255 destination 192.168.2.0 0.0.0.255

rule permit ip source any destination any

acl 3001

rule permit ip source 192.168.1.0 0.0.0.255 destination 192.168.3.0 0.0.0.255

rule permit ip source any destination any

ipsec proposal FW1 安全提议的名字

encap tunnel 封装模式: 隧道模式

transform esp 报文转换,ESP协议

esp authen md5 ESP协议: 验证 md5-hmac-96

esp enc des des算法加密

quit

ipsec proposal FW2

encap tunnel

transform esp

esp authen md5

esp enc des

quit

ipsec policy test 10 isakmp

sec acl 3000

proposal FW1

tun local 192.168.10.200

tun remote 192.168.20.200

ipsec policy test 20 isakmp

sec acl 3001

proposal FW2

tun local 192.168.10.200

tun remote 192.168.30.200

ipsec policy test 10 manual 协商方式为手工方式

在手工创建的安全策略联盟中,若引用的安全提议中包括了 AH 协议,则要手工为

出/入的通信流量设置AH 安全联盟SPI 和使用的认证密钥;若引用的安全提议中包

括了ESP 协议,则要手工为出/入的通信流量设置ESP 安全联盟SPI 和使用认证密

钥与加密密钥。

在安全隧道的两端,本端的输入安全联盟SPI及密钥必须和对端的输出安全联盟SPI

及密钥保持一致;本端的输出安全联盟SPI 及密钥必须和对端的输入安全联盟SPI

及密钥保持一致。

sa in esp spi 12345 指定手工安全联盟的SPI参数

sa in esp string-key abcdefg 以字符串格式设置安全联盟的密钥

sa out esp spi 54321

sa out esp string abcdefg

quit

ike pre-shared-key 123456 remote 192.168.10.200

ike pre-shared-key 123456 remote 192.168.20.200

int s1

ipsec policy test

R2

int s1

ip add 192.168.10.1

int e0

ip add 192.168.20.1

int e1

ip add 192.168.30.1

测试成功

image

image

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章