×

【2022争霸赛*干货满满】互联网密钥交换协议IKE(Internet Key Exchange)
  

如沐清风 1997

{{ttag.title}}
互联网密钥交换协议IKE(Internet Key Exchange)
IPSec VPN执行协商任务的协议叫做互联网密钥交换协议IKE。IKE主要完成如下3各方面的任务:
1、对建立IPSec的双方进行认证(需要预先协商认证方式);
2、通过密钥交换,产生用于加密和HMAC的随机密钥;
3、协商协议参数(加密协议、散列函数、封装协议、封装模式和密钥有效期);
IKE协商完成后的结果就叫做安全关联SA,也可以说IKE建立了安全关联。SA一共有两种类型,一种叫做IKE SA,另外一种叫做IPSec SA。
IKE SA:维护安全防护(加密协议、散列函数、认证方式、密钥有效期等)IKE协议的细节。
IPSec SA:维护安全防护实际用户流量(通信点之间的流量)的细节
IKE由三个协议组成
1、SKEME:决定IKE的密钥交换方式,IKE主要使用DH来实现密钥交换。
2、Oakley:决定IPSec的框架设计,让IPSec能够支持更多的协议。
3、ISAKMP:IKE的本质协议,它决定了IKE协商包的封装格式,交换过程和模式的切换。
IKE与ISAKMP
ISAKMP是IKE的核心协议,我们经常会把IKE与ISAKMP这两个术语互换使用,我们配置IPSec VPN时候主要配置内容也是ISAKMP,SKEME和Oakley没有任何配置内容。IKE能够决定密钥交换的方式,但是ISAKMP只能够为密钥交换来交换数据包,不能决定密钥交换实现的方式。
IKE的2个阶段与3个模式
IKE第一阶段:协商主要目的就是对建立IPSec的双方进行认证,以确保只有合法的对等体(peer)才能够建立IPSec VPN,协商的结果就是IKE SA。
IKE第二阶段:主要目的就是根据需要加密的实际流量(感兴趣流),来协商保护这些流量的策略,协商的结果就是IPSec SA。

主模式
主模式IKE1-2包交互
主模式数据包1-2交互的主要任务负责完成2个任务:
1、通过核对收到ISAKMP数据包的源IP地址,确定收到的ISAKMP数据包为合法对等体。
2、协商IKE策略。
IKE1-2包交互的过程中,IKE策略协商是最主要的任务,策略包含5项内容:加密策略、散列函数、DH组、认证方式、密钥有效期,这个策略绝对不是用于加密实际通信点之间的流量的策略。发起方会把本地配置的所有策略一起发送给接收方,由接收方从中挑选一个可以接收的策略,并且通过第二个IKE包回送给发送方,指明自己所选择的策略。IKE策略协商完成之后,在交换IKE3-4和5-6包时候,就可以使用这套策略来处理了。
注意:ISAKMP数据包是使用UDP进行传输的,源端口号和目的端口号都是500
主模式IKE3-4包交互
IKE1-2包交互已经协商出了IKE策略,但是保护IKE数据还缺少密钥,加密和HMAC都需要密钥。3-4包通过一系列的密钥衍生算法,得到加密和HMAC处理IKE信息的密钥。
主模式IKE5-6包交互
IKE第一阶段的主要任务就是认证,IKE5-6包交换就是在安全环境下进行认证(从IKE主模式的第5-6包开始往后都使用IKE1-2包交换所协商的加密与HMAC算法进行安全保护)
IKE1-2包交换为认证准备好策略,IKE3-4包交互为保护5-6包的安全算法提供密钥资源。
主动模式(积极模式、野蛮模式)
主动模式使用的是类似TCP3次握手的信息交换模式。交换的是3条信息。首先由sa的发起者发送一条信息给sa的接受者,sa的接受者收到第一条信息以后,会将自己的sa协商消息附上电子签名认证信息后发回给sa的发起者,这是第二条信息,第三条信息再由sa的发起者发送给sa的接受者,这条信息中包含了sa的发起者的签名认证信息。对于DH组,双方没有协商就进行了DH信息的交换,是固定的。由于其在第一条信息交换时就发送了对应的ID信息,sa的接收方可以根据该ID信息匹配对应的预共享密钥,从而计算对应的SKEYID。因此主动模式是可以使用除IP地址以外的域名来进行对等体标识的。但是由于主动模式中,是在加密身份信息的安全sa建立之前就进行了身份信息的交换,所以交换的消息都是明文的,ID信息也是明文的。
主模式也主动模式的区别
1、主动模式协商比主模式协商要快,主模式需要交互6个消息报文,主动模式则只需要交互3个消息报文。
2、主模式协商比主动模式更安全,主模式在5-6包中对ID信息进行了加密。而主动模式在1-2包中ID信息是以明文方式进行交互的。主模式对对端身份进行了保护,主动模式没有。
3、主模式只能基于IP地址来确定预共享密钥,主动模式是基于IP信息(主机名和IP地址)来确定预共享密钥。
IPSec VPN认证方式
1、预共享密钥
  • 发起方根据接收方IP地址查询本地IPSec配置,找到与其对应的预共享秘钥
  • 发起方把预共享密钥和IKE策略内容、DH计算的密钥资源、还有其他一些接收双方都知道的内容一起进行散列计算,得到的结果就是“认证散列值”。
  • 发起方把“认证散列值”和本地加密点IP放入第5个IKE数据包中,加密后发送给接收方。
  • 接收方首先对收到的第5个IKE数据包进行解密,提前出发起方的IP地址,并且基于发起方的IP地址查询本地IPSec配置,找出对应的预共享密钥。
  • 接收方把查询到的预共享密钥,和其他双方已知内容一起计算散列值,得到“认证散列值”。
  • 接收方把从第5个IKE数据包中提取出来的“认证散列值”和第五步的“认证散列值”进行比较,相等,接收方就成功认证了发起方。当然接收方还要通过相同的办法来发送第6个IKE数据包,让发起方认证接收方。

