IPSEC协议簇 基于网络层,应用密码学的安全通信协议
在IPV6中,IPSEC是被要求强制使用的,但是,IPV4中作为可选项使用
机密性:数据加密
完整性:防篡改
数据源鉴别:身份认证
不可否认性:数据源鉴别
重传攻击保护 --- 通过添加序列号,一个随机的数字,用来标识唯一SA,用来防止重放攻击
IPSEC协议簇包含的内容:
两种工作模式:
传输模式:不改变原有的IP包头,在原始数据包头后面添加IPSEC包头,将原有的数据封装成被保护的数据
因为没有添加新的IP头部,所以,无法跨越公网,只能在私网传输数据。
隧道模式:
需要增加新的IP头部,其后面是IPSEC的包头,之后,将原来的整个数据
包进行分装保护。 适用于需要跨越公网的环境
两个通信保护协议
AH --- 鉴别头协议 ---属于网络层协议 协议号 51
可以提供的安全服务:
1.数据完整性保证
2.数据源认证
3.抗重放攻击
其最主要的工作是保证数据传输的完整性,无法对数据进行加密保护。
AH的抱头:
SPI:用来唯一标识SA (安全联盟,可以理解为会话)
IPSEC隧道在建立之前,双方需要协商安全参数,安全参数协商完成后,则建立对应的SA
注意:IPSEC SA是分方向的,想要构建一个双向安全通道,则需要建立两条相反的SA,不同的SA需要SPI进行标识
相当于一个ID号
AH的保护范围:
传输模式
隧道模式
因为AH在进行完整性校验时会包含IP头部的内容,所以,在IP头部中,有一些在
传输过程中就会发生变化的数据,比如TTL,TOS这样的数据将不做校验。
因为会校验IP地址,所以,AH无法应用在NAT环境下。
ESP的保护范围
ESP 封装安全载荷协议,属于网络层协议 协议号:50
可以提供的安全服务
1,数据的完整性校验
2,数据源认证
3,抗重放的保护
4,数据保密 --- 注意,这个是AH所不具备的一个安全服务 --- 可以进行选择性加密
ESP的头部
保护范围 --- 加密的范围是除了最外层的IP头部,ESP的头部以及最后ESP的认证数据部分不进行加密,其他内容都需要进行加密;
完整性校验的范围是加密的内容再增加ESP的头部内容
传输模式:
隧道模式:
当然了,AH和ESP可以同时使用
传输模式:
隧道模式:
创建IPSEC
手工创建IPSEC SA
1.定义需要被保护的数据量
2.配置IPSec安全提议
3.配置手工方式的IPSec 安全策略
4.应用IPsec安全策略
动态创建IPSEC SA
这里要涉及到IKE --- 互联网密钥交换
有两个版本,分别是IKE V1 IKE V2
IKE 协议包含三个协议
SKEME 为ISAKMP提供参数环境
OAKLEY 为ISAKMP提供参数环境
ISAKMP -- 互联网安全密钥管理协议 UDP 500端口 要求原目标端口都必须是UDP 500
阶段1:
协商构建IKE SA(ISAKMP SA) ,其主要目的是建立 IKE 通道(建立IPSEC SA 的参数在这个通道传递)
主模式 --- 默认使用IP地址作为身份标识,需要经过6个数据包交互来完成IKE SA 的建立,安全性较高
野蛮模式 --- 可以自定义身份标识,并且,速度较快,仅需使用3个数据包就可以完成IKE SA的建立
阶段2
通过阶段1构建的安全通道,传递需要建立IPSEC SA使用的安全参数,用来协商最终的密钥。
第二阶段需要协商的安全参数
1.加密算法(最终进行数据加密使用的算法) --- 协商完加密算法后,需要计算最终使用的加密密钥,需要根据第一阶段计算出来的推到密钥计算得出
2.Hash算法 --- 最终进行数据传输时使用的hash算法
3.安全协议 --- AH/ESP
4.封装模式 --- 隧道/传输
5.存活时间
VPN黑洞:隧道建立后,其中一台设备发生异常,另外一端设备还在SA的有效期内,数据则会出现有去无回的情况,形成VPN黑洞。
解决方案 --- DPD死亡对等体检测
类似于心跳检测机制
利用的是空闲计时器原理 --- 两边同时开启一个计时器,有数据包通过时,直接刷新计时器,如果计时器归0,则会开始发送DPD的探测报文,对方收到后,将回复应答,正常回复则刷新计时器,如果没有应答,则连续发送5次,都没有应答,则将拆掉通道;
整个配置IPSEC的过程
1.抓取感兴趣流量
2.配置IKE的安全提议
3.配置IKE对等体
4.配置IPSEC安全提议
5.配置IPSEC安全策略 (将ACL,IKE对等体,IPSEC提议)
6.接口调用
IKEV1 与 IKEV2的区别
1.IKEV1协商效率较低;主模式(6个) + 快速模式(3个) = 9个,野蛮模式(3个) +
快速模式(3个) = 6个
IKEV2也存在两个阶段,这两个阶段均仅需两个数据包即可完成,总共4个数据包
2.IKEV1是不支持远程用户接入认证。但是,可以结合L2TP VPN实现效果
IKEV2是支持用户认证的,加入了一种叫做EAP的认证。
防火墙上,默认是同时开启IKEV1和IKEV2的。发起连接时优先使用IKEV2,接受到IKEV1连
接也可以支持
IPSEC应用场景
1.VPN的网关部署模式
存在安全风险
解决方式:
1.使用安全设备集成VPN功能作为边界
2.将VPN设备下沉到内网中
2.VPN的单臂路由 ---在NAT环境下的VPN部署
存在的问题:
① 身份认证问题
解决方式:
选择ESP协议
但是有个问题!!!
因为TCP或者UDP的封装中,包含伪头部校验,会校验IP头部中包含IP地址在
内的12个字节的内容,一般NAT在进行转换时,会将地址和校验和一起更改,在
ESP加密之后的场景中,
因为传输层的数据被加密,
导致伪头部校验和无法修改,
最终会因为校验失败,导致数据传输失败
还有一个更重要的端口问题!!!
②端口问题(
因为IKE在协商时,要求,源目端口都必须是UDP 500,如果,NAT-T做了端口
转换技术,则将可能修改原先端口,导致对接失败
)
NAT-T技术