查看: 18821|回复: 9

IPSec/GRE与PPTP的比较

[复制链接]
发表于 2006-6-24 16:09:15 | 显示全部楼层 |阅读模式
IPSec/GRE与PPTP的比较

目前有一些软件的VPN产品,基于PPTP协议。

PPTP

PPTP(Point to  Point Tunneling Protocol)是点对点的协议,基于拨号使用的PPP协议使用PAP或CHAP之类的加密算法,或者使用Microsoft的点对点加密算法MPPE。 而L2TP(Layer 2 Tunneling Protocol)是 L2FP(Layer 2 Forwarding Protocol)和PPTP的结合,依赖PPP协议建立拨号连接,加密的方法也类似于PPTP,但这是一个两层的协议,可以支持非IP协议数据包的传输,如ATM 或X.25,因此也可以说L2TP是PPTP在实际应用环境中的推广。
无论是PPTP,还是L2TP,它们对现代安全需求的支持都不够完善,应用范围也不够广泛。事实上,缺乏PKI技术所支持的数字证书,VPN 也就缺少了最重要的安全特性。简单地说,数字证书可以被认为是用户的护照,使得他(她)有权使用VPN,证书还为用户的活动提供了审计机制。缺乏数字证书的VPN对认证、完整性和不可否认性的支持相对而言要差很多。

IPSec

基于PKI技术的IPSec协议现在已经成为架构VPN 的基础,它可以为路由器之间、防火墙之间或者路由器和防火墙之间提供经过加密和认证的通信。虽然它的实现会复杂一些,但其安全性比其他协议都完善得多。由于IPSec是IP层上的协议,因此很容易在全世界范围内形成一种规范,具有非常好的通用性,而且IPSec本身就支持面向未来的协议——IPv6。总之,IPSec还是一个发展中的协议,随着成熟的公钥密码技术越来越多地嵌入到IPSec中,现在,该协议会在VPN世界里扮演越来越重要的角色。
由于IPSec必须在端系统OS内核的IP层或节点网络设备的深层以实现,所以IPSec的密钥管理协议是IPSec需要进一步完善的问题。
除了它定义的IP传输的加密机制外,IPSec还定义了IP OVER IP隧道模式的包的格式,这也就是通常指的IPSec隧道模式。一个IPSec隧道是由隧道客户和隧道服务器组成的。它们都使用IPSec隧道和协商加密机制。
IPSec兼容设备在OSI模型的第三层(网络层)提供加宇航局、验证、授权、管理,对于用户来说是透明的(即在应用层不用作任何事情),用户使用时和平常无区别。密钥交换、核对数字签名、加密等都在后台自动进行。
下图是一个典型的IPSec数据包的格式。 ) IP包头        AH包头        ESP包头        上层协议(数据)


另外,为了组建大型VPN,需要认证中心(CA)来进行身份证和分发用户公共密钥。

IPSec可用两种方式对数据流加密:
隧道方式:对整个IP包加密,使用一个新的IPSec包打包。这种隧道协议是在IP协议上进行的。因此不支持多协议。
传输方式:原IP包的地址部分不处理,仅对数据净荷(data payload)进行加密。
IPSec支持的组网方式包括:主机之间、主机与网关、网关之间的组网。这里网关指执行IPSec的路由器或防火墙。
IPSec还对远程访问用户支持。同时还有一整套保证用户数据安全的措施,利用它建立起来的隧道具有更好的安全性和可靠性。IPSec可以和L2TP、GRE等隧道协议一同使用,给用户提供更大的灵活性和可靠性。

GRE