2、证书认证
3、RSA加密随机数认证
第一阶段小结
第一阶段的主要任务就是相互认证,第一阶段完成,不仅表示收发双方认证通过,并且还会建立一个双向的ISAKMP/IKE安全关联(SA),这个SA维护了处理ISAKMP/IKE流量的相关策略(注意:这些策略不会处理实际感兴趣流),而对等体双方还会继续使用这个SA,来保护后续的IKE快速模式1-3包交换。

快速模式
快速模式数据包1-3报的交换
快速模式中,1-3包交换的主要目的就是在安全环境下,基于感兴趣流协商处理这个感兴趣流的IPSec策略,包括:感兴趣流、加密策略、散列函数、封装协议、封装模式、密钥有效期。
IKE快速模式的第1个数据包中,发起方会把感兴趣流相关的IPSec策略一起发送给接收方,并由接收方来选择适当策略,这个过程与在IKE主模式1-2包交换时,由接收方来选择策略的工作方式相同。
策略协商完毕后就会产生相应的IPSec SA,我们发现在IKE快速模式第2个和第3个数据包中都出现了安全参数索引(SPI)这个字段,这个字段简单的说是一个字串,用于唯一标识一个IPSec SA。
注意:第一阶段协商的IKE SA是一个双向的SA,但是第二阶段协商的IPSec SA则是一个单向的SA,也就是存在一个IPSec SA用于保护发起方到接收方的流量,标识这个IPSec SA的SPI出现在快速模式的第二个数据包中。还存在另外一个IPSec SA用来保护接收方到发起方的流量,而标识这个IPSec SA的SPI出现在快速模式的最后一个数据包中。
Cisco的IPSec VPN可以通过配置启用PFS特性,一旦启用,在IKE快速模式1-2包交换就会在进行一次DH交换。
第二阶段小结
第二阶段的主要任务就是基于具体的感兴趣流来协商相应的IPSecSA,IKE快速模式交换的三个数据包都得到了安全保护(加密、完整性校验和源认证)。另外需要注意的就是SPI和PFS。SPI用于唯一标识一个单向的IPSec SA,SPI的值是由目的设备决定的,PFS在Cisco的IPSec VPN中默认是不启用的,可以通过配置来启用。

打赏鼓励作者,期待更多好文!

打赏
暂无人打赏

339015 发表于 2022-10-17 00:19
  
感谢楼主分享,文章介绍了ipsec中有关ike的原理与协商过程分享,期待更多优秀的分享
发表新帖
热门标签
全部标签>
每日一问
技术盲盒
安全效果
干货满满
西北区每日一问
技术笔记
新版本体验
功能体验
【 社区to talk】
技术咨询
标准化排查
2023技术争霸赛专题
产品连连看
GIF动图学习
信服课堂视频
每周精选
自助服务平台操作指引
秒懂零信任
技术晨报
技术圆桌
通用技术
答题自测
安装部署配置
每日一记
原创分享
玩转零信任
场景专题
升级&主动服务
社区新周刊
POC测试案例
畅聊IT
专家问答
在线直播
MVP
网络基础知识
升级
安全攻防
上网策略
测试报告
日志审计
问题分析处理
流量管理
运维工具
云计算知识
用户认证
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
SDP百科
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
加速技术
排障笔记本
产品预警公告
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
深信服技术支持平台
社区帮助指南
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
以战代练
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
2024年技术争霸赛
北京区每日一练
故障笔记
排障那些事
高手请过招
高频问题集锦
全能先锋系列
云化安全能力

本版版主

12
185
6

发帖

粉丝

关注

121
316
352

发帖

粉丝

关注

本版达人

LoveTec...

本周分享达人

新手24116...

本周提问达人