IPSEC构建站点到站点连接的基本过程(标准IPsec VPN)
  

游远远_北京办_技术支持 9814

{{ttag.title}}
对于站点到站点的会话,构建连接的基本过程如下:
一个VPN网关对等体发起了到另外一个远程的VPN网关对等体的会话(触发流量),如果没有存在VPN的连接,那么ISAKMP/IKE阶段1开始:
l 两个对等体协商如何保护管理连接
l Diffie-hellman用于为管理连接中的加密算法和HMAC功能来安全的共享密钥。
l 在安全管理连接中来执行设备验证。
ISAKMP/IKE阶段1结束,阶段2开始:
对等体协商参数和密钥信息用来保护数据连接(这是在安全管理连接下实现的,或者你也可以选择性的再次使用Diffie hellman)
数据连接被建立,阶段2结束,VPN网关现在可以通过数据连接来保护用户流量。最终,管理连接和数据连接将会超时,并重新构建连接。协商过程中IKE使用用户数据报协议(UDP)端口500(通常用于源和目的双方)进行通信。
1.2     ISAKMP/IKE阶段1
ISAKMP/IKE阶段1基本上负责建立一个安全的管理连接,它有两种工作模式:主模式和积极模式(或称为野蛮模式)。管理连接是一个双向的过程,源和目标都是使用的UDP 500。
在ISAKMP/IKE阶段1将会发生三件事情,以建立双向的ISAKMP SA
      1.安全关联建立和安全参数协商(加密算法,HASH算法,DH组,身份认证)。
       2.DH算法(密钥交换)
       3.对等体认证(预攻向密钥,数字证书,加密随即数)
3.2.1 主模式
主模式在三次交换中总共用到了六条消息,最终建立了IKE SA。报文是UDP的类型,封装在端口500里面。6个数据包共三个步骤,[协商安全参数]、[Diffie-Hellman和nonce交换]、以及[对方身份的验证]
第一对消息主要为SA交换,是协商确认有关安全策略的过程;
①   发起者send一个cookie (记为:Ci ) 和SA负载(记为:SAi,包括使用的加密算法如DES、3DES等,散列算法如MD5,身份验证方法如预共享、数字签名、加密临时值等,生存时间等信息)用来协商参数;
②   响应者发送一个SAr(已经挑选的安全参数)和cookie Cr: 如果没有可以挑选的参数,响应者会返回一个负载拒绝;
第二对消息叫密钥交换,交换Diffie-Hellman公共值和辅助数据(如:随机数),加密物在这个阶段产生;
此过程的目的在于为第一对消息中所协商的算法生成加密key。两个对等体通过DH生成公钥并交换DH公钥参数以及随机的称为nonces(伪随机数)的仅被使用一次的值。nonces用来预防重传攻击。这2条消息,用于交换DH的公开信息和随机数。
两个对等体根据DH的公开信息都算出了双方相等的密值后,两个nonce连通预共享密钥生成第一个skeyID,随后便根据SKEY__ID来推算出其他几个skeyID。
1: KDH=DH算法(用自己的私钥+对方公钥)
2: SKEY__ID=hash (pre-shared key ,Ni | Nr)
3: SkeyID_d=hash(SKEY__ID, KDH| Ci | Cr | 0 )
4: SkeyID_a = hash(SKEY__ID, SkeyID_d |  KDH| Ci | Cr | 1)
5: SkeyID_e=hash(SKEY__ID,SkeyID_a |  KDH| Ci | Cr | 2 )
² skeyID_d---第二阶段使用,用来协商出后续IPSEC SA加密使用的IKE密钥资源;
² skeyID_a---散列预共享密钥(HMAC中的密钥),为后续的IKE消息协商以及IPSECSA协商进行完整性检查;
² skeyID_e---为后续的IKE消息协商以及IPSEC SA协商进行加密,下一阶段的message,data,Preshared key,和第二阶段的加密。
最后一对消息是ID信息和验证数据交换,这个过程是受skeyID_e加密保护的,进行身份验证和对整个SA交换进行验证。
       完成此步骤的设备认证,使用skeyID_e进行加密,SkeyID_a 进行HASH认证(HASH_i,HASH_r)所涉及的算法都是最前面两个包协商出来的;最重要的是在这次交换中还有个ID交换(IDi,IDr);
