一、IPSec VPN概述
RFC 2401描述了IPSec(IP Security)的体系结构
IPSec是一种网络层安全保障机制
IPSec可以实现访问控制、机密性、完整性校验、数据源验证、拒绝重播报文等安全功能
IPSec可以引入多种验证算法、加密算法和密钥管理机制
IPSecVPN是利用IPSec隧道实现的L3 VPN
IPSec也具有配置复杂、消耗运算资源较多、增加延迟、不支持组播等缺点
二、IPSec体系结构
- 安全协议
- 负责保护数据
- AH/ESP
- 工作模式
- 传输模式:实现端到端保护
- 隧道模式:实现站点到站点保护
- 密钥管理
- 手工配置密钥
- 通过IKE协商密钥
IPSec传输模式
IPSec隧道模式
IPSec SA
- SA(Security Association,安全联盟)
- 由一个(SPI,IP目的地址,安全协议标识符)三元组唯一标识
- 决定了对报文进行何种处理
- 协议、算法、密钥
- 每个IPSecSA都是单向的
- 手工建立/IKE协商生成
- SPD(Security Policy Database)安全策略数据库
- SAD(Security Association Database)安全联盟数据库
IPSec出站处理流程
IPSec入站包处理流程
三、AH
AH介绍
- AH(Authentication Header验证头)IPSec两种安全协议之一,可以工作于传输模式和隧道模式
- 提供数据的完整性校验和源验证
- 不能提供数据加密功能
- 可提供有限的抗重播能力
传输模式AH封装
隧道模式AH封装
四、ESP
ESP介绍
- ESP(Encapsulating Security Payload封装安全载荷)
- RFC 2406
- 可提供数据的机密性保证
- 可提供数据的完整性校验和源验证
- 可提供一定的抗重播能力
ESP头和尾格式
传输模式ESP封装
隧道模式ESP封装
五、IKE
IKE(因特网秘钥交换)介绍
- 无论是AH还是ESP,其对一个IP包执行操作之前,首先要建立一个IPSecSA。IPSecSA可以手工建立,也可以动态协商。IKE就是用于这种动态协商的的协议。
- 使用Diffie-Hellman交换,在不安全的网络上安全地分发密钥,验证身份
- 定时更新SA和密钥,实现完善的前向安全性
- 允许IPSec提供抗重播服务
- 降低手工布署的复杂度
- UDP端口500
IKE与IPSec的关系
- IKE为IPSec提供自动协商交换密钥、建立SA的服务
- IPSec安全协议负责提供实际的安全服务
IKE协商的两个阶段
阶段1
- 在网络上建立一个IKE SA,为阶段2协商提供保护
- 主模式(Main Mode)和野蛮模式(Aggressive Mode)
阶段2 - 在阶段1建立的IKE SA的保护下完成IPSec SA的协商
- 快速模式(Quick Mode)
IKE主模式
IKE野蛮模式
IPSec配置
- 配置安全ACL
- 配置IPsec安全提议(指定安全协议、加密算法、认证算法、封装模式等)
- 配置IKE(因特网秘钥交换)预共享密码
- 配置IKE协商文件
- 配置IPsec安全策略(将ACL、安全提议进行关联,并指定IPsec SA(安全联盟)的生成方式
(ike协商方式)、对等体(对端)ip地址、ike协商文件等) - 配置对端内网的静态路由
- IPsec安全策略应用于接口