IPSec:
IPSec ×××即指采用IPSec协议来实现远程接入的一种×××技术,IPSec全称为Internet Protocol Security,是由Internet Engineering Task Force (IETF) 定义的安全标准框架,它的目的是为IP提供高安全性特性。
IPSec是由两类协议组成:
1.AH协议(Authentication Header):可以同时提供数据完整性确认、数据来源确认、防重放等安全特性;AH常用摘要算法MD5和SHA1实现该特性。
2.ESP协议(Encapsulated Security Payload):可以同时提供数据完整性确认、数据加密、防重放等安全特性;ESP通常使用DES、3DES、AES等加密算法实现数据加密,使用MD5或SHA1来实现数据完整性。
AH与ESP区别:
1、AH不提供数据加密,所有数据在传输的时候以明文传输,使用较少。ESP提供数据加密,使用很广。
2、AH会对数据源进行确认,一旦校验失败,便无法穿越NAT。而ESP不存在这种情况。
AH帧格式:
ESP帧格式:
IPSec安全机制实现图解:
IPSec提供的两种封装模式(传输Transport模式和隧道Tunnel模式)
IPSec术语:
数据流:在IPSec中,一组具有相同源地址/掩码、目的地址/掩码和上层协议
的数据集称为数据流。通常,一个数据流采用一个访问控制列表(acl)来定
义,所有为ACL允许通过的报文在逻辑上作为一个数据流。为更容易理解,
数据流可以比作是主机之间一个的TCP连接。IPSec 能够对不同的数据流施
加不同的安全保护,例如对不同的数据流使用不同的安全协议、算法或密钥。
安全策略:由用户手工配置,规定对什么样的数据流采用什么样的安全措施。
对数据流的定义是通过在一个访问控制列表中配置多条规则来实现,在安全策
略中引用这个访问控制列表来确定需要进行保护的数据流。一条安全策略由
“名字”和“顺序号”共同唯一确定。
安全策略组:所有具有相同名字的安全策略的集合。在一个接口上,可应用或
者取消一个安全策略组,使安全策略组中的多条安全策略同时应用在这个接口
上,从而实现对不同的数据流进行不同的安全保护。在同一个安全策略组中,
顺序号越小的安全策略,优先级越高。
安全联盟(Security Association,简称SA):IPSec对数据流提供的安全服
务通过安全联盟SA来实现,它包括协议、算法、密钥等内容,具体确定了如
何对IP报文进行处理。一个SA就是两个IPSec系统之间的一个单向逻辑连
接,输入数据流和输出数据流由输入安全联盟与输出安全联盟分别处理。安全
联盟由一个三元组(安全参数索引(SPI)、IP 目的地址、安全协议号(AH
或ESP))来唯一标识。安全联盟可通过手工配置和自动协商两种方式建立。
手工建立安全联盟的方式是指用户通过在两端手工设置一些参数,然后在接口上应用安全策略建立安全联盟。自动协商方式由IKE生成和维护,通信双方基
于各自的安全策略库经过匹配和协商,最终建立安全联盟而不需要用户的干
预。
安全提议:包括安全协议、安全协议使用的算法、安全协议对报文的封装形式,
规定了把普通的IP报文转换成IPSec报文的方式。在安全策略中,通过引用
一个安全提议来规定该安全策略采用的协议、算法等。
IPSec ×××的应用场景分为3种:
1.Site-to-Site(站点到站点):3个机构分布在互联网的3个不同的地方,各使用一个网关相互建立×××隧道,企业内网(若干PC)之间的数据通过这些网关建立的IPSec隧道实现安全互联。
2.End-to-End(端到端): 两个终端之间的通信由两个终端之间的IPSec会话保护,而不是网关。
3.End-to-Site(端到站点):两个终端之间的通信由网关和异地PC之间的IPSec进行保护。
了解完IPSec的原理以及一些概念,接下来就实践一下吧。
实验设备:
H3C Secpath F100-C 防火墙三台
Quidway S3526三层交换机一台
实验目的:
北京总部内部局域网与上海分部以及广州分部的内部局域网互通。
拓扑图:(图片中数据在这里我只是做一个说明,只为了让大家对实验拓补有一个清晰的认识,标注或者图示可能有欠缺的地方,望各位博友谅解。具体接口以及IP地址以实验为准。)
手动模式下的具体配置:
[FW-1]----------------
acl number 3000 match-order auto
rule 10 permit ip source 192.168.4.0 0.0.0.255 destination 192.168.2.0 0.0.0.255
rule 20 deny ip souce any destination any
quit
ipsec proposal inferr
encapsulation-mode tunnel
transform esp
esp encapsulation-mode des
quit
ipsec policy policy1 10 manual
security acl 3000
proposal inferr
tunnel local 1.1.1.1
tunnel remote 2.2.2.1
sa spi outbound esp 123456
sa string-key outbound esp abcdefg
sa spi inbound esp 654321
sa string-key inbound esp qaz
quit
int eth0/0
ipsec policy policy1
acl number 3001 match-order auto
rule 10 permit ip source 192.168.4.0 0.0.0.255 destination 192.168.3.0 0.0.0.255
rule 20 deny ip source any destination any
quit
ipsec proposal abc
encapsulation-mode tunnel
transform esp
esp authentication- md5
esp encryption- des
quit
ipsec policy policy1 20 manual
security acl 3001
proposal abc
tunnel local 1.1.1.1
tunnel remote 3.3.3.1
sa spi outbound esp 1234
sa string-key outbound esp abcde
sa spi inbound esp 54321
sa string-key inbound esp wsx
quit
[FW-2]-----------------
acl number 3000 match-order auto
rule 10 permit ip source 192.168.2.0 0.0.0.255 destination 192.168.4.0 0.0.0.255
rule 20 deny ip source any destination any
quit
ipsec proposal inferr
encapsulation-mode tunnel
transform esp
esp authentication-algorithm md5
esp encryption des
quit
ipesec policy policy1 10 manual
security acl 3000
proposal inferr
tunnel local 2.2.2.1
tunel remote 1.1.1.1
sa spi outbound esp 654321
sa string-key outbound esp qaz
sa spi inbound esp 123456
sa string-key inbound esp abcdefg
quit
int eth0/0
ipsec policy policy1
[FW-3]------------------
acl number 3001 match-order auto
rule 10 permit ip source 192.168.3.0 0.0.0.255 destination 192.168.4.0 0.0.0.255
rule 20 deny ip source any destination any
quit
ipsec proposal tran2
encapsulation-mode tunnel
transform esp
esp authentication md5
esp encryption des
quit
ipsec policy policy1 20 manual
security acl 3001
proposal tran2
tunnel local 3.3.3.1
tunnel remote 1.1.1.1
sa spi outbound esp 54321
sa string-key outbound esp wsx
sa spi inbound esp 1234
sa string-key inbound esp abcde
quit
int eth0/0
ipsec policy policy1
自动协商模式配置(以FW-1和FW-3为例):
[FW-1]------------------------
acl number 3000 match-order auto
rule 10 permit ip source 192.168.4.0 0.0.0.255 destination 192.168.3.0 0.0.0.255
rule 20 deny ip source any destination any
quit
ipsec proposal tran1
encapsulation-mode tunnel
transform esp
esp auth md5
esp enc des
quit
ike peer FW-3
remote-address 3.3.3.1
local-address 1.1.1.1
pre-shared-key 123456
quit
ipsec policy policy1 10 isakmp
security acl 3000
proposal tran1
ike-peer FW-3
quit
int eth0/0
ipsec policy policy1
[FW-3]--------------------------------
acl number 3000 match-order auto
rule 10 permit ip source 192.168.3.0 0.0.0.255 destination 192.168.4.0 0.0.0.255
rule 20 deny ip source any destination any
quit
ipsec proposal tran1
encapsulation-mode tunnel
transform esp
esp auth md5
esp encryption-algorithm des
quit
ike peer FW-1
local-address 3.3.3.1
remote-address 1.1.1.1
pre-shared-key 123456
quit
ipsec policy policy1 10 isakmp
security acl 3000
proposal tran1
ike-peer FW-1
quit
int eth 0/0
ipsec policy policy1
quit
小编本人有点懒,实验前期的互通工作就由大家自己来动手啦。