Professional Documents
Culture Documents
VPN 技术
VPN 概述
VPN 的功能
VPN 的工作原理
VPN 的具 用
了解 VPN
分支 机构
端到端数据通路的典型构成
安全网关 内部网
ISP 接入设备
Internet
安全网关
远程访问
内部段
外部段
拨入段 公司的内部网络
(公共因特网)
VPN 网络面临的风险
拨入段数据泄漏风险
因特网上数据泄漏的风险
安全网关中数据泄漏的风险
内部网中数据泄漏的风险
VPN 的功能
• 数据机密性保护
• 数据完整性保护
• 数据源身份认证
• 重放攻击保护
数据机密性保护
WWW Mail DNS
内部 WWW
DMZ 区域
Router Internet
一般子网
拨号服务器
明文传输
PSTN
管理子网
重点子网
明文传输
下属机构
密文传输
内部子网
DDN/FR
X.25 专线
数据完整性保护
Hash 摘要
内部 WWW 对原始数据包进行 Hash
对原始数据包进行加密 加密
加密 后的 数据
包
一般子网
原始数据包
加密 后的 数据 摘要
管理子网 包
重点子网 解密
Hash
加密后的 数据 原始数据包 摘要
包
摘要
与原摘要进行比较,验证数据的完整性
内部子网
原始数据包
DDN/FR 加密 后的 数据 摘要
包 下属机构
X.25 专线
数据源身份认证
DSS
得到数字签名
内部 WWW Hash 摘要
对原始数据包进行 Hash
私钥 加密
一般子网
原始数据包
将数字签名附在原始包
后面供对方验证签名
原始数据包 DSS
管理子网
取出 DSS Hash
重点子网 原始数据包 DSS 原始数据包 摘要
内部工作子网 两摘要相比较
DSS 解密 摘要
相等吗?
验证通过
原始数据包
DDN/FR 下属机构
X.25 专线 原始数据包 DSS
重放攻击保护
AH 协议头
下一头部 负载长度 保留
安全参数索引( SPI )
序列号
认证数据
(完整性校验值 ICV )变长
ESP 协议头
安全参数索引( SPI )
序列号
负载数据
(变长的)
隧道基本概念
IPSec 协议栈组成
IPSec 的工作模式
IPSecVPN 的建立方式
隧道基本概念
• 隧道可在网络的任一层实现
• 最常用的是两层:数据链路层和网络层
• 数据链路层隧道:一个链路帧被放到了其它链路层的协
议数据单元( PDU )中 , 该链路层还包括另外的链路帧
,如: PPTP, L2F, L2TP 构成的 VPN
• 网络层隧道:第三层的包被放到其它层或另外的第三层
包中,如 IPsec 的 AH 和 ESP 隧道模式;
• 封装:当某层的 PDU 被放到另外一个 PDU 中的有效载
荷时,把这种处理方式叫做封装
IPSec 概念
安全关联 (SA)
SA 就是两个 IPSec 系统之间的一个
单向逻辑连接
通道
将一个数据报用一个新的数
据报封装
32 比特,用于标识具有相同 IP 地址和相同安全协议的不同
SA 。
可以是普通 IP 地址,也可是广播或者组播地址
可以是 AH 或者 ESP
IP 头部 IP
IP头部
头部 负
负 载
载
IPSec 框架的组成
身份认证报头 —— AH 协议
提供数据源身份认证、数据完整性保护、
重放攻击保护功能
负载安全封装 —— ESP 协议
提供数据保密、数据源身份认证、数据完整
性、重放攻击保护功能
因特网安全关联和密钥管理协议 —— IKE( 以
前 被 叫 ISAKMP/Oakley)
提供自动建立安全关联和管理密钥的
功能
IPsec 协议栈组成
• IPsec 由一系列协议组成:
– RFC2401( 规定了 IPsec 的基本结构 )
– RFC2402 (验证头)
– RFC2406 (封装安全载荷)
– RFC2407 (用于 Internet 安全联盟和密钥管理协议
ISAKMP 的 Internet IP 安全解释域)
– RFC2408 ( ISAKMP )
– RFC2409 ( Internet 密钥交换, IKE )
– RFC2411 ( IP 安全文档指南)
– RFC2412 ( OAKLEY 密钥确定协议)等。
• IPsec 组件包括安全协议验证头( AH )和封装安全载荷
( ESP )、安全关联( SA )、密钥交换( IKE )及加
密和验证算法等。
IPsec 协议栈组成
安全策略( Security Policy , SP )指示对
IP 数据报提供何种保护,并以何种方式实
施保护。
SA 是安全策略的具体化和实例化。为了确
保互操作性, IPsec 规定了与 SA 相关的两
个名义性数据库 -- 安全策略库( SPD )和
安全关联库( SAD )。
IPsec 协议栈 组成
验证头 AH
•验证头 (Authentication Header , AH) 是一个
安全协议头,可在传输模式下使用,为 IP 包
提供:
数据完整性:可判定数据包在传输过程
中是 否被修改
验证服务:终端系统或网络设备可对用
户或 应用进行验证,过滤通信流;还
可防止地 址欺骗攻击及重播攻击。
•采用加密和验证机制,为 IP 数据报提供数据源验
证、数据完整性、抗重播和机密性安全服务;
•可在传输模式和隧道模式下使用;
密钥 交换 ( IKE )
IPsec 的密钥管理包括密钥的确定和
分 配 , 有 手工和自动两种方式。
IPsec 默认的自动密钥管理协议是
IKE 。 IKE 规定了自动验证 IPsec 对
等实体、协商安全服务和产生共享密
钥的标准。
IPsec 协议栈组成
加密和 验证算法
RFC2411 对 IPsec AH 和 ESP 使用的加密和
验证算法的规范进行了描述,并在其他一些文档
中 对 DES 、 HMACMD5 、 HMACSHA - 1 等算法标
准进行了描述。
IPsec 加密算法用于 ESP 。目前的
IPsec 标准要求任何 IPsec 实现都必须支
持 DES 。另外, IPsec 标准规定可使用
3DES 、 RC5 、 IDEA 、 3IDEA 、 CAST
和 Blowfish 。
IPsec 的工作模式
IPsec 使用传输模式和隧道模式
保护通信数据。 IPsec 协议和模式
有 4 种可能的组合:
• AH 传输模式;
• AH 隧道模式;
• ESP 传输模式;
• ESP 隧道模式。
传输 模式
下一头部 负载长度 保留
安全参数索引( SPI )
序列号
认证数据
(完整性校验值 ICV )变长
32 位
下一头部: 8 比特,标识认证头后面的下一个负载类型
IP 头部 AH 头部 负 载
VPN 网关
IP 头部 AH 头部 负 载
经过 IPSec 核心处理以后
经过 IPSec 核心处理以后
VPN 网关
IP 头部 负 载
IP 头部 负 载
Host A Host B
隧道模式下的 AH 认证工作原理
Internet
新 IP 头 AH 头 IP 头 负 载
载
负
Source IP=Host A
头
Destination IP=Host B
IP
头
H
A
Source IP=VPN 网关 1
头
IP
Destination IP=VPN 网关 2
新
VPN 网关
2 新 IP 头 AH 头 IP 头 负 载
经过 IPSec 核心处理以后
经过 IPSec 核心处理以后
VPN 网关
1
IP 头 负 载
IP 头 负 载
Host A Host B
负载安全封装( ESP )
IP 头 ESP 头 负 载 ESP 尾 ESP 认证
安全参数索引( SPI )
ESP 头部
序列号
认
负载数据 证
(变长的) 加 的
密
填充( 0~255 字节) 的
ESP 尾
填充长度 下一头部 部
认证数据 ESP 认
(变长的) 证数据
32 位
填充字段: 8 比特,大多数加密算法要求输入数据包含整数个分组,因此需要填充
负载数据:包含由下一头部字段给出的变长数据
序列号: 32 比特,一个单项递增的计数器,用于防止重放攻击, SA 建立之初初始化为 0 ,序列号不允许重复
下一头部: 8 比特,标识认证头后面的下一个负载类型
传输 模式下的 ESP 工作原 理
Internet
IP 头 ESP 头 负 载 ESP 尾 ESP 认证
VPN 网关
IP 头部 负 载
IP 头部 负 载
Host B
Host A
隧道模式下的 ESP 工作原理
Internet
证
新 IP 头 ESP 头 IP 头 负载 ESP 尾 ESP 认证
认
P
ES
尾
P
ES
载
负
Source IP=Host A
头
IP
Destination IP=Host B
头
P
ES
Source IP=VPN 网关 1
头
VPN 网关
IP
Destination IP=VPN 网关 2
新
IP 头 负 载
VPN 网关
1
IP 头 负 载
Host A Host B
组合 IPSec 协议
Internet
外 IP 头 AH 头 ESP 头 内 IP 头 负 载 ESP 尾
尾
P
ES
载
负
头
Source IP=Host A
IP
内
Destination IP=Host B
头
P
ES
头
H
A
2 外 IP 头 AH 头 ESP 头 内 IP 头 负 载 ESP 尾
外
Destination IP=VPN 网关 2
经过 IPSec 核心处理以后
经过 IPSec 核心处理以后
IP 头 负 载
VPN 网关
1
IP 头 负 载
Host A Host B
AH 与 ESP 协议区别
IP 头 ESP 头 负 载 ESP 尾 ESP 认证
身份认证
AH 协议 数据完整性校验 认证数据
重放攻击保护
ESP 可以取
代 AH 吗?
身份认证
数据加密
ESP 协议 IP 头部 AH 头部 负 载
数据完整性校
验
重放攻击保护 认证数据
一个完整的 VPN 工作原理图
192.168.1.25 192.168.2.34
Source Address Destination Address Secure Service Others 公司 B
公司 A
192.168.1.25 192.158.1.34 安全 ……
应的
载
数 SA
据 对 258 192.168.2.34 AH 要
应 求
载
负
提数 建立
259 192.168.2.34 ESP 建
SA
供据 SAD
那库 立
的
负
些决 安
参 SPI Security Protocol Algorithm Key Others
IP 头
安定 全
数 相
全为 256 AH 加密 MD5 010 ……
服流 应
IP 头
务入 257 ESP DES CBC 4 101 ……
的
关
对原有数据包进行 258 AH 加密 SHA-1 001 …… 联
相应的安全处理 259 ESP 3DES CBC 110 ……
SAD 中包含每一个 SA 的参数信息,如算法、密钥等
VPN 网关 A
双方使用 ISAKMP/Oakley 密钥交换协议建立安全关联,产生或者刷新密钥
数据在这一段是加密的
数据在这一段是认证的
通道只需定义在两边的网关上
ISP ISP
Internet
VPN 网关 A VPN 网关 B
Gateway 必 Gateway 必须
须支持 IPSec 支持 IPSec
用 VPN 连接合作伙伴
主机必须支 主机必须支
持 IPSec 持 IPSec
业务伙伴
公司 A
通道建立在两边的主机之间,因为业
务伙伴内的主机不是都可以信任的
数 数
据 据 数 数
在 在 据 据
这 这 在 在
一 一 这 这
段 段 数据在这一段是加密的 一 一
是 是 段 段
加 认 是 是
密 证 数据在这一段是认证的 认 加
的 的 证 密
的 的
ISP ISP
Internet
VPN 网关 A VPN 网关
B
用 VPN 连接远程用户
主机必须支
持 IPSec 公司 B
通道建立在移动用户与
公司内部网的网关处
数 数
据 据
在 在
这 这
一 一 PSTN
段 段
是 是 数据在这一段是认证的
认 加
证 密
的 的 数据在这一段是加密的
Internet
VPN 网关
ISP 接入 Gateway 必 B
服务器 须支持 IPSec
谢谢 !