IPSec介绍
1.IPSEC协议簇安全框架
a.IPSec简介
IPSec(Internet Protocol Security):是一组基于网络层的,应用密码学的安全通信协议族。IPSec不是具体指哪个协议,而是一个开放的协议族。
IPSec协议的设计目标:是在IPV4和IPV6环境中为网络层流量提供灵活的安全服务。
IPSec VPN:是基于IPSec协议族构建的在IP层实现的安全虚拟专用网。通过在数据包中插入一个预定义头部的方式,来保障OSI上层协议数据的安全,主要用于保护TCP、UDP、ICMP和隧道的IP数据包。
b.IPSec协议族
IPSec VPN体系结构主要由AH、ESP和IKE协议套件组成。
IPSec通过ESP来保障IP数据传输过程的机密性,使用AH/ESP提供数据完整性、数据源验证和抗报文重放功能。
ESP和AH定义了协议和载荷头的格式及所提供的服务,但却没有定义实现以上能力所需具体转码方式,转码方式包括对数据转换方式,如算法、密钥长度等。
为简化IPSec的使用和管理,IPSec还可以通过IKE进行自动协商交换密钥、建立和维护安全联盟的服务。具体如下:
1.AH协议:AH是报文头验证协议,主要提供的功能有数据源验证、数据完整性校验和防报文重放功能。然而,AH并不加密所保护的数据报。
2.ESP协议:ESP是封装安全载荷协议。它除提供AH协议的所有功能外(但其数据完整性校验不包括IP头),还可提供对IP报文的加密功能。
3.IKE协议:IKE协议用于自动协商AH和ESP所使用的密码算法。
IKE定义了安全参数如何协商,以及共享密钥如何建立,但它没有定义的是协商内容。这方面的定义是由"解释域(doi)"文档来进行。
IPSec协议族:
1.IPSec协议定义了两种通信保护机制:
封装安全载荷(ESP,Encapsulating Security Payload):ESP机制为通信提供机密性和完整性;
鉴别头(AH,Authentication Header):AH机制为通信提供完整性保护。
ESP机制和AH机制都能为通信提供抗重放(Anti-replay)攻击。
2.IPSec协议可以设置成在两种工作模式下运行:一种是隧道(tunnel)模式,另一种是传输(transport)模式。
3.IPSec协议使用IKE协议实现安全协议的自动安全参数协商。IKE协商的安全参数包括加密与鉴别算法、
加密与鉴别密钥、通信的保护模式(传输或隧道模式)、密钥的生存期等。IKE将这些安全参数构成的集合称为安全关联(SA,security Association),还负责这些安全参数的刷新。
4.两个数据库:安全策略数据库SPD,安全关联数据库SAD。
5.DOI将所有的IPSec小组的文献捆绑在一起。它可以被认为是所有IPSec安全参数的主数据库。
2.IPSEC工作模式
a.传输模式(Transport mode)
在传输模式下,IPSec协议处理模块会在IP报头和高层协议报头之间插入一个IPSec报头。
IP报头与原始IP分组中的IP报头是一致的,只是IP报文中的协议字段会被改成IPSec协议的协议号(50或者51) ,并重新计算IP报头校验和。传输模式保护数据包的有效载荷、高层协议,IPSec源端点不会修改IP报头中目的IP地址,原来的IP地址也会保持明文。
传输模式只为高层协议提供安全服务。
主要应用场景:经常用于主机和主机之间端到端通信的数据保护。
封装方式:不改变原有的IP包头,在原数据包头后面插入IPSec包头,将原来的数据封装成被保护的数据。
b.隧道模式(Tunnel mode)
传输模式不同,在隧道模式下,原始IP分组被封装成一个新的IP报文,在内部报头以及外部报头之间插入一个IPSec报头&#x