IPsec在网络安全中的应用
2010-07-31李治国刘义武戚晓晶
李治国 刘义武 戚晓晶
(92124部队,辽宁 大连 116023)
引言
IPsec是以IP包为单位对信息进行暗号化的方式,来对传输途中的信息包进行加密或者防止遭到篡改的一种协议,是保护IP协议安全通信的标准,它主要对IP协议分组进行加密和认证。IPSec协议给出了应用于IP层上网络数据安全的一整套体系结构,包括网络认证协议、封装安全载荷协议、密钥管理协议和用于网络认证及加密的一些算法等。IPSec规定了如何在对等层之间选择安全协议、确定安全算法和密钥交换,向上提供了访问控制、数据源认证、数据加密等网络安全服务。
IPSec在IP层上对数据包进行安全处理,提供数据源的验证,数据完整性,数据机密性,抗重放等安全服务。各种应用程序可以享用IP层提供的安全服务和密钥管理,而不必设计和实现自己的安全机制,因而大大减少了密钥协商的开销,也降低了生长安全漏洞的可能性。
1 IPSec协议
1.1 IPSec目标
IPSec定义了IP层使用的安全服务,它面向IP层以上的数据保护,主要有以下的安全目标:
1.1.1 身份验证:能够可靠的确定接收到的数据与发送的数据一致,并且确保发送该数据的实体与其所宣称的身份一致。
1.1.2 完整性:能够可靠的确定数据在从源到目的地传送的过程中没有被修改。
1.1.3 机密性:确保数据只能为预期的接收者使用,而不能为其他任务实体使用或者读出。
1.1.4 对包重放攻击的防范。重放攻击是指攻击者发送一个目的主机已接收过的包,通过占用接收系统的资源,这种攻击使系统的可用性受到损害,作为无连接协议,IP很容易受到重放攻击的威胁。
1.2 IPSec基本特征
IPSec建立在两个基本概念之上:
1.2.1 安全协议
安全协议提供了下列服务:原始认证、无连接完整性、加密、反重放,并通过使用两种报头来实现这些服务:认证报头(AH)和封装安全荷载(ESP)。它们用于隧道模式或传输模式。隧道模式封装整个IP报文,而传输模式只封装上层信息。在路由器中,IP报头中的部分是不会变化的,比如,源和目的IP地址在隧道模式中,AH认证数据是基于整个原始IP报文的内容计算的,新IP头中的选定部分在整个路由器中不发生变化。当报文路由时,发生变化的IP报头并不用来计算认证数据。
1.2.2 密钥管理
密钥协商时发生在两个进行IPSec通信的路由器之间。密钥协商线程通过IKE协议,定期的在不安全的网络上实现安全的密钥交换。密钥管理模块的工作就是:密钥的产生、销毁和密钥协商过程,它的焦点在于如何在非安全的网络上交换IPSec算法使用的秘密密钥,诸如认证数据的MAC算法和产生荷载数据的ESP加密密钥等。我们可以采用手工的方式或者自动的过程来通知IPSec设备它们的密钥。手工方式需要为每台IPSec主机配置每一条SA所需的密钥,因而很少使用。自动过程则使用名为IKE的密钥管理协议。IKE充分考虑了IPSec使用的所有算法交换密钥的复杂性,通过将密钥管理函数替代普通的密钥管理协议简化了将新算法添加进IPSec协议套的过程,实现了在非安全网络上安全的交换秘密密钥。
2 IPSec的实现
在理解了IPSec的基本概念和原则之后,在路由器上配置IPSec的只需要两个基本步骤:
2.1 使用ISAKMP进行密钥交换
第一步是在每个IPSec对等端上建立一个ISAKMP的策略,它定义了与每个IPSec对等端协商的参数。ISAKMP策略的参数有:
加密算法DES,3DES;
Hash算法SHA,MD5;
认证方式RSA数字签名,RSA临时预共享密钥。
2.2 使用IPSec
在配置完ISAKMP之后,配置IPSec需要以下步骤:
创建一个定义IPSec处理流量的访问表;
创建一个定义用于所创建的访问表上的安全策略的交换;
创建一个匹配访问表和交换集的Crypto映射给IPSec对等端;
将Crypto映射应用到具体的接口上。
3 IPSec典型应用
3.1 体系设计
本例中,有2个通过低速128Kbps链路和低端2600系列路由器连到Internet的结点。在这两个结点之间建立使用标准加密的安全连接。并希望尽可能减少额外的工作。同时要求加密 telnet会话来保证他们的密钥被安全地传送,但同时又希望结点之间所有的流量被认证。两个路由器的以太口地址分别为172.50.1.0/24和150.100.1.0/24,串口地址段为205.15.1.0/24.拓扑结构如下:
3.2 配置清单
Router A和B的配置:
3.3 分析
根据需求,采用IPSec完全能满足加密需求。首先,定义一个ISAKMP密钥交换策略,它会定义允许ISAKMP与每一对等路由器协商密钥交换的参数,这些参数在路由器上匹配。然后定义每一IPSec对等端使用的共享密钥,这里使用itsasecret,它在每个IPSec路由器上都是相同的。然后定义IPSec用来创建一个或多个交换集的算法。设置用于分类使用不同变换集流量的访问表。本例中创建了101和102两条访问表来匹配网段之间的流量。在设置完访问表之后,创建一个crypto map,并应用到对应的路由器接口上,完成整个路由器的数据加密配置过程。
4 结束语
作为网络基本节点的路由器,使用安全协议为周边的数据通信提供强大的安全保障是IP网络的发展趋势,而IPSec协议经过实践证明是IP安全协议中最为成熟和可靠的,在路由器中集中IPSec协议已成为重要的部分。
[1]merike kaeo.潇湘工作室译.网络安全性设计[M].北京:人民邮电出版社,2000.
[2]谢希仁,鸣,张兴元.计算机网络[M].北京:电子工业出版社,2003.
[3]杨义先,钮心忻,李名选.网络信息安全与保密[M].北京人民邮电出版社,2001.