zzzzy09

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

来自:https://zhuanlan.zhihu.com/p/50502778

 

 

网络安全之IPSec vpn详解

-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

 -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

IPSec实现

工作于TCP/IP第三层IP层上网络数据安全地一整套体系结构;包括网络认证协议AH(Authentication Header,认证头)、ESP(Encapsulating Security Payload,封装安全载荷)、IKE(Internet Key Exchange,因特网密钥交换又称isakmp)和用于网络认证及加密的一些算法等。其中,AH协议和ESP协议用于提供安全服务,IKE协议用于密钥交换。

整个IPSec VPN地实现基本简化为两个SA协商完成

SA(security association):是两个通信实体经协商建立起来地一种协议,它们决定了用来保护数据包安全地IPsec协议,转码方式,密钥,以及密钥地有效存在时间等等

 

IKE(isakmp)SA:协商对IKE数据流进行加密以及对对等体进行验证地算法(对密钥地加密和peer地认证)对等体之间只能存在一个

第一阶段:建立ISAKMPSA协商的是以下信息:

1、对等体之间采用何种方式做认证,是预共享密钥还是数字证书。
2、双方使用哪种加密算法(DES、3DES)
3、双方使用哪种HMAC方式,是MD5还是SHA
4、双方使用哪种Diffie-Hellman密钥组
5、使用哪种协商模式(主模式或主动模式)
6、协商SA的生存期

IPSec SA:协商对对等体之间地IP数据流进行加密地算法 对等体之间可以存在多个

第二阶段:建立IPsecSA协商的是以下信息:

1、双方使用哪种封装技术,AH还是ESP
2、双方使用哪种加密算法
3、双方使用哪种HMAC方式,是MD5还是SHA
4、使用哪种传输模式,是隧道模式还是传输模式
5、协商SA的生存期

名词解释:

AH协议(IP协议号为51):提供数据源认证、数据完整性校验和防报文重放功能,它能保护通信免受篡改,但不能防止窃听,适合用于传输非机密数据。AH的工作原理是在每一个数据包上添加一个身份验证报文头,此报文头插在标准IP包头后面,对数据提供完整性保护。可选择的认证算法有MD5(Message Digest)、SHA-1(Secure Hash Algorithm)等。

ESP协议(IP协议号为50):提供加密、数据源认证、数据完整性校验和防报文重放功能。ESP的工作原理是在每一个数据包的标准IP包头后面添加一个ESP报文头,并在数据包后面追加一个ESP尾。与AH协议不同的是,ESP将需要保护的用户数据进行加密后再封装到IP包中,以保证数据的机密性。常见的加密算法有DES、3DES、AES等。同时,作为可选项,用户可以选择MD5、SHA-1算法保证报文的完整性和真实性。

IPSec有两种工作模式:

隧道(tunnel)模式:用户的整个IP数据包被用来计算AH或ESP头,AH或ESP头以及ESP加密的用户数据被封装在一个新的IP数据包中。通常,隧道模式应用在两个安全网关之间的通讯。

传输(transport)模式:只是传输层数据被用来计算AH或ESP头,AH或ESP头以及ESP加密的用户数据被放置在原IP包头后面。通常,传输模式应用在两台主机之间的通讯,或一台主机和一个安全网关之间的通讯。

安全协议数据封装格式

IKE:

IKE为IPsec提供了自动协商交换密钥、建立SA的服务,能够简化IPsec的使用和管理,大大简化IPsec的配置和维护工作。

IKE的安全机制

IKE具有一套自保护机制,可以在不安全的网络上安全地认证身份、分发密钥、建立IPsec SA。

1. 数据认证

数据认证有如下两方面的概念:

身份认证:身份认证确认通信双方的身份。支持两种认证方法:预共享密钥(pre-shared-key)认证和基于PKI的数字签名(rsa-signature)认证。
身份保护:身份数据在密钥产生之后加密传送,实现了对身份数据的保护。

2. DH

DH(Diffie-Hellman,交换及密钥分发)算法是一种公共密钥算法。通信双方在不传输密钥的情况下通过交换一些数据,计算出共享的密钥。即使第三者(如黑客)截获了双方用于计算密钥的所有交换数据,由于其复杂度很高,不足以计算出真正的密钥。所以,DH交换技术可以保证双方能够安全地获得公有信息。

3. PFS

PFS(Perfect Forward Secrecy,完善的前向安全性)特性是一种安全特性,指一个密钥被破解,并不影响其他密钥的安全性,因为这些密钥间没有派生关系。对于IPsec,是通过在IKE阶段2协商中增加一次密钥交换来实现的。PFS特性是由DH算法保障的。

IKE的交换过程

IKE使用了两个阶段为IPsec进行密钥协商并建立SA:

第一阶段,通信各方彼此间建立了一个已通过身份认证和安全保护的通道,即建立一个ISAKMP SA。第一阶段有主模式(Main Mode)和野蛮模式(Aggressive Mode)两种IKE交换方法。
第二阶段,用在第一阶段建立的安全隧道为IPsec协商安全服务,即为IPsec协商具体的SA,建立用于最终的IP数据安全传输的IPsec SA。

图 4 主模式交换过程

 

如图2-1所示,第一阶段主模式的IKE协商过程中包含三对消息:

l 第一对叫SA交换,是协商确认有关安全策略的过程;
l 第二对消息叫密钥交换,交换Diffie-Hellman公共值和辅助数据(如:随机数),密钥材料在这个阶段产生;
l 最后一对消息是ID信息和认证数据交换,进行身份认证和对整个第一阶段交换内容的认证。

野蛮模式交换与主模式交换的主要差别在于,野蛮模式不提供身份保护,只交换3条消息。在对身份保护要求不高的场合,使用交换报文较少的野蛮模式可以提高协商的速度;在对身份保护要求较高的场合,则应该使用主模式。

IKE在IPsec中的作用

l 因为有了IKE,IPsec很多参数(如:密钥)都可以自动建立,降低了手工配置的复杂度。
l IKE协议中的DH交换过程,每次的计算和产生的结果都是不相关的。每次SA的建立都运行DH交换过程,保证了每个SA所使用的密钥互不相关。
l IPsec使用AH或ESP报文头中的序列号实现防重放。此序列号是一个32比特的值,此数溢出后,为实现防重放,SA需要重新建立,这个过程需要IKE协议的配合。
l 对安全通信的各方身份的认证和管理,将影响到IPsec的部署。IPsec的大规模使用,必须有CA(Certificate Authority,认证中心)或其他集中管理身份数据的机构的参与。
l IKE提供端与端之间动态认证。

IPsec与IKE的关系

图 5 IPsec与IKE的关系图

 

从图2-2中我们可以看出IKE和IPsec的关系:

l IKE是UDP之上的一个应用层协议,是IPsec的信令协议;
l IKE为IPsec协商建立SA,并把建立的参数及生成的密钥交给IPsec;
l IPsec使用IKE建立的SA对IP报文加密或认证处理。
posted on 2022-01-05 17:11  zzzzy09  阅读(929)  评论(0编辑  收藏  举报