6.HASHi = hash(SKEYID, X|Y|Ci|Cr|SAr|IDi)
7.HASHr = hash(SKEYID, X|Y|Cr|Ci|SAi|IDr)
主模式的好处:设备验证的步骤发生在安全的管理连接中,因为这个连接是在前两个步骤中构建的,因此,两个对等体需要发送给对方的任何实体信息都可以免受攻击。站点到站点和使用证书做设备验证的远程访问默认使用主模式。
主模式=1个双向ISAKMP SA + 2次加密 + 3次交换 + 5个KEY + 6个包 + 7步运算
3.2.2 野蛮模式(积极模式)
对于两端IP地址不是固定的情况(如ADSL拨号上网),并且双方都希望采用预共享密钥验证方法来创建IKE SA,就需要采用野蛮模式。另外如果发起者已知回应者的策略,采用野蛮模式也能够更快地创建IKE SA。
1.在第一条消息中,发起方发送ISAKMP报头,安全关联,DH公开值,临时值和身份ID
2.在第二条消息中,应答方用选定提议的所有参数和DH公开值进行应答,该消息被验证,但没有加密.
3第三条消息由发起方发回给应答方,该消息被验证,让应答方能够确定其中的散列值是否与计算得到的散列值相同,进而确定消息是否有问题.积极模式没有主模式安全,因为身份是以明文方式传输的且不能协商DH参数
总结:积极模式=1个双向ISAKMP SA+1次加密+3个步骤+3个包+5个KEY+7步运算
3.3.3 野蛮模式的必要性:
两边都是主机名的时候,就一定要用野蛮模式来协商,如果用主模式的话,就会出现根据源IP地址找不到预共享密钥的情况,以至于不能生成SKEY_ID。
1、因为主模式在交换完3、4消息以后,需要使用预共享密钥来计算SKEY_ID,但是由于双方的ID信息在消息5、6中才会被发送,此时主模式的设备只能使用消息3、4中的源IP地址来找到与其对应的预共享密钥;如果主模式采用主机名方式,主机名信息却包含在消息5、6中,而IPSEC双方又必须在消息5、6之前找到其相应的预共享密钥,所以就造成了矛盾。
2、在野蛮模式中,ID信息(IP地址或者主机名)在消息1、2中就已经发送了,对方可以根据ID信息查找到对应的预共享密钥,从而计算出SKEY_ID。
3.3.4 两种模式的区别:
1、野蛮模式协商比主模式协商更快。主模式需要交互6个消息,野蛮模式只需要交互3个消息。
2、主模式协商比野蛮模式协商更严谨、更安全。因为主模式在5、6个消息中对ID信息进行了加密。而野蛮模式由于受到交换次数的限制,ID信息在1、2个消息中以明文的方式发送给对端。即主模式对对端身份进行了保护,而野蛮模式则没有。
3、NAT支持:
①对预共享密钥认证:主模式不支持NAT转换,而野蛮模式支持
②对于证书方式认证:两种模式都能支持。
4、两种模式在确定预共享密钥的方式不同。主模式只能基于IP地址来确定预共享密钥。而野蛮‘模式是基于ID信息(主机名和IP地址)来确定预共享密钥。
1.3     ISAKMP/IKE阶段2
SAKMP/IKE阶段2只有一个模式:快速模式.它定义了受保护数据连接是如何在两个IPSEC对等体之间构成的.快速模式有两个主要的功能:
    1.协商安全参数来保护数据连接。
    2.周期性的对数据连接更新密钥信息.
阶段2所关心的事:
    1.什么流量需要被保护?(感兴趣流量)
    2.应当使用什么样的安全协议来保护流量(AH,ESP)
    3.基于选择的安全协议,数据流量是如何 被保护的?(例如使用什么样的HMAC功能)
    4.使用什么样的操作模式?(传输模式,隧道模式)
    5.当刷新密钥信息的时候,是ISAKMP/IKE阶段1的管理用来共享心的密钥还是完美转发密钥用于刷新密钥?
    6.数据连接的生存周期是多少?

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

打赏
1人已打赏

SteveNiaobs 发表于 2015-3-31 17:09
  
好文章,学习了!
zhang_yonghui 发表于 2015-11-20 10:52
  
我靠   没发现还有这么一篇文章    给个大拇指
lovelzt 发表于 2019-3-29 22:10
  
把原理都讲的非常详细,真的很棒。我这边有个问题,第一阶段和第二阶段的生存周期需要一致吗,如果不一致会有什么影响
会飞的癞蛤蟆 发表于 2019-4-4 10:25
  
很专业,谢谢分享。。。
发表新帖
热门标签
全部标签>
西北区每日一问
技术盲盒
安全效果
每日一问
干货满满
【 社区to talk】
技术笔记
新版本体验
功能体验
产品连连看
技术咨询
GIF动图学习
2023技术争霸赛专题
标准化排查
每周精选
通用技术
信服课堂视频
秒懂零信任
自助服务平台操作指引
安装部署配置
排障笔记本
答题自测
原创分享
升级&主动服务
社区新周刊
POC测试案例
畅聊IT
专家问答
技术圆桌
在线直播
MVP
网络基础知识
升级
安全攻防
上网策略
测试报告
日志审计
问题分析处理
流量管理
每日一记
运维工具
云计算知识
用户认证
解决方案
sangfor周刊
VPN 对接
项目案例
SANGFOR资讯
专家分享
技术顾问
信服故事
SDP百科
功能咨询
终端接入
授权
设备维护
资源访问
地址转换
虚拟机
存储
迁移
加速技术
产品预警公告
玩转零信任
信服圈儿
S豆商城资讯
技术争霸赛
「智能机器人」
追光者计划
深信服技术支持平台
社区帮助指南
答题榜单公布
纪元平台
卧龙计划
华北区拉练
天逸直播
以战代练
技术晨报
山东区技术晨报
文档捉虫活动
齐鲁TV
华北区交付直播
2024年技术争霸赛
北京区每日一练
场景专题
故障笔记
排障那些事
高手请过招
高频问题集锦
全能先锋系列
云化安全能力

本版达人

adds

本周建议达人

无极剑圣

本周分享达人

新手25642...

本周提问达人