GRE(通用路由协议封装)是由Cisco和Net-smiths等公司于1994年提交给IETF的,标号为RFC1701和RFC1702。目前有多数厂商的网络设备均支持GRE隧道协议。
GRE规定了如何用一种网络协议去封装另一种网络协议的方法。GRE的隧道由两端的源IP地址和目的IP地址来定义,允许用户使用IP包封装IP、IPX、AppleTalk包,并支持全部的路由协议(如RIP2、OSPF等)。通过GRE,用户可以利用公共IP网络连接IPX网络、AppleTalk网络,还可以使用保留地址进行网络互连,或者对公网隐藏企业网的IP地址。
GRE协议的主要用途有两个:企业内部协议封装和私有地址封装。在国内,由于企业网几乎全部采用的是TCP/IP协议,因此在中国建立隧道时没有对企业内部协议封装的市场需求。企业使用GRE的唯一理由应该是对内部地址的封装。当运营商向多个用户提供这种方式的VPN业务时会存在地址冲突的可能性。

三层隧道协议比较
第三层隧道与第二层隧道相比,优点在于它的安全性、可扩展性及可靠性。从安全的角度来看,由于第二层隧道一般终止在用户网设备(CPE)上,会对用户网的安全及防火墙技术提出较严竣的挑战。而第三层的隧道一般终止在ISP的网关上,不会对用户网的安全构成威胁。从可扩展性角度来看,第二层IP隧道将整个PPP帧封装在报文内,可能会产生传输效率问题;其次,PPP会话会贯穿整个隧道,并终止在用户网的网关或服务器上。由于用户网内的网关要保存大量的PPP对话状态及信息,这会对系统负荷产生较大的影响,当然也会影响系统的扩展性。除此之外,由于PPP的LCP(数据链路层控制)及NCP(网络层控制)对时间非常敏感,IP隧道的效率会造成PPP会话超时等问题。第三层隧道终止在ISP网内,并且PPP会话终止在RAS处,网点无需管理和维护每个PPP会话状态,从而减轻系统负荷。
第三层隧道技术对于公司网络还有一些其他优点,网络管理者采用第三层隧道技术时,不必在他们的远程为客户原有设备(CPE)安装特殊软件。因为PPP和隧道终点由ISP的设备生成,CPE不用负担这些功能,而仅作为一台路由器。第三层隧道技术可采用任意厂家的CPE予以实现。使用第三层隧道技术的公司网络不需要IP地址,也具有安全性。服务提供商网络能够隐藏私有网络和远端节点地址。

[ 本帖最后由 garnett_wu 于 2006-6-24 16:11 编辑 ]
回复

使用道具 举报

 楼主| 发表于 2006-6-24 16:10:35 | 显示全部楼层
PSec 是 IETF (因特网工程任务组)于 1998 年 11 月公布的 IP 安全标准。其目标是为 IPv4 和 IPv6 提供具有较强的互操作能力、高质量和基于密码的安全。 IPSec 对于 IPv4 是可选的,对于 IPv6 是强制性的。

基于 PKI 技术的 IPSec 协议现在已经成为架构 VPN 的基础,它可以为路由器之间、防火墙之间或者路由器和防火墙之间提供经过加密和认证的通信。虽然它的实现会复杂一些,但其安全性比其他协议都完善得多。由于 IPSec 是 IP 层上的协议,因此很容易在全世界范围内形成一种规范,具有非常好的通用性,而且 IPSec 本身就支持面向未来的协议 ——IPv6 。总之, IPSec 还是一个发展中的协议,随着成熟的公钥密码技术越来越多地嵌入到 IPSec 中,现在,该协议会在 VPN 世界里扮演越来越重要的角色。

由于 IPSec 必须在端系统 OS 内核的 IP 层或节点网络设备的深层以实现,所以 IPSec 的密钥管理协议是 IPSec 需要进一步完善的问题。

除了它定义的 IP 传输的加密机制外, IPSec 还定义了 IP OVER IP 隧道模式的包的格式,这也就是通常指的 IPSec 隧道模式。一个 IPSec 隧道是由隧道客户和隧道服务器组成的。它们都使用 IPSec 隧道和协商加密机制。
IPSec 兼容设备在 OSI 模型的第三层(网络层)提供加宇航局、验证、授权、管理,对于用户来说是透明的(即在应用层不用作任何事情),用户使用时和平常无区别。密钥交换、核对数字签名、加密等都在后台自动进行。
下图是一个典型的 IPSec 数据包的格式。
IP包头        AH包头        ESP包头        上层协议(数据)

