IPsec:增强IP协议的安全性


安全问题始终是与互联网相关的一个重要话题。由于IPv4的目的只是作为简单的网络互联协议,因此协议设计之初并没有考虑安全性。如果IPv4协议仅仅用于研究或某些严格管理的专用网络,那么缺乏安全性并不是一个很严重的问题。但是,随着互联网的商业化,缺乏安全性导致的危险越来越严重。互联网上已经发生了很多起诸如商业公司或政府机构网络遭到攻击、机密数据被窃取等事情。一般来说,安全性有如下三个公认的目标:


身份认证:能够可靠地确定接收到的数据与发送的数据一致,并且确保发送该数据的实体与其所宣称的身份一致。


完整性:能够可靠地确定数据在从源到目的地传送的过程中没有被修改。


保密性:确保数据只能为预期的接收者使用或读出,而不能为其他任何实体使用或读出。

完整性和身份认证经常密切相关,而机密性有时使用公共密钥加密来实现,这样也有助于对源端进行身份认证。

为了加强互联网的安全性,从1995年开始,IETF着手研究制定了一套用于保护IP通信的安全IP Security,IPSec)协议。IPSec提供既可用于IPv4也可用于IPv6的安全性机制,它是IPv6的一个组成部分,也是IPv4的一个可选扩展协议。IPSec提供如下安全性服务:


访问控制:如果没有正确的密码就不能访问一个服务或系统。可以调用安全性协议来控制密钥的安全交换,用户身份认证可以用于访问控制。


无连接的完整性:使用IPsec,有可能在不参照其他数据包的情况下,对任一单独的IP包进行完整性校验。此时每个数据包都是独立的,可以通过自身来确认。此功能可以通过使用安全散列技术来完成,它与使用检查数字类似,但可靠性更高,并且更不容易被未授权实体所篡改。


数据源身份认证:通过数字签名的方法对IP包内的数据来源进行标识。


防御包重发攻击:作为无连接协议,IP很容易受到重发攻击的威胁。重发攻击是指攻击者发送一个目的主机已接收过的包,通过占用接收系统的资源,使系统的可用性受到损害。为此,IPsec提供了包计数器机制。


保密:保密机制是通过使用加密算法来提供的。


有限的业务流保密性:有时候只使用加密数据不足以保护系统,通过使用IP隧道方法,尤其是与安全性网关共同使用,IPsec提供了有限的业务流保密性。

IPSec安全性服务完全通过AH和ESP头相结合的机制来提供,当然还要有正确的相关密钥管理协议。IPSec的认证包头Authentication Header,AH,RFC1826中描述)协议定义了认证的应用方法,封装安全负载Encapsulating Security Payload,ESP,RFC1827中描述)协议定义了加密和可选认证的应用方法。在实际进行IP通信时,可以根据安全需求同时使用这两种协议或选择使用其中的一种。如果一起使,AH应置于ESP头之前,这样,首先进行身份验证,然后再对ESP头负载解密。使用IPSec隧道时,这些扩展头也可以嵌套。即源节点对IP包进行加密和数字签名,然后发送给本地安全性网关,该网关则再次进行加密和数字签名,然后发送给另一个安全性网关。

在一个特定的IP通信中使用AH或ESP时,协议将与一组安全信息和服务发生关联,称为安全性关联Security Association,SA)。安全性关联SA是IPSec的基本概念,它是一个单向的逻辑连接,也就是说,两个主机之间的认证通信将使用两个SA,分别用于通信的发送方和接收方。每个SA由目的地址和安全性参数索引Security Parameters Index,SPI)来定义。SPI是对RFC1825修改后的互联网草案中所要求的标识符,它说明使用SA的IP头类型。SPI为32位,它可以包含认证算法、加密算法、用于认证和加密的密钥以及密钥的生存期。

IPSec使用一种密钥分配和交换协议如互联网安全关联和密钥管理协议Internet Security Association and Key Manageme nt Protocol,ISAKMP)来创建和维护SA。ISAKMP实际上是一个应用协议,协议中定义了用于系统之间协商密钥交换的不同类型报文,它在传输层使用UDP。

IPSec定义了两种类型的SA:透明模式SA和隧道模式SA。透明模式SA是在IP包头以及任何可选的扩展包头)之后和任何高层协议如TCP或UDP)包头之前插入AH或ESP包头。为了在互联网上安全地通讯,两个系统建立了SA。其中一个系统产生业务流,经过加密或者签名,然后发送给目的系统。而在接收方,首先对收到的数据报进行解密或者身份认证,把负荷向上传送给接收系统的网络栈,由使用数据的应用进行最后的处理。两个主机之间的通信如同没有安全性头一样简单,而且数据包实际的IP头必须要暴露出来以便在互联网上进行路由,因此这种方法称为使用SA的透明模式。

隧道模式SA 是将整个原始的IP数据报放入一个新的IP数据报中。在采用隧道模式SA时,每一个IP数据报都有两个IP包头:外部IP包头和内部 IP包头。外部IP包头指定将对IP数据报进行IPSec处理的目的地址,内部IP包头指定原始IP数据报最终的目的地址。

透明模式SA只能用于两个主机之间的IP通信,而隧道模式SA既可以用于两个主机之间的IP通信,还可以用于两个安全网关之间或一个主机与一个安全网关之间的IP通信。

相关文章】

  • IPS如何实现深度检测和入侵抵御
  • 华为3com的IPSec VPN方案
  • IPSec标准 虚拟专用网络的安全基础

相关内容