********××× 和它的协议们

常见×××协议对比

类型

PPTP

L2TP

IPSec

SSTP(SSL)

英文
全称

Point to Point
Tunneling Protocol

Layer Two
Tunneling Protocol

IP Security

Secure Socket
Tunneling Protocol

中文
全称

点对点信道协议

第二层通道协议

安全IP(IPSec)隧道模式

基于SSL(Secure Sockets Layer)的×××

OSI

第二层

第二层

第三层

第七层

OSI2

数据链路层加密

数据链路层加密

网络层和传输层加密

应用层加密

加密

mppe(微软点对点加密协议)

mppe、IPSec



复杂度

一般

一般

复杂

一般

安全性

一般

一般

系统
支持

Windows NT直到Longhorn Server,客户端则已经内置在了近来所有版本的Windows之中

L2TP/IPsec ×××服务被内置在Win2000Server以及更高版本之中,而L2TP客户端则被包含在Win2000专业版以及之后版本的Windows操作系统之中

有大批的生产商提供基于IPsec的×××设备以及集成的防火墙/×××产品,专门客户端

Vista Service Pack 1、Longhorn Server将会提供对SSTP的支持

备注

仅在纯MS的网络中使用,兼容性一般

L2TP结合了PPTP和L2F协议,是一种网络层协议。当使用IP作为L2TP的数据报传输协议时,可以使用L2TP作为Internet网络上的隧道协议。L2TP还可以直接在各种WAN媒介上使用而不需要使用IP传输层。

使用CISCO加密技术(CET)的IPSec,具备广泛的兼容性,具有最多的业界厂商的支持,是企业自建×××的最佳选择

几乎所有WEB银行都采用应用层保证安全的方法。SSL×××主要让远程设备可以访问基于浏览器的应用,用户通过浏览器访问的是网络上的特定应用程序而不是整个网络。

***

IPSec ×××:

网络工程师突击 三_Windows

IPsec ×××数据封装形式

L2TP ×××:

网络工程师突击 三_网络工程师_02

L2TP ×××封装格式

PPTP ×××:

网络工程师突击 三_安全性_03

PPTP ××× 封装格式

SSTP ×××:

SSTP 将 PPP 帧封装在 IP 数据报中,以便通过网络传输。


PPTP

PPTP 允许对多协议通信进行加密,然后封装在 IP 标头中,以通过 IP 网络或公用 IP 网络(例如 Internet)发送。PPTP 可以用于远程访问连接和站点到站点的 ××× 连接。使用 Internet 作为 ××× 的公用网络时,PPTP 服务器是启用 PPTP 的 ××× 服务器,一个接口在 Internet 上,另一个接口在 Intranet 上。

封装

PPTP 将 PPP 帧封装在 IP 数据报中,以便通过网络传输。PPTP 使用 TCP 连接进行隧道管理,使用修订版的通用路由封装 (GRE) 封装隧道数据的 PPP 帧。封装的 PPP 帧的有效负载可以加密、压缩或加密并压缩。下图显示包含 IP 数据报的 PPTP 数据包的结构。

包含 IP 数据报的 PPTP 数据包的结构

网络工程师突击 三_安全性_03

加密

可使用 MS-CHAP v2 或 EAP-TLS 身份验证进程生成的加密密钥,通过 Microsoft 点对点加密 (MPPE) 对 PPP 帧进行加密。虚拟专用网络客户端只有使用 MS-CHAP v2 或 EAP-TLS 身份验证协议才能对 PPP 帧的有效负载进行加密。PPTP 利用基础 PPP 加密并封装以前加密的 PPP 帧。

L2TP

L2TP 允许对多协议通信进行加密,然后通过任何支持点对点数据报传输(例如 IP 或异步传输模式 (ATM))的媒体发送。L2TP 是 PPTP 和第 2 层转发 (L2F) 的组合,是 Cisco Systems, Inc. 开发的一项技术。L2TP 代表了 PPTP 和 L2F 的最佳功能。

与 PPTP 不同,Microsoft 实现的 L2TP 不使用 MPPE 对 PPP 数据报进行加密。L2TP 依靠 Internet 协议安全 (IPsec) 传输模式来提供加密服务。L2TP 和 IPsec 的组合称为 L2TP/IPsec。