另外,为了组建大型 VPN ,需要认证中心( CA )来进行身份证和分发用户公共密钥。
IPSec 可用两种方式对数据流加密:
隧道方式:对整个 IP 包加密,使用一个新的 IPSec 包打包。这种隧道协议是在 IP 协议上进行的。因此不支持多协议。
传输方式:原 IP 包的地址部分不处理,仅对数据净荷( data payload )进行加密。
IPSec 支持的组网方式包括:主机之间、主机与网关、网关之间的组网。这里网关指执行 IPSec 的路由器或防火墙。
IPSec 还对远程访问用户支持。同时还有一整套保证用户数据安全的措施,利用它建立起来的隧道具有更好的安全性和可靠性。 IPSec 可以和 L2TP 、 GRE 等隧道协议一同使用,给用户提供更大的灵活性和可靠性。

IPSec 在 IP 层上对数据包进行高强度的安全处理,提供数据源地验证、无连接数据完整性、数据机密性、抗重播和有限业务流机密性等安全服务。各种应用程序可以享用 IP 层提供的安全服务和密钥管理,而不必设计和实现自己的安全机制,因此减少密钥协商的开销,也降低了产生安全漏洞的可能性。 IPSec 可连续或递归应用,在路由器、防火墙、主机和通信链路上配置,实现端到端安全、虚拟专用网络( VPN )和安全隧道技术。

IPSec 规范中包含大量的文档。其中最重要的是在 1998 年 11 月发布的,它们是 RFC2401 、 2402 、 2406 和 2408 :
RFC2401 :安全体系结构概述;
RFC2402 :包身份验证扩展到 IPv4 和 IPv6 的描述;
RFC2406 :包加密扩展到 IPv4 和 IPv6 的描述 ;
RFC2408 :密钥管理能力规范。

对于这些特征的支持, IPv6 是强制性的, IPv4 为可选的。在这两种情况下,安全特征作为扩展报头实现,它跟在主 IP 报头后面。身份验证的扩展报头称作身份验证报头( AH 头),加密报头称 ESP( 封装安全性有效载荷 ) 报头。

除了上面四个 RFC 文档之外,其他许多标准也已经陆续公布。到目前为止,在 IPSec 协议族中,只有策略还没有正式 RFC 文档。

IPSec 安全体系结构包含:
安全体系结构:包含了一般的概念、安全需求、定义和定义 IPSec 的技术机制;
封装安全有效载荷( ESP ):覆盖了为了包加密(可选身份验证)与 ESP 的使用相关的包格式和常规问题;
验证头( AH ):包含使用 AH 进行包身份验证相关的包格式和一般问题;
加密算法:描述各种加密算法如何用于 ESP 中;
验证算法:描述各种身份验证算法如何用于 AH 中和 ESP 身份验证选项;
密钥管理:密钥管理的一组方案,其中 IKE ( Internet 密钥交换协议)是默认的密钥自动交换协议;
解释域:彼此相关各部分的标识符及运作参数;
策略:决定两个实体之间能否通信,以及如何进行通信。策略的核心由三部分组成: SA 、 SAD 、 SPD 。 SA (安全关联)表示了策略实施的具体细节,包括源/目的地址、应用协议、 Spi (安全策略索引)、所用算法/密钥/长度; SAD 为进入和外出包处理维持一个活动的 SA 列表; SPD 决定了整个 VPN 的安全需求。策略部分是唯一尚未成为标准的组件。

从 IPSec 协议族来看, IPSec 的实现重点是 Internet 密钥交换( IKE )和安全策略系统,这两个技术的实现 , 决定了 IPSec 实现是否完善和标准。

