基础
定义:在一个公用网络中,通过某种方式虚拟出来的一条企业内部专线。
Site-Site V(站点到站点)
场景:企业总部与分支机构,企业与合作伙伴
分类:GRE,IPSec ,厂商私有vpn协议
Access V(远程访问)
场景:出差员工访问企业内部资源,移动用户访问企业内部
分类:IPSec,PPTP,L2TP+IPSec,SSL V,厂商私有vpn协议
IPsec V
完善V要求
一种设计完善的vpn就得解决私网IP数据的安全性即四方面:
- 身份认证
- 机密性
- 完整性
- 防重放攻击
基于四方面:
身份认证:
设备身份认证: Pre-Shared Keys (预共享 key 认证)、 RSA 签名认证
用户身份认证 : 短信 、 usb-key 、 用户名和密码等
机密性:加密算法对称密钥算法:加密方与解密方采用相同的密钥,用于加密用户数据
DES,3DES,AES
非对称密钥算法:加密方通过对端的公钥加密数据,解密方通过自己的私钥解密数据,用于密钥交换和数字签名
RSA,DH
完整性:HASH/散列算法
MD5算法,SHA-1/-2/-3算法
防重放攻击主要靠 IPSec 的序列号(Sequence Number)机制 + 滑动窗口(Sliding Window) 来实现,具体由 AH 和 ESP 协议 完成
IPSec协议
两种协议:
- AH协议:完整性,防重放
- ESP协议:完整性,数据加密,防重放
两种模式:
- 传输模式(Transport Mode)
- 隧道模式(Tunnel Mode)
AH传输模式

AH隧道模式

ESP传输模式


ESP隧道模式

接收方处理过程相反
对比


IKE协议原理
如何选择共同的算法和密钥,选择AH 还是 ESP,本地如何区分与不同设备之间的保护策略,为了解决这些问题,就需要一个规定来统一,SA就产生了。
SA如何产生?
1.手工配置
人工密钥协商:SA的内容由管理员手工指定、手工维护。
手工维护容易出错,而且手工建立的SA没有生存周期限制,永不过期,除非手工删除,因此有安全隐患,在项目中几乎不会使用。
2.IKE自动管理
SA的自动建立、动态维护和删除是通过IKE进行的。而且SA有生命期。如果安全策略要求建立安全、保密的连接,但又不存在与该连接相应的SA,IPSec会立刻启动IKE来协商SA。
IKE概述
用于动态建立SA。属于一种混合型协议,使用UDP协议,端口号500。
IKE、SA、IPsec、ISAKMP关系
- IKE 是"谈判和生成 SA 的工具"。
- ISAKMP是谈判框架,定义了"怎么谈",相当于搭好谈判桌
- SA 是"谈判结果、供 IPSec 使用的具体参数"。
- IPSec 是"利用这些 SA 对流量进行加密/认证的整套机制"。
组成成分
IKE = ISAKMP的框架 + Oakley的模式 + SKEME的机制
1.ISAKMP - 建筑的框架和蓝图 (RFC 2408)
角色 :定义了SA协商过程的通用框架 、数据包格式 和状态转换流程。
关键点:
- 它规定了"如何交谈"(消息怎么封装、怎么交换)。
- 它规定了"谈什么"(协商、建立、修改、删除SA)。
但它本身不定义具体的加密算法或密钥生成方法,这使得它可以被不同的密钥交换方案使用。
2.Oakley - 建筑的具体施工模式之一
角色 :定义了多种密钥交换模式(如野蛮模式、主模式等)。
关键点:它详细说明了如何通过一系列消息来回,最终让双方生成相同的共享密钥。它提供了模式的多样性。
3.SKEME - 建筑的另一种施工技术
角色 :提供了另一种密钥交换机制,特点是支持快速密钥更新 和基于公钥加密的认证。
关键点:它贡献了如何利用公钥技术来验证对方身份的思想。
两个阶段
两个IPSec实体之间的IKE协商分为两个阶段
第一阶段:建立ISAKMP SA(也可称为IKE SA)
两种模式:
- 主模式(main mode):6条ISAKMP消息交互
- 野蛮模式(aggressive mode):3条ISAKMP消息交互
目的:ISAKMP SA是为第二阶段的ISKMP消息提供安全保护
第二阶段:建立IPSec SA
一种模式: 快速模式(quick mode):3条ISAKMP消息交互

目的:IPSec SA是为IP数据提供安全保护,即前面概念中介绍的SA,ISAKMP SA可以用来保护多个第二阶段IPSec SA协商的通信过程
四个密钥

SSL V
SSL是工作在TCP层之上的加密协议。
SSL协议采用C/S架构。
SSL服务器端使用TCP协议的443号端口提供SSL服务。
协议握手过程:HTTPS=HTTP+SSL
接入方式
Web接入
实现原理:对返回Web页面中的URL进行改写,使得远程用户在公网上可以访问到私网中的URL。
TCP接入
实现原理:在远程主机上安装一个V客户端,以代理方式与SSL V网关建立SSL连接,SSL V网关再以代理方式与服务器端建立TCP连接。
IP接入
实现原理:在远程主机上安装一个虚拟网卡,配上内网的IP地址和可以访问内网的路由。远程主机与内网服务器之间传送的数据报文通过路由进行IP层的转发。
身份认证
**本地认证:**用户的帐号和密码保存在网关本地的数据库中,由网关独立地对用户身份进行认证。
**外部认证:**用户的帐号和密码保存在外部服务器上。在接收到用户提交的帐号和密码后,网关将其交给外部服务器进行验证。网关根据服务器返回的验证结果决定是否允许用户登录SSL V。
部署方式
双臂模式

**特点:**网关跨接在内网和外网之间。
**优点:**网关可以全面地保护内网,对内外网之间的所有的通讯数据进行管理和控制。
**缺点:**网关成为整个内网出口的性能瓶颈;网关的可靠性也关系到整个内网访问外网通讯的稳定性。
单臂模式

**特点:**网关设备部署于内网,代理远程主机对内网服务器的访问。
**优点:**网关的处理能力不会成为整个内网访问外网的性能瓶颈,网关的临时故障也不会影响到整个内网对外网的访问。
**缺点:**网关设备不能全面地保护内部网络,只能对部分网络流量进行管理和控制。