sswk

 

【网络基础知识】IPSecVPN技术介绍(一)

1. IPSec VPN 是什么

  • VPN 技术一般指虚拟专用网络。 虚拟专用网络(VPN)的功能是:在公用网络上建立专用网络,进行加密通讯。在企业网络中有广泛应用。VPN 网关通过对数据包的加密和数据包目标地址的转换实现远程访问。 PPTP VPN、L2TP/IPSec VPN、 Open VPN(SSL VPN)是最常用的三种 VPN 形式。
  • IPSec 是为实现 VPN 功能而最普遍使用的协议。 IPSec 不是一个单独的协议,它给出了应用于 IP 层上网络数据安全的一整套体系结构。该体系结构包括认证头协议(Authentication Header,简称为 AH )、封装安全负载协议(Encapsulating Security Payload,简称为 ESP)、密钥管理协议( Internet Key Exchange,简称为 IKE)和用于网络认证及加密的一些算法等。 IPSec规定了如何在对等体之间选择安全协议、确定安全算法和密钥交换,向上提供了访问控制、数据源认证、数据加密等网络安全服务。
  • IPSec VPN 是指采用 IPSec 协议来实现远程接入的一种 VPN 技术。 StoneOS 通过“基于策略的 VPN”和“基于路由的 VPN”两种方式把配置好的 VPN 隧道应用到 Hillstone 设备上,实现流量的加密解密安全传输。
  • 基于策略的 VPN:将配置成功的 VPN 隧道名称引用到策略规则中,使符合条件的流量通过指定的 VPN 隧道进行传输。
  • 基于路由的 VPN: 将配置成功的 VPN 隧道与隧道接口绑定;配置静态路由时,将隧道接口指定为下一跳路由。

2. IPSec VPN 框架


2.1 密钥交换部分

  • 密钥获得方法:手工密钥、协商密钥交换。
  • 密钥交换两个阶段:第一阶段完成认证和对第二阶段保护套件的协商;第二阶段完成真正VPN 数据保护套件的协商。
  • 密钥交换两种主要的交换模式:主模式和野蛮模式。

2.2 数据封装部分

  • 两种协议: ESP 和 AH (StoneOS 单独支持 ESP 和 AH,但不支持 ESP+AH 组合使用)。
  • 两种模式:封装模式和传输模式。
  • 提供的安全:秘密性、完整性、防重放。

2.3 密钥交换协议(IKE)

  • IPSec VPN 需要预先协商加密协议、散列函数、封装协议、封装模式和密钥有效期等内容,具体执行协商任务的协议叫做 IKE。 IKE 属于一种混合型协议,由 Internet 安全关联和密钥管理协议(ISAKMP)和两种密钥交换协议 OAKLEY 与 SKEME 组成。
  • IKE 使用了两个阶段为 IPSec 进行密钥协商并建立安全联盟 SA:
  • 第一阶段,通信各方彼此间建立了一个已通过身份验证和安全保护的通道,此阶段的交换建立了一个 ISAKMP 安全联盟, 即 ISAKMP SA (也可称 IKE SA。安全关联(SA)是实体间的关系,它表示通信方如何使用安全服务进行安全通信。 IKE SA 就是 IKE 之间如何使用安全服务进行通信;IPSec SA 就是 IPSec 实体间如何使用安全服务进行通信)。
  • 第二阶段,用在第一阶段建立的安全通道为 IPSec 协商安全服务,即为 IPSec 协商具体的安全联盟,建立 IPSec SA,IPSec SA 用于最终的 IP 数据安全传输。

2.4 安全联盟 SA 及匹配方法

  • SA:IPSec 在两个端点之间提供安全通信, 两个端点被称为 IPSec ISAKMP 网关。安全联盟(简称为 SA)是 IPSec 的基础,也是 IPSec 的本质。 SA 是通信对等体间对某些要素的约定, 例如使用哪种协议、协议的操作模式、加密算法(DES、 3DES、 AES-128AES-192 和 AES-256)、特定流中保护数据的共享密钥以及 SA 的生存周期等。

SA 匹配方法:

  • Outbound(加密方向):策略或者路由驱动。比如 policy 定义某一个流(源地址、目的地址和应用(协议、源端口、目的端口))进行 IPSec 加密。路由驱动,绑定 VPN 到 tunnel 接口,路由到该 tunnel 接口。
  • Inbound(解密方向):目的地址+协议+SPI。实际时 flow,即六元组(源目 IP,源目端口,协议,入安全域)的匹配,其中源端口和目的端口共同组成了 SPI。

3. IPSec VPN 特性