IKE技术
Internet 密钥交换( IKE )用于动态建立 SA 。 IKE 代表 IPSec 对 SA 进行协商,并对 SADB 数据库进行填充。由 RFC2409 文档描述的 IKE 属于一种混合型协议。它沿用了 ISAKMP 的基础、 Oakley 的模式以及 SKEME 的共享和密钥更新技术,从而定义出自己独一无二的验证加密材料生成技术,以及协商共享策略。此外, IKE 还定义了它自己的两种密钥交换方式。 IKE 使用了两个阶段的 ISAKMP 。在第一阶段,通信各方彼此间建立了一个已通过身份验证和安全保护的通道,即建立 IKE 安全联盟。在第二阶段,利用这个既定的安全联盟,为 IPSec 协商具体的安全联盟。 IKE 定义了两个阶段,阶段 1 交换、阶段 2 交换以及两个额外的交换(用于对安全联盟进行正确的维护)。对阶段 1 交换, IKE 采用的是身份保护交换( “ 主模式 ” 交换),以及根据基本 ISAKMP 文档制订的野蛮交换法 “ 野蛮模式 ” 交换;对阶段 2 , IKE 则定义了一种快速模式交换。 I K E 定义的另外两种交换均属信息方面的交换。

IKE 保证了如何动态地建立安全关联和建立过程的安全。 IKE 建立安全关联的实现一方面是 IPSec 协议实现的核心,实现极为复杂;另一方面也很可能成为整个系统的瓶颈。优化 IKE 程序、优化密钥算法是实现 IPSec 的核心问题之一。

安全策略
在一个实现 IPSec 的产品中, IPSec 功能的正确性完全依据安全策略的正确制定与配置。传统的方法是通过手工配置 IPSec 策略,这种方式在大型的分布式网络中存在效率低、易出错等问题。而一个易出错的策略将可能导致通信的阻塞和严重的安全隐患。而且,既使每个安全域策略的制订是正确的,也可能会在不同的安全域中,由于策略之间的交互,出现在局部范围内安全策略的多样性,从而造成端到端间通信的严重安全隐患。因此,必须构建一个安全策略系统来系统地管理和验证各种 IPSec 策略。

构建一个策略系统,需要解决策略的定义、存取、管理、交换、验证、发现机制等问题以及系统自身的安全性问题。其中策略的表示和策略在动态交换中的安全性问题是系统的核心问题。目前 RFC 尚未制定关于策略系统的标准,因此还没有成熟的实现方案。今后的发展方向可能是策略系统由四个部分组成:安全策略数据库、策略服务器、安全网关、策略客户端。服务器利用 LDAP (轻量级目录访问协议)与数据库交互,安全网关通过 COPS (普通开放式策略服务协议)与服务器交互,策略服务器之间以及服务器与客户端之间通过 SPP (安全策略协议)进行通信。这一方案能够很好地解决系统的各种问题,特别是系统自身的安全性问题,构建出一个安全高效的策略系统。该系统将对整个私有网络资源进行可靠、安全、可伸缩的管理和利用。

策略系统的实现也是 IPSec 、 VPN 网关的重要组成部分。只有基于策略的网络系统,才能提供强大的安全机制,才能对网络内部的所有资源提供不同级别的保护。

APNGW 架构,完全参照 ipsec 架构设计,在保证安全的同时,实现了稳定、易用等很多功能。
回复

使用道具 举报

发表于 2007-3-15 18:37:20 | 显示全部楼层
GOOD THANK YOU!
回复

使用道具 举报

发表于 2007-3-22 15:57:00 | 显示全部楼层
内容非常详细,谢谢!
回复

使用道具 举报

发表于 2007-7-13 21:30:04 | 显示全部楼层
不支持不行啊,强烈顶上。。。
回复

使用道具 举报

发表于 2008-12-25 17:03:17 | 显示全部楼层
讲解得非常好。!!1
回复

使用道具 举报

发表于 2008-12-25 17:39:33 | 显示全部楼层
学习到东西!谢谢楼主!
回复

使用道具 举报

发表于 2009-10-24 13:10:09 | 显示全部楼层
谢谢 楼主,正在找。不知道期间的区别。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | CSNA会员注册

本版积分规则

快速回复 返回顶部 返回列表