基于IPSec协议簇构建的专用安全通道

IPsec 虚拟专用网:

  • 需求背景:对保密性需求越来越高,GRE,L2TP等VPN技术不支持保密性要求

  • IPSec(Internet Protocol Security):是一组基于网络层的,应用密码学的安全通信协议族。IPSec不是具体指哪个协议,而是一个开放的协议族。

  • IPSec VPN:是基于IPSec协议族构建的在IP层实现的安全虚拟专用网,通过在数据包中插入一个预定义头部的方式,来保障OSI上层协议数据的安全

  • IPsec提供机密性,不可否认性,完整性,重传攻击保护,数据源鉴别

  •  

  • IPsec协议簇:

    • 工作模式:传输模式,隧道模式(分析两者区别看路由通不通)

      • 传输模式:(一般用在已经解决连通性而缺乏安全性的线路,比如专线不经过internet,内网中)

        • 应用场景:只适合应用于主机到主机建立端到端的通信

          • 私VPN到公VPN,nat后源变成公网IP这是可以通的,但反过来通不了,公VPN到私VPN在公网上没有该私网VPN路由

        • 封装方式:封装不改变原有IP包头,在原始IP头部后面插入IPsec包头,将原来的数据部分封装成被保护的数据

      • 隧道模式:

        • 应用场景:适用于任何场景,常用于私网与私网之间通过公网进行通信

        • 封装方式:增加新的IP头,后是IPsec包头,将原来的整个数据包封装成被保护的数据中

    • IPSec协议对IP报文进行保护的两种保护协议:ESP协议可进行加密和鉴别,AH协议只能进行鉴别

      • AH(认证报头):协议号51

        • 用MD5,SHA1实现数据完整性,也提供完整性检确认,数据源认证,抗重放攻击等安全特性,但对数据包不提供加密

        • 传输模式下封装:原始IP头部后+AH认证摘要(对整个报文经过MD5算出HASH值)+IP数据

          •  

        • 隧道模式下封装:新IP头部+AH认证摘要(整个报文(包括新IP头)经过MD5算出)+原始IP头+IP数据

          •  

          • 无法在NAT穿越NAT-T中使用,因为当VPN设备在内网计算好摘要后经过NAT设备转换源地址,摘要发生变化,对端的VPN设备接收到后再次计算摘要,发现摘要不一样会被误认为被篡改而不接收,因此出现了ESP,不再利用IP头部计算摘要

      • ESP:协议号50

        • 使用MD5,SHA1实现数据完整性,常用DES,3DES,AES等加密算法实现数据加密。也提供完整性检确认,数据加密,抗重放攻击等安全特性

        • 传输模式下封装:IP数据使用加密算法加密,对(加密后的IP数据+ESP头+填充,即整个报头除掉原始IP头)再计算出HASH值,生成ESP摘要放在整个报文的最后

          • 原始IP头+ESP头+加密后IP数据(里面可能包含TCP等传输层数据)+填充+ESP摘要

          •  

        • 隧道模式下封装:IP数据和原始IP头用加密算法加密,新增IP头部+ESP头+加密IP数据+填充+ESP摘要

          •  

          • 封装不包含新IP头部所以可支持NAT-T

      • AH与ESP的区别

        •  

 

那么IPSec要如何保护IP数据,如何选择加密算法,验证算法,使用相同密钥,怎么选择使用AH还是ESP?

这些涉及到的加密算法,密钥,AH/ESP等因素都包含在安全关联SA中。所以SA是IPSec的基础。况且AH/ESP也都使用SA中参数。

 

 

SA的产生?1.手工配置没有生成周期限制,2.IKE自动管理

  • IKE(Internet密钥交换)用于动态建立SA,IKE是种混合协议,建立在由ISAKMP定义的一个框架之上,实现了两种密钥管理协议(SKEME和Oakley)的一部分

  • ISAKMP协议(安全联盟密钥管理协议)定义了协商,建立,修改和删除SA的过程和包格式,但并没有定义具体的SA格式,这个通用框架是与密钥交换独立的,可以被不同密钥交换协议使用。报文利用UDP端口都是500。IKE使用ISAKMP消息来协商并建立SA

    • IKE(Internet密钥交换)

      • 产生背景:

        • 当网络节点较多手工配置较困难,难以保证安全性,这时可以使用IKE(Internet密钥交换)用于动态建立SA,代表IPSec对SA协商

      • 用途:

        • 为IPSec协商生成密钥,供AH/ESP加解密和验证使用

        • 动态地建立SA,对SA进行管理和维护

      • IKE协商分为两个阶段:

        • 一阶段交换:建立一个已通过身份验证和安全保护(为第二阶段的ISAMP消息IPSec SA提供安全保护)的通道即ISAMP SA(IKE SA),可以用来保护多个第二阶段IPSec SA的通信过程。两种协商模式:主模式和野蛮模式,下面是主模式

          • 1.

          •  

          • 2.交换协商ISAKMP消息的SA载荷(5元组:加密算法,验证算法,DH算法,验证方式,SA生存时间)

          •  

          • 3.交互IKE密钥载荷,随机数载荷。

          •  

            • DH是公钥分发系统,使用非对称密钥加密,通过不安全的通信通道为通信双方建立一个共享的密钥。也计算出了1,2协商的加密算法所需要的参数,所以在5,6会对报文进行加密

          • 4.

          •  

          • 5.交换身份载荷和HASH载荷(生成了自己身份验证的hash值发给对方),报文第五个开始已经加密了

          •  

          • 6.

          •  

          •  

          • 验证一旦通过,就进入了IKE第二阶段:快速模式

        • 加密在DH载荷交换完成后,HASH值在消息5开始发送,收到hash值后才开始第一次认证,所以在发送消息6之前会有第一次认证
          •  

 

      • 野蛮模式:野蛮模式标识为Aggressive,仅三个包。HASH值在消息2中开始发送,所以认证在消息3
        •  

          • 消息1:将主模式中需要进行交换的数据全部进行了发送,SA载荷传输集,(DH)IKE密钥交换载荷,(DH)随机数载荷,身份验证载荷

          •  

          • 消息2:当应答方接收到发起方发送来的消息1后,通过自身查看SPD是否存在与发起方身份匹配的相关策略,若存在,则利用消息1中信息与自身身份标识进行计算,生成身份验证hash值后,将自身配置策略信息和hash值传送给发起方。相比消息1,增加了hash载荷。消息2依旧还未加密

          •  

          • 消息3:发起方接收到应答方的策略信息和hash值后,将本地储存信息和身份载荷一起hash计算然后与对方的hash载荷进行验证,若匹配,则将自身的hash值(HASH载荷)用DH中计算得到的密钥加密后,传输给应答方。

          •  

 

  • 主模式和野蛮模式比较
    •  

    • 二阶段交换:利用已经建立起来的IKE SA通道建立IPSec SA,产生真正可以用来加密数据流的密钥,IPSec SA用来为IP数据提供安全保护。

    • 双方协商IPSec安全参数,称为变换集tranform set包括:加密算法,Hash算法,安全协议,封装模式,存活时间,DH算法。第二阶段所有数据都经过了加密,整个协商过程受第一阶段ISAKMP SA保护

      • 只有一种信息交换模式--快速模式,主要两个功能:1.协商安全参数来保护数据连接,2.周期性的对数据连接更新密钥信息

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值