3.1 两种协商模式

  • 第一阶段主模式需要 3 次共 6 个报文的交换。第一次交换用来协商 p1 提议;第二次交换用于生成给后续协商报文和数据报文加密用的加密材料;第三次交换用来验证对方身份,其中包含 ID 和认证载荷。 1、 2、 3、 4 个报文为明文传输, 5、 6 个报文使用 3、 4 报文协商出的加密材料进行加密。
  • 第一阶段野蛮模式需要总共 3 个报文的交换。第一个报文就将 p1 提议、本端 ID 等发送给对端,响应者发送的第二个报文包含选定的 p1 提议、本端 ID 和认证载荷等发给发起者,最后发起者会将自己的认证载荷作为第三个报文发出。野蛮模式三个报文都为明文传输。
  • 主模式的身份认证是在加密的第 5、 6 个报文完成,因此主模式比野蛮模式更加安全;野蛮模式交互只需要 3 个报文,比主模式更快;主模式的协商能力强于野蛮模式。

3.2 两种封装模式

3.2.1 传输模式

  • 传输模式(Transport Mode)是 IPSec 的默认模式,又称端到端(End-to-End)模式,它只适用于 PC 到 PC 的场景(原因: 1. IP 地址无法在公网路由, 2. 由于目的地址不是响应方网关,即使到达网关也无法解密) 。
  • 传输模式下只对 IP 负载进行保护,可能是 TCP/UDP/ICMP 协议,也可能是 AH/ESP 协议。传输模式只为上层协议提供安全保护,在此种模式下,参与通信的双方主机都必须安装 IPSec协议,而且它不能隐藏主机的 IP 地址。启用 IPSec 传输模式后,IPSec 会在传输层包的前面增加 AH/ESP 头部或同时增加两种头部,构成一个 AH/ESP 数据包,然后添加 IP 头部组成 IP包。在接收方, 首先处理的是 IP,然后再做 IPSec 处理,最后再将载荷数据交给上层协议。

3.2.2 隧道模式

  • 隧道模式(Tunnel Mode)使用在两台网关之间,站点到站点(Site-to-Site)的通信。参与通信的两个网关实际是为了两个以其为边界的网络中的设备提供安全通信的服务。
  • 隧道模式为整个 IP 包提供保护,为 IP 协议本身而不只是上层协议提供安全保护。通常情况下只要使用 IPSec 的双方有一方是安全网关,就必须使用隧道模式。大部分 VPN 都使用隧道模式,因为它不仅对整个原始报文加密,还对通信的源地址和目的地址进行部分和全部加密,只需要在安全网关,而不需要在内部主机上安装 VPN 软件,期间所有加密和解密以及协商操作均由前者负责完成。
  • 启用IPSec隧道模式后, IPSec将原始IP看作一个整体作为要保护的内容,前面加上AH/ESP头部,再加上新 IP 头部组成新 IP 包。


3.3 两种认证方式

  • 预共享密钥认证:生成加密材料时会使用预共享密钥;认证载荷是对加密材料的 hash 运算值。 通常情况下,确定预共享密钥需要根据对端 IP,如果对端的 IP 是动态则无法找到正确的预共享密钥。Hillstone 的设备是通过 peer 来对应预共享密钥,只要找到了正确的 peer 也就能找到正确的预共享密钥。并且 hillstone 设备对于查找 peer 有一套自己的逻辑,因此 hillstone 的设备在对端为动态的情况下也能使用主模式。
  • 证书认证:生成加密材料时会使用 DH 交换生成的共享秘密;认证载荷包括签名载荷和证书载荷。对于 hillstone 的设备来说,签名载荷是用对应信任域中的私钥,对发送的消息中的一部分进行加密。证书载荷是对应信任域中的本地证书。

3.4 NAT 穿越

  • AH 协议不支持 NAT 穿越, ESP 协议支持 NAT 穿越。
  • 原因: NAT 网关会修改报文的 IP 和 port,但 IPSec 中的 AH 协议是对整个报文进行完整性校验的,不允许 NAT 设备对报文进行任何修改操作。而 ESP 协议只验证 IP 负载部分,不对 IP 头部进行验证,因此,使用 AH 协议封装保护的 IPSec 流量是无法和 NAT 共存的。
封装协议 协议号 是否提供保密性 是否提供完整性 是否提供源认证 是否验证IP头部
ESP 50 只验证IP负载部分,不对IP头部进行验证
AH 51 除了要验证IP负载部分,还要验证IP头部的部分字段
  • 正常的 isakmp 报文是通过 UDP 的 500 端口发送,开启 NAT 穿越后, isakmp 协商报文(主模式的 1、 2、 3、 4 个报文,野蛮模式 1、 2 个报文)会进行 nat 探测,一旦发现中间存在 nat设备,isakmp(主模式第五个以及后面的报文,野蛮模式第 3 个以及后面的报文)会将端口改为 UDP 的 4500,并在 UDP 报头和 isakmp 报头之间插入一个 non esp marker 用来和 UDP封装的 esp 报文进行区分, 之后的 esp 数据报文会在 new IP 头和 esp 头之间插入一个 UDP报头(端口号为 4500),这样就可以支持中间设备的 PAT。

更多VPN及其他精彩内容请见:https://kb.hillstonenet.com/cn/

posted on 2022-04-26 10:05  路与飞  阅读(97)  评论(0编辑  收藏  举报

导航