×

ipsec VPN技术(基础篇二)
  

池文强 288

{{ttag.title}}

1.ipsec 封装模式

        AH ,ESP,AH+ESP       在该两种封装模式下都可以使用

        隧道模式(Tunnel Mode):保护一个网络中的设备的安全,通常是两台网关设备。

隧道模式使用新的报文头来封装消息,可以保护一个网络的消息,适用于两个网关之间通信,是比较常用的封装模式。

        传输模式(Transport Mode ):保护两台通信主机之间的安全。

传输模式不改变报文头,隧道的源和目的地址就是最终通信双方的源和目的地址,通信双方只能保护自己发出的消息,不能保护一个网络的消息。

图:隧道模式下的ESP加密报文

2.IKE 协议 协商建立IPsec SA

IKE协议中重要的协议ISAKMP协议,其报文如下:

a.Initiator’s Cookie(SPI)和responder’s Cookie(SPI):在IKEv1版本中为Cookie,在IKEv2版本中Cookie为IKE的SPI,唯一标识一个IKE SA。
b.Version:IKE版本号1。
c.Exchange Type:IKE定义的交互类型2。交换类型定义了ISAKMP消息遵循的交换顺序。
d.Next Payload:标识消息中下一个载荷的类型。一个ISAKMP报文中可能装载多个载荷,该字段提供载荷之间的“链接”能力。若当前载荷是消息中最后一个载荷,则该字段为0。
e.Type Payload:载荷类型,ISAKMP报文携带的用于协商IKE SA和IPSec SA的“参数包”。载荷类型有很多种,不同载荷携带的“参数包”不同。不同载荷的具体作用我们后面会结合抓包过程逐一分析。
说明:

1:IKEv1版本中可以在交换类型字段查看协商模式,阶段1分为两种模式:主模式和野蛮模式,阶段2采用快速模式。主模式是主流技术,野蛮模式是为解决现实问题而产生的。IKEv2版本中定义了查看创建IKE SA和CHILD SA(对应IKEv1的IPSec SA)的IKE_SA_INIT、IKE_AUTH(创建第一对CHILD SA)、CREATE_CHILD_SA(创建后续的CHILD SA)。

该ISAKMP协商使用的主模式,IKE SA协商双方发送了6个报文,后面的IPsec SA的协商使用的快速模式。

主模式下的协商过程:

分为三个阶段进行协商:


        双方响应IKE安全提议报文,同时在自己配置的ipsec 安全规则中寻找匹配的安全规则,主要匹配:加密算法、认证算法、身份认证方法、DH组标识,需要双方具有相同的匹配,才能协商成功。


        发送密钥材料,利用ISAKMP消息的Key Exchange和nonce载荷交换彼此的密钥材料,Key Exchange用于交换DH公开值,nonce用于传送临时随机数。


        生成密钥用于身份验证和加密,网关最终会产生三个密钥:

a.SKEYID_a:ISAKMP消息完整性验证密钥――谁也别想篡改ISAKMP消息了,只要消息稍有改动,响应端完整性检查就会发现!

b.SKEYID_e:ISAKMP消息加密密钥――再也别想窃取ISAKMP消息了,窃取了也看不懂!

以上两个密钥保证了后续交换的ISAKMP消息的安全性!


c.SKEYID_d:用于衍生出IPSec报文加密和验证密钥――最终是由这个密钥保证IPSec封装的数据报文的安全性!

整个密钥交换和计算过程在IKE SA超时时间的控制下以一定的周期进行自动刷新,避免了密钥长期不变带来的安全隐患。


        身份认证:  主要有两种认证方式-

--->预共享密钥(pre-share):设备的身份信息为IP地址或名称(包括FQDN和USER-FQDN两种形式)。当IKE Peer两端都有固定IP地址的时候,一般都用IP地址作为身份标识;当一端为动态获取IP地址的时候,没有固定IP地址的一端只能用名称来标识。


                --->数字证书方式(certificate):设备的身份信息为证书和通过证书私钥加密的部分消息Hash值(俗 称签名)


以上身份信息都由SKEYID_e进行加密,所以在抓包中我们只能看到标识为“Encrypted”的ISAKMP消息,看不到消息的内容(身份信息)。


IPsec SA 的建立:

     在IKE v1中,ipsec SA 的建立使用的是ISAKMP的快速模式,发送三条消息。其中的数据是加密的。协商的流程和交换的信息如下图:

IPsec SA 协商过程:


        对端发送IPsec安全提议和密钥材料,对端发送响应报文,包含匹配到得Ipsec规则,和密钥材料。同时双方生产用于IPsec SA 的密钥。


注意:


        由于IPSec SA的密钥都是由SKEYID_d衍生的,一旦SKEYID_d泄露将可能导致IPSec VPN受到侵犯。为提升密钥管理的安全性,IKE提供了PFS(完美向前保密)功能。启用PFS后,在进行IPSec SA协商时会进行一次附加的DH交换,重新生成新的IPSec SA密钥,提高了IPSec SA的安全性。

4390965ffe07f4d91a.png (157.13 KB, 下载次数: 33)

4390965ffe07f4d91a.png

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

打赏
暂无人打赏

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

本版版主

10
16
2

发帖

粉丝

关注

124
72
30

发帖

粉丝

关注

25
7
0

发帖

粉丝

关注

69
37
2

发帖

粉丝

关注

6
14
0

发帖

粉丝

关注

16
10
5

发帖

粉丝

关注

本版达人