IPSEC流程例子及两个阶段的协商过程详细介绍

IPSEC VPN两个阶段的协商过程详细介绍

IPSec体系结构模型图

  我们来看一个完整的IPSec体系结构模型图,以便更好地理解IPSec体系结构。

  IPSec流程图


SAKMP/IKE第一阶段称为ISAKMP/IKE的管理连接阶段.使用双向的UDP端口为500的数据连接,来共享IPSEC消息.

第二阶段(3条)
phase 2的目标是协商IPSEC SA,而且只有一种模式,快速模式,快速模式的协商是受IKE SA保护的


IPSec流程实例

  为简单起见,我们假设这是一个Intranet例子,每台主机都有处于激活状态的IPSec策略:

  1.用户甲(在主机A上)向用户乙(在主机B上)发送一消息 
  2.主机A上的IPSec驱动程序检查IP筛选器,查看数据包是否需要受保护以及需要受到何种保护 
  3.驱动程序通知IKE开始安全协商 
  4.主机B上的IKE收到请求安全协商通知 
  5.两台主机建立第一阶段SA,各自生成共享"主密钥" 注:若两机在此前通信中已经建立起第一阶段SA,则可直接进行第二阶段SA协商 
  6.协商建立第二阶段SA对:入站SA和出站SA。SA包括密钥和SPI。 
  7.主机A上IPSec驱动程序使用出站SA对数据包进行签名(完整性检查)与/或加密。 (开始发送数据包)
  8.驱动程序将数据包递交IP层,再由IP层将数据包转发至主机B 
  9.主机B网络适配器驱动程序收到数据包并提交给IPSec驱动程序。 
  10.主机B上的IPSec驱动程序使用入站SA检查完整性签名与/或对数据包进行解密。 
  11.驱动程序将解密后的数据包提交上层TCP/IP驱动程序,再由TCP/IP驱动程序将数据包提交主机B的接收应用程序。

  以上是IPSec的一个完整工作流程,虽然看起来很复杂,但所有操作对用户是完全透明的。中介路由器或转发器仅负责数据包的转发,如果中途遇到防火墙、安全路由器或代理服务器,则要求它们具有IP转发功能,以确保IPSec和IKE数据流不会遭拒绝。

  这里需要指出的一点是,使用IPSec保护的数据包不能通过网络地址译码NAT。因为IKE协商中所携带的IP地址是不能被NAT改变的,对地址的任何修改都会导致完整性检查失效。


你可能感兴趣的:(linux)