××× 客户端和 ××× 服务器必须均支持 L2TP 和 IPsec。L2TP 的客户端支持内置在 Windows Vista 和 Windows XP 远程访问客户端中,L2TP 的 ××× 服务器支持内置在 Windows Server 2008 和 Windows Server 2003 系列的成员中。

L2TP 随 TCP/IP 协议一起安装。

封装

L2TP/IPsec 数据包的封装分为两层:

第一层:L2TP 封装

PPP 帧(IP 数据报)使用 L2TP 标头和 UDP 标头封装。

包含 IP 数据报的 L2TP 数据包的结构

网络工程师突击 三_网络工程师_05
第二层:IPsec 封装

使用 IPsec 封装安全有效负载 (ESP) 标头和尾端、提供消息完整性和身份验证的 IPsec 身份验证尾部以及最终的 IP 标头来封装生成的 L2TP 消息。IP 标头中是与 ××× 客户端和 ××× 服务器对应的源 IP 地址和目标 IP 地址。

使用 IPsec ESP 对 L2TP 通信进行加密

网络工程师突击 三_VPN设备_06

加密

使用 Internet 密钥交换 (IKE) 协商进程生成的加密密钥,通过数据加密标准 (DES) 或三重 DES (3DES) 对 L2TP 消息进行加密。

SSTP

安全套接字隧道协议 (SSTP) 是一种新的隧道协议,在 TCP 端口 443 上使用 HTTPS 协议,使通信可以通过可能阻止 PPTP 通信和 L2TP/IPsec 通信的防火墙和 Web 代理。SSTP 提供了一种机制,用于封装通过 HTTPS 协议的安全套接字层 (SSL) 通道传输的 PPP 通信。使用 PPP 可以支持强大的身份验证方法(例如 EAP-TLS)。SSL 提供了增强的密钥协商、加密和完整性检查,从而确保了传输级的安全性。

客户端尝试建立基于 SSTP 的 ××× 连接时,SSTP 首先与 SSTP 服务器建立双向 HTTPS 层。通过此 HTTPS 层,协议数据包作为数据有效负载传输。

封装

SSTP 将 PPP 帧封装在 IP 数据报中,以便通过网络传输。SSTP 使用 TCP 连接(在端口 443 上)进行隧道管理,并使用 PPP 数据帧。

加密

SSTP 消息使用 HTTPS 协议的 SSL 通道进行加密。

选择隧道协议

在 PPTP、L2TP/IPsec 和 SSTP 远程访问 ××× 解决方案之间进行选择时,请考虑下列事项:

  • PPTP 可以用于各种 Microsoft 客户端(包括 Microsoft Windows 2000、Windows XP、Windows Vista 和 Windows Server 2008)。与 L2TP/IPsec 不同,PPTP 不要求使用公钥结构 (PKI)。基于 PPTP 的 ××× 连接使用加密来提供数据保密性(没有加密密钥无法解释捕获的数据包)。但是,基于 PPTP 的 ××× 连接不提供数据完整性(保证数据在传输中未更改)或数据源身份验证(保证数据由经过授权的用户发送)。

  • L2TP 只能用于运行 Windows 2000、Windows XP 或 Windows Vista 的客户端计算机。L2TP 支持将计算机证书或预共享密钥作为 IPsec 的身份验证方法。计算机证书身份验证是建议的身份验证方法,要求使用 PKI 来向 ××× 服务器计算机和所有 ××× 客户端计算机颁发计算机证书。L2TP/IPsec ××× 连接使用 IPsec 来提供数据保密性、数据完整性和数据身份验证。

    与 PPTP 和 SSTP 不同,L2TP/IPsec 启用 IPsec 层的计算机身份验证和 PPP 层的用户级身份验证。

  • SSTP 只能用于运行 Windows Vista Service Pack 1 (SP1) 或 Windows Server 2008 的客户端计算机。SSTP ××× 连接使用 SSL 来提供数据保密性、数据完整性和数据身份验证。

  • 三种隧道类型均在网络协议堆栈顶部传送 PPP 帧。因此,三种隧道类型的 PPP 常用功能(例如身份验证方案、Internet 协议第 4 版 (IPv4) 协商和 Internet 协议第 6 版 (IPV6) 协商以及网络访问保护 (NAP))保持相同。