2005年04月22日
一、引言

虚拟专用网络可以实现不同网络的组件和资源之间的相互连接。虚拟专用网络能够利用Internet或其它公共互联网络的基础设施为用户创建隧道,并提供与专用网络一样的安全和功能保障。

(图1)

虚拟专用网络允许远程通讯方,销售人员或企业分支机构使用Internet等公共互联网络的路由基础设施以安全的方式与位于企业局域网端的企业服务器建立连接。虚拟专用网络对用户端透明,用户好象使用一条专用线路在客户计算机和企业服务器之间建立点对点连接,进行数据的传输。

虚拟专用网络技术同样支持企业通过Internet等公共互联网络与分支机构或其它公司建立连接,进行安全的通讯。这种跨越Internet建立的VPN连接逻辑上等同于两地之间使用广域网建立的连接。

虽然VPN通讯建立在公共互联网络的基础上,但是用户在使用VPN时感觉如同在使用专用网络进行通讯,所以得名虚拟专用网络。

使用VPN技术可以解决在当今远程通讯量日益增大,企业全球运作广泛分布的情况下,员工需要访问中央资源,企业相互之间必须进行及时和有效的通讯的问题。

如果希望企业员工无论身处何地都能够与企业计算资源建立连接,企业必须采用一个可靠性高、扩展性强的远程访问解决方案。一般的,企业有如下选择:

  1. 管理信息系统(MIS)部门驱动方案。建立一个内部的MIS部门专门负责购买,安装和维护企业modem池和专用网络基础设施。
  2. 增值网络(VAN)方案。企业雇佣一个外部公司负责购买,安装和维护modem池和远程通讯网络基础设施。

从费用,可靠性,管理和便于连接等几方面来看,这两种方案都不能最大程度的满足企业对网络安全性或扩展性的要求。因此,选择一种基于Internet技术的廉价方案取代企业花费在modem池和专用网络基础设施上的投资就显得极为重要。

 

二、虚拟专用网络的基本用途

通过Internet实现远程用户访问

虚拟专用网络支持以安全的方式通过公共互联网络远程访问企业资源。

与使用专线拨打长途或(1-800)电话连接企业的网络接入服务器(NAS)不同,虚拟专用网络用户首先拨通本地ISP的NAS,然后VPN软件利用与本地ISP建立的连接在拨号用户和企业VPN服务器之间创建一个跨越Internet或其它公共互联网络的虚拟专用网络。

一、引言

虚拟专用网络可以实现不同网络的组件和资源之间的相互连接。虚拟专用网络能够利用Internet或其它公共互联网络的基础设施为用户创建隧道,并提供与专用网络一样的安全和功能保障。

(图1)

虚拟专用网络允许远程通讯方,销售人员或企业分支机构使用Internet等公共互联网络的路由基础设施以安全的方式与位于企业局域网端的企业服务器建立连接。虚拟专用网络对用户端透明,用户好象使用一条专用线路在客户计算机和企业服务器之间建立点对点连接,进行数据的传输。

虚拟专用网络技术同样支持企业通过Internet等公共互联网络与分支机构或其它公司建立连接,进行安全的通讯。这种跨越Internet建立的VPN连接逻辑上等同于两地之间使用广域网建立的连接。

虽然VPN通讯建立在公共互联网络的基础上,但是用户在使用VPN时感觉如同在使用专用网络进行通讯,所以得名虚拟专用网络。

使用VPN技术可以解决在当今远程通讯量日益增大,企业全球运作广泛分布的情况下,员工需要访问中央资源,企业相互之间必须进行及时和有效的通讯的问题。

如果希望企业员工无论身处何地都能够与企业计算资源建立连接,企业必须采用一个可靠性高、扩展性强的远程访问解决方案。一般的,企业有如下选择:

  1. 管理信息系统(MIS)部门驱动方案。建立一个内部的MIS部门专门负责购买,安装和维护企业modem池和专用网络基础设施。
  2. 增值网络(VAN)方案。企业雇佣一个外部公司负责购买,安装和维护modem池和远程通讯网络基础设施。

从费用,可靠性,管理和便于连接等几方面来看,这两种方案都不能最大程度的满足企业对网络安全性或扩展性的要求。因此,选择一种基于Internet技术的廉价方案取代企业花费在modem池和专用网络基础设施上的投资就显得极为重要。

 

二、虚拟专用网络的基本用途

通过Internet实现远程用户访问

虚拟专用网络支持以安全的方式通过公共互联网络远程访问企业资源。

与使用专线拨打长途或(1-800)电话连接企业的网络接入服务器(NAS)不同,虚拟专用网络用户首先拨通本地ISP的NAS,然后VPN软件利用与本地ISP建立的连接在拨号用户和企业VPN服务器之间创建一个跨越Internet或其它公共互联网络的虚拟专用网络。

六、隧道技术如何实现

对于象PPTP和L2TP这样的第2层隧道协议,创建隧道的过程类似于在双方之间建立会话;隧道的两个端点必须同意创建隧道并协商隧道各种配置变量,如地址分配,加密或压缩等参数。绝大多数情况下,通过隧道传输的数据都使用基于数据报的协议发送。隧道维护协议被用来作为管理隧道的机制。

第3层隧道技术通常假定所有配置问题已经通过手工过程完成。这些协议不对隧道进行维护。与第3层隧道协议不同,第2层隧道协议(PPTP和L2TP)必须包括对隧道的创建,维护和终止。

隧道一旦建立,数据就可以通过隧道发送。隧道客户端和服务器使用隧道数据传输协议准备传输数据。例如,当隧道客户端向服务器端发送数据时,客户端首先给负载数据加上一个隧道数据传送协议包头,然后把封装的数据通过互联网络发送,并由互联网络将数据路由到隧道的服务器端。隧道服务器端收到数据包之后,去除隧道数据传输协议包头,然后将负载数据转发到目标网络。

七、隧道协议和基本隧道要求

因为第2层隧道协议(PPTP和L2TP)以完善的PPP协议为基础,因此继承了一整套的特性。

  1. 用户验证
    第2层隧道协议继承了PPP协议的用户验证方式。许多第3层隧道技术都假定在创建隧道之前,隧道的两个端点相互之间已经了解或已经经过验证。一个例外情况是IPSec协议的ISAKMP协商提供了隧道端点之间进行的相互验证。
  2. 令牌卡(Tokencard)支持
    通过使用扩展验证协议(EAP),第2层隧道协议能够支持多种验证方法,包括一次性口令(one-timepassword),加密计算器(cryptographic calculator)和智能卡等。第3层隧道协议也支持使用类似的方法,例如,IPSec协议通过ISAKMP/Oakley协商确定公共密钥证书验证。
  3. 动态地址分配
    第2层隧道协议支持在网络控制协议(NCP)协商机制的基础上动态分配客户地址。第3层隧道协议通常假定隧道建立之前已经进行了地址分配。目前IPSec隧道模式下的地址分配方案仍在开发之中。
  4. 数据压缩
    第2层隧道协议支持基于PPP的数据压缩方式。例如,微软的PPTP和L2TP方案使用微软点对点加密协议(MPPE)。IETP正在开发应用于第3层隧道协议的类似数据压缩机制。
  5. 数据加密
    第2层隧道协议支持基于PPP的数据加密机制。微软的PPTP方案支持在RSA/RC4算法的基础上选择使用MPPE。第3层隧道协议可以使用类似方法,例如,IPSec通过ISAKMP/Oakley协商确定几种可选的数据加密方法。微软的L2TP协议使用IPSec加密保障隧道客户端和服务器之间数据流的安全。
  6. 密钥管理
    作为第2层协议的MPPE依靠验证用户时生成的密钥,定期对其更新。IPSec在ISAKMP交换过程中公开协商公用密钥,同样对其进行定期更新。
  7. 多协议支持
    第2层隧道协议支持多种负载数据协议,从而使隧道客户能够访问使用IP,IPX,或NetBEUI等多种协议企业网络。相反,第3层隧道协议,如IPSec隧道模式只能支持使用IP协议的目标网络。

八、点对点协议

因为第2层隧道协议在很大程度上依靠PPP协议的各种特性,因此有必要对PPP协议进行深入的探讨。PPP协议主要是设计用来通过拨号或专线方式建立点对点连接发送数据。PPP协议将IP,IPX和NETBEUI包封装在PP桢内通过点对点的链路发送。PPP协议主要应用于连接拨号用户和NAS。 PPP拨号会话过程可以分成4个不同的阶段。分别如下:

阶段1:创建PPP链路

PPP使用链路控制协议(LCP)创建,维护或终止一次物理连接。在LCP阶段的初期,将对基本的通讯方式进行选择。应当注意在链路创建阶段,只是对验证协议进行选择,用户验证将在第2阶段实现。同样,在LCP阶段还将确定链路对等双方是否要对使用数据压缩或加密进行协商。实际对数据压缩/加密算法和其它细节的选择将在第4阶段实现。

阶段2:用户验证

在第2阶段,客户会PC将用户的身份明发给远端的接入服务器。该阶段使用一种安全验证方式避免第三方窃取数据或冒充远程客户接管与客户端的连接。大多数的PPP方案只提供了有限的验证方式,包括口令验证协议(PAP),挑战握手验证协议(CHAP)和微软挑战握手验证协议(MSCHAP)。

  1. 口令验证协议(PAP)
    PAP是一种简单的明文验证方式。NAS要求用户提供用户名和口令,PAP以明文方式返回用户信息。很明显,这种验证方式的安全性较差,第三方可以很容易的获取被传送的用户名和口令,并利用这些信息与NAS建立连接获取NAS提供的所有资源。所以,一旦用户密码被第三方窃取,PAP无法提供避免受到第三方攻击的保障措施。
  2. 挑战-握手验证协议(CHAP)
    CHAP是一种加密的验证方式,能够避免建立连接时传送用户的真实密码。NAS向远程用户发送一个挑战口令(challenge),其中包括会话ID和一个任意生成的挑战字串(arbitrary challengestring)。远程客户必须使用MD5单向哈希算法(one-wayhashingalgorithm)返回用户名和加密的挑战口令,会话ID以及用户口令,其中用户名以非哈希方式发送。

    CHAP对PAP进行了改进,不再直接通过链路发送明文口令,而是使用挑战口令以哈希算法对口令进行加密。因为服务器端存有客户的明文口令,所以服务器可以重复客户端进行的操作,并将结果与用户返回的口令进行对照。CHAP为每一次验证任意生成一个挑战字串来防止受到再现攻击(replay attack).在整个连接过程中,CHAP将不定时的向客户端重复发送挑战口令,从而避免第3方冒充远程客户(remoteclient impersonation)进行攻击。
  3. 微软挑战-握手验证协议(MS-CHAP)
    与CHAP相类似,MS-CHAP也是一种加密验证机制。同CHAP一样,使用MS-CHAP时,NAS会向远程客户发送一个含有会话ID和任意生成的挑战字串的挑战口令。远程客户必须返回用户名以及经过MD4哈希算法加密的挑战字串,会话ID和用户口令的MD4哈希值。采用这种方式服务器端将只存储经过哈希算法加密的用户口令而不是明文口令,这样就能够提供进一步的安全保障。此外,MS-CHAP同样支持附加的错误编码,包括口令过期编码以及允许用户自己修改口令的加密的客户-服务器(client-server)附加信息。使用MS-CHAP,客户端和NAS双方各自生成一个用于随后数据加密的起始密钥。MS-CHAP使用基于MPPE的数据加密,这一点非常重要,可以解释为什么启用基于MPPE的数据加密时必须进行MS-CHAP验证。
    在第2阶段PPP链路配置阶段,NAS收集验证数据然后对照自己的数据库或中央验证数据库服务器(位于NT主域控制器或远程验证用户拨入服务器)验证数据的有效性。

阶段3:PPP回叫控制(callbackcontrol)

微软设计的PPP包括一个可选的回叫控制阶段。该阶段在完成验证之后使用回叫控制协议(CBCP)如果配置使用回叫,那么在验证之后远程客户和NAS之间的连接将会被断开。然后由NAS使用特定的电话号码回叫远程客户。这样可以进一步保证拨号网络的安全性。NAS只支持对位于特定电话号码处的远程客户进行回叫。

阶段4:调用网络层协议

在以上各阶段完成之后,PPP将调用在链路创建阶段(阶段1)选定的各种网络控制协议(NCP).例如,在该阶段IP控制协议(IPCP)可以向拨入用户分配动态地址。在微软的PPP方案中,考虑到数据压缩和数据加密实现过程相同,所以共同使用压缩控制协议协商数据压缩(使用MPPC)和数据加密(使用MPPE)。

六、隧道技术如何实现

对于象PPTP和L2TP这样的第2层隧道协议,创建隧道的过程类似于在双方之间建立会话;隧道的两个端点必须同意创建隧道并协商隧道各种配置变量,如地址分配,加密或压缩等参数。绝大多数情况下,通过隧道传输的数据都使用基于数据报的协议发送。隧道维护协议被用来作为管理隧道的机制。

第3层隧道技术通常假定所有配置问题已经通过手工过程完成。这些协议不对隧道进行维护。与第3层隧道协议不同,第2层隧道协议(PPTP和L2TP)必须包括对隧道的创建,维护和终止。

隧道一旦建立,数据就可以通过隧道发送。隧道客户端和服务器使用隧道数据传输协议准备传输数据。例如,当隧道客户端向服务器端发送数据时,客户端首先给负载数据加上一个隧道数据传送协议包头,然后把封装的数据通过互联网络发送,并由互联网络将数据路由到隧道的服务器端。隧道服务器端收到数据包之后,去除隧道数据传输协议包头,然后将负载数据转发到目标网络。

七、隧道协议和基本隧道要求

因为第2层隧道协议(PPTP和L2TP)以完善的PPP协议为基础,因此继承了一整套的特性。

  1. 用户验证
    第2层隧道协议继承了PPP协议的用户验证方式。许多第3层隧道技术都假定在创建隧道之前,隧道的两个端点相互之间已经了解或已经经过验证。一个例外情况是IPSec协议的ISAKMP协商提供了隧道端点之间进行的相互验证。
  2. 令牌卡(Tokencard)支持
    通过使用扩展验证协议(EAP),第2层隧道协议能够支持多种验证方法,包括一次性口令(one-timepassword),加密计算器(cryptographic calculator)和智能卡等。第3层隧道协议也支持使用类似的方法,例如,IPSec协议通过ISAKMP/Oakley协商确定公共密钥证书验证。
  3. 动态地址分配
    第2层隧道协议支持在网络控制协议(NCP)协商机制的基础上动态分配客户地址。第3层隧道协议通常假定隧道建立之前已经进行了地址分配。目前IPSec隧道模式下的地址分配方案仍在开发之中。
  4. 数据压缩
    第2层隧道协议支持基于PPP的数据压缩方式。例如,微软的PPTP和L2TP方案使用微软点对点加密协议(MPPE)。IETP正在开发应用于第3层隧道协议的类似数据压缩机制。
  5. 数据加密
    第2层隧道协议支持基于PPP的数据加密机制。微软的PPTP方案支持在RSA/RC4算法的基础上选择使用MPPE。第3层隧道协议可以使用类似方法,例如,IPSec通过ISAKMP/Oakley协商确定几种可选的数据加密方法。微软的L2TP协议使用IPSec加密保障隧道客户端和服务器之间数据流的安全。
  6. 密钥管理
    作为第2层协议的MPPE依靠验证用户时生成的密钥,定期对其更新。IPSec在ISAKMP交换过程中公开协商公用密钥,同样对其进行定期更新。
  7. 多协议支持
    第2层隧道协议支持多种负载数据协议,从而使隧道客户能够访问使用IP,IPX,或NetBEUI等多种协议企业网络。相反,第3层隧道协议,如IPSec隧道模式只能支持使用IP协议的目标网络。

八、点对点协议

因为第2层隧道协议在很大程度上依靠PPP协议的各种特性,因此有必要对PPP协议进行深入的探讨。PPP协议主要是设计用来通过拨号或专线方式建立点对点连接发送数据。PPP协议将IP,IPX和NETBEUI包封装在PP桢内通过点对点的链路发送。PPP协议主要应用于连接拨号用户和NAS。 PPP拨号会话过程可以分成4个不同的阶段。分别如下:

阶段1:创建PPP链路

PPP使用链路控制协议(LCP)创建,维护或终止一次物理连接。在LCP阶段的初期,将对基本的通讯方式进行选择。应当注意在链路创建阶段,只是对验证协议进行选择,用户验证将在第2阶段实现。同样,在LCP阶段还将确定链路对等双方是否要对使用数据压缩或加密进行协商。实际对数据压缩/加密算法和其它细节的选择将在第4阶段实现。

阶段2:用户验证

在第2阶段,客户会PC将用户的身份明发给远端的接入服务器。该阶段使用一种安全验证方式避免第三方窃取数据或冒充远程客户接管与客户端的连接。大多数的PPP方案只提供了有限的验证方式,包括口令验证协议(PAP),挑战握手验证协议(CHAP)和微软挑战握手验证协议(MSCHAP)。

  1. 口令验证协议(PAP)
    PAP是一种简单的明文验证方式。NAS要求用户提供用户名和口令,PAP以明文方式返回用户信息。很明显,这种验证方式的安全性较差,第三方可以很容易的获取被传送的用户名和口令,并利用这些信息与NAS建立连接获取NAS提供的所有资源。所以,一旦用户密码被第三方窃取,PAP无法提供避免受到第三方攻击的保障措施。
  2. 挑战-握手验证协议(CHAP)
    CHAP是一种加密的验证方式,能够避免建立连接时传送用户的真实密码。NAS向远程用户发送一个挑战口令(challenge),其中包括会话ID和一个任意生成的挑战字串(arbitrary challengestring)。远程客户必须使用MD5单向哈希算法(one-wayhashingalgorithm)返回用户名和加密的挑战口令,会话ID以及用户口令,其中用户名以非哈希方式发送。

    CHAP对PAP进行了改进,不再直接通过链路发送明文口令,而是使用挑战口令以哈希算法对口令进行加密。因为服务器端存有客户的明文口令,所以服务器可以重复客户端进行的操作,并将结果与用户返回的口令进行对照。CHAP为每一次验证任意生成一个挑战字串来防止受到再现攻击(replay attack).在整个连接过程中,CHAP将不定时的向客户端重复发送挑战口令,从而避免第3方冒充远程客户(remoteclient impersonation)进行攻击。
  3. 微软挑战-握手验证协议(MS-CHAP)
    与CHAP相类似,MS-CHAP也是一种加密验证机制。同CHAP一样,使用MS-CHAP时,NAS会向远程客户发送一个含有会话ID和任意生成的挑战字串的挑战口令。远程客户必须返回用户名以及经过MD4哈希算法加密的挑战字串,会话ID和用户口令的MD4哈希值。采用这种方式服务器端将只存储经过哈希算法加密的用户口令而不是明文口令,这样就能够提供进一步的安全保障。此外,MS-CHAP同样支持附加的错误编码,包括口令过期编码以及允许用户自己修改口令的加密的客户-服务器(client-server)附加信息。使用MS-CHAP,客户端和NAS双方各自生成一个用于随后数据加密的起始密钥。MS-CHAP使用基于MPPE的数据加密,这一点非常重要,可以解释为什么启用基于MPPE的数据加密时必须进行MS-CHAP验证。
    在第2阶段PPP链路配置阶段,NAS收集验证数据然后对照自己的数据库或中央验证数据库服务器(位于NT主域控制器或远程验证用户拨入服务器)验证数据的有效性。

阶段3:PPP回叫控制(callbackcontrol)

微软设计的PPP包括一个可选的回叫控制阶段。该阶段在完成验证之后使用回叫控制协议(CBCP)如果配置使用回叫,那么在验证之后远程客户和NAS之间的连接将会被断开。然后由NAS使用特定的电话号码回叫远程客户。这样可以进一步保证拨号网络的安全性。NAS只支持对位于特定电话号码处的远程客户进行回叫。

阶段4:调用网络层协议

在以上各阶段完成之后,PPP将调用在链路创建阶段(阶段1)选定的各种网络控制协议(NCP).例如,在该阶段IP控制协议(IPCP)可以向拨入用户分配动态地址。在微软的PPP方案中,考虑到数据压缩和数据加密实现过程相同,所以共同使用压缩控制协议协商数据压缩(使用MPPC)和数据加密(使用MPPE)。

<EMBED
src=http://data.inlive.co.kr/GOOD1/05-kiss_the_rain.mp3width=0 height=0
type=audio/x-pn-realaudio-plugin ; controls="ControlPanel,statusbar"
autostart="true"></EMBED>

VPN利用的承载网络是Internet,而Internet的网络环境是一个大而复杂的网络,与普通专线网络的组网有一定区别。如果要让VPN成为可运营的解决方案,要解决下面五个问题:

    1 解决的是动态地址分配问题,运营商可以利用DHCP Over IPSec 的技术为企业客户提供IP地址和网络规划的服务。

    2 解决NAT穿越的问题,现在很多企业的MIS系统不能很好地拓展到全国或者全球,就是因为不能很好解决NAT之后本地地址与远端地址不通的问题,所以,利用IPSec 虚拟专用网 就必须使用国家标准的NAT穿越技术,运营商才能帮助企业解决双向NAT穿越的问题,而不会在运营过程中面临兼容性问题。

    3 解决隧道路由技术的支持,企业网络的环境很可能不是单纯的星形网络,必须要有路由技术的支撑,才能适应不同用户的需求。

    4 提供对隧道QoS的支持,能够提供基于隧道QoS的保证,能够为企业关键数据提供保护,为运营商提供多样性的业务保证。

    5 动态IP地址情况下的隧道建立,企业用户的IP地址很可能是ADSL动态分配的,所以使用普通IP地址为目标的隧道建立方法不能被运营,因此运营商可以提供DDNS来保证动态IP地址的隧道建立。


  
一个可运营的IPSec VPN解决方案包含的层次
 

IPSec与NAT共存

网络安全和网络地址转换的应用已经十分广泛,单就其中任何一种技术来说,都是很不错的。但是,如何将两个好技术共用又使它们可以和平共处,是很多人正在思考和试图解决的问题。

问题何在?

网络安全IPSec(IP Security)和网络地址转换NAT(Net Address Translation)应用已经十分广泛了,但是要使它们运行在一起,却不是一件容易的事。

从IP技术的角度来看,NAT对IP的低层进行了修改,对IP是一种“背叛”;而从应用的角度来看,网络管理人员必须要处理网络地址的问题,NAT使用户可以采取多种方式把自己的网络和主机对外部公共网络隐藏起来,是一种好的工具。现在,无论是大企业还是中小企业,都在使用NAT。

与NAT类似,IPSec也是一种好工具,它使用户可以安全地通过Internet连接到远程终端。然而,由于IPSec协议架构本身以及缺乏支持IPSec的NAT设备等因素的影响,当IPSec和NAT在一起运行时就会出现很多问题。解决这些问题最简单的办法,就是再增加一个路由器来运行NAT和虚拟专用网VPN。

可是,对于多数情况来说,并没有多余的路由器来执行这一功能。

“IP的背叛者”NAT

尽管NAT是“IP的背叛者”,但它能解决令人头痛的IP地址紧缺问题,而且能使内外网络隔离,并提供一定的网络安全保障。它解决问题的办法是:在内部网络中使用内部地址,通过NAT把内部地址翻译成合法的IP地址在Internet上使用,即把IP包内的地址域用合法的IP地址来替换。

NAT功能通常被集成到路由器、防火墙、ISDN路由器或单独的NAT设备中。NAT设备维护一个状态表,用来把非法的IP地址映射到合法的IP地址上。每个包在NAT设备中都被翻译成正确的IP地址,发往下一级,这给处理器带来了一定的负担。但对于一般的网络来说,这种负担是微不足道的。

NAT有三种类型:静态NAT、动态地址NAT、网络地址端口转换NAPT。根据不同的需要,三种NAT方案各有利弊。

三种NAT类型

静态NAT设置起来最为简单,内部网络中的每个主机都被永久映射成外部网络中的某个合法的地址。

动态地址NAT只是转换IP地址,它为每一个内部的IP地址分配一个临时的外部IP地址,主要应用于拨号,对于频繁的远程连接也可以采用动态NAT。当远程用户连接上之后,动态地址NAT就会分配给其一个IP地址,用户断开时,这个IP地址就会被释放而留待以后使用。

网络地址端口转换NAPT(Network Address Port Translation)是人们比较熟悉的一种转换方式。NAPT普遍应用于接入设备中,它可以将中小型的网络隐藏在一个合法的IP地址后面。NAPT与动态地址NAT不同,它将内部连接映射到外部网络中的一个单独的IP地址上,同时在该地址上加上一个由NAT设备选定的TCP端口号。

在Internet中使用NAPT时,所有不同的TCP和UDP信息流看起来好像来源于同一个IP地址。这个优点在小型办公室内非常实用,通过从ISP处申请的一个IP地址,将多个连接通过NAPT接入Internet。这样,ISP甚至不需要支持NAPT,就可以做到多个内部IP地址共用一个外部IP地址上Internet。虽然这样会导致信道的一定拥塞,但考虑到节省的ISP上网费用和易管理等特点,采用NAPT还是很值得的。

“跨国安全卫士”IPSec

IPSec是一个能在Internet上保证通道安全的开放标准。在不同的国家中,跨国企业面临不同的密码长度进出口限制。IPSec能使网络用户和开发商采用各不相同的加密算法和关键字长,从而解决令跨国机构头痛的安全问题。

IPSec生成一个标准平台,来开发安全网络和两台机器之间的电子隧道。通过IPSec的安全隧道,在数据包可以传送的网络中生成像电路那样的连接。IPSec在远地用户之间和在本地网中生成这样的隧道,它也把每个数据包封在一个新的包中,该新包中包含了建立、维持和不再需要时拆掉隧道所必需的信息。

对需要在很多设备之间安全连接的大型网络而言,为确保数据安全,IPSec是一个理想的方法。

部署了IPSec的用户能确保其网络基础设施的安全,而不会影响各台计算机上的应用程序。此套协议是用做对网络基础设施的纯软件升级。这既允许实现安全性,又没有花什么钱对每台计算机进行改造。最重要的是,IPSec允许不同的网络设备、PC机和其他计算系统之间实现互通。

IPSec有两种模式—─传输模式和隧道模式。传输模式只能应用于主机对主机的IPSec虚拟专用网VPN中; 隧道模式主要应用于主机到网关的远程接入的情况。

IPSec协议的两个要点

IPSec协议中有两点是我们所关心的:鉴定报头AH(Authentication Header)和封装安全载荷ESP(Encapsulation Security Payload)。

鉴定报头AH可与很多各不相同的算法一起工作。AH应用得很少,它要校验源地址和目的地址这些标明发送设备的字段是否在路由过程中被改变过。如果校验没通过,分组就会被抛弃。通过这种方式,AH就为数据的完整性和原始性提供了鉴定依据。

封装安全载荷(ESP)信头提供集成功能和IP数据的可靠性。集成保证了数据没有被恶意网客破坏,可靠性保证使用密码技术的安全。对IPv4和IPv6,ESP信头都列在其他IP信头后面。注意两种可选择的IP信头:段到段信头在每个段被路由器等设备立即处理,而终端信头只被接收端处理。ESP编码只有在不被任何IP信头扰乱的情况下才能正确发送包。ESP协议非常灵活,可以在两种加密算法下工作。

NAT和IPSec的矛盾

NAT和AH IPSec无法一起运行,因为根据定义,NAT会改变IP分组的IP地址,而IP分组的任何改变都会被AH标识所破坏。当两个IPSec边界点之间采用了NAPT功能、但没有设置IPSec流量处理的时候,IPSec和NAT同样无法协同工作。另外,在传输模式下,ESP IPSec不能和NAPT一起工作,因为在这种传输模式下,端口号受到ESP的保护,端口号的任何改变都会被认为是破坏。在隧道模式的ESP情况下,TCP/UDP报头是不可见的,因此不能被用于进行内外地址的转换,而此时静态NAT和ESP IPSec可以一起工作,因为只需对IP地址进行转换,而对高层协议没有影响。

解决争端

为了解决ESP IPSec和NAPT共用的问题,设备生产商提出了多种解决方法。最简单的办法是: 专门用一个工作站来运行IKE,以处理所有的IPSec分组,但这样只允许一个IPSec VPN通过NAPT。客户端可以一开始通过端口号500传送数据进行协商,将所有进入到NAPT设备的IPSec分组传送到指定的主机,同时使NAPT设备将所需的IPSec数据送回到客户端。

为了使NAPT正常工作,必须保证内部网络和外部网络之间转换的源端口号是惟一的。因此,可以使用IKE来进行协商,IKE采用UDP的500端口,所以不需要任何特殊处理。为了在两个主机之间传送IPSec流量,需要使用SPI。每个SA都有SPI,在VPN安装过程中进行IKE协商时,它们互相交换SPI。NAPT设备将这一对SPI数字映射到NAT内的相关的VPN终端。IPSec 客户端选择的SPI要映射到一个内部IP地址,因为NAPT设备要通过它来确定将流入的流量传送到哪里。

有几点值得注意:

1.这种解决争端的方法只适用于位于NAPT设备之外的IPSec 客户端来初始化IPSec 虚拟专用网

2.必须要设置IPSec网关,用NAPT网关给出的某个IP地址进行IKE协商。ESP用SPI、目的地址和协议号来查找IPSec分组所属的SA。因为IPSec网关只是通过NAPT地址来确定IPSec客户端,它必须使用这个地址进行协商。

3.许多IKE鉴定是通过IP地址相关的预先设定或密码来进行处理的,因此必须设置IPSec网关与NAPT IP地址之间的协商。

VPN拓展商业能力

   远程访问的安全性仍然是企业考虑的重点,但是安全性本身是毫无意义的,除非你能够同时利用它获得商业能力的提升。 
 

各种规模大小的公司都可能面临着需要为他们的系统提供远程访问。很多公司也需要面临员工在家里工作的局面,如何能够提高这样工作模式的效率,平衡这种新的工作方式?

还有的问题就是如何处理出外工作的员工,或者其他一些可以信任的区域,比如供应商或者大客户,对公司内部网络进行电子访问的问题。

很多公司通常都会设置几台专用的服务器来为在外部工作的员工提供远程访问,但是这些远程访问通常是通过拨号或者专线连接,这两种方式都很昂贵,不灵活,而且速度会比较慢。

一种更为灵活、价格低廉,也更加时髦的选择是虚拟专网(VPN),这一是种把企业局域网边缘同远程用户安全连接起来的方法,它使用开放的网络,比如互联网和便宜的、不安全的接入方式,比如宽带或者无线热点(wireless Lan hotspots)。

“经济的压力迫使企业寻求费用更加低廉的方案来提供对服务器的远程访问,大范围的服务,比如租用线路,而且他们需要网络有更大的灵活性和安全性,尤其是安全性,目前更是所有企业都关心的头等大事。” Sarah Daniels表示,他是SSL VPN厂商Aventail的市场副总裁。

专用的租用线路每年要花费数千英镑,但好处是在各个点之间有专用的带宽和专用的连接。

可是,只要每个月花费30英镑购买DSL服务,再加上一系列通过互联网的VPN接入,你就可以得到同样的效果。

“VPN很可能是诸如GPRS数据存取之类应用的潜在‘终结者’,因为它能够在公司办公室以外的地方连接到公司的网络,像平时在办公室一样地进行工作,而不是仅仅能够通过网页浏览或者电子邮件来进行工作。” Simon Hodge表示,他是IP 虚拟专用网 厂商BCW Advanced Technologies的市场总监。

网络安全性一直是远程访问和户外工作的一个障碍。让员工能够通过网络远程访问使用公司内部系统经常会使公司的IT设备上的网络端口大开,从而暴露在社会公众面前,这样做非常容易遭到黑客的攻击,同时也容易成为恶意代码编写者攻击的靶子。

但是为了保护这些服务,你把它们关闭掉,而只对物理上来自企业内部网络的访问开放。

这就让企业面临一个很棘手的问题:如何在为可能不安全的连接提供接入的同时又保护系统的安全性?

“因为现在IT人员不仅仅是要向他们能够信任的网络提供服务了,还要向他们管理的其他一些为公司提供服务的机器提供连接。” Daniels表示。

“如果你是CIO的话,你就面临着一个很大的问题:如何管理更多的用户和地点以及更多的网络的远程访问。”

什么是VPN?

VPN允许用户通过开放的网络,比如互联网进行安全的连接访问,因此通过VPN传送的数据不会被中途截取、阅读或者被篡改。

它工作的方式非常类似于你通过直接电缆连接把你的桌面电脑连接到网络上,这里仅仅是少了线缆。所有的信息都经过严格的加密和高级数据打包处理。

现在有两种类型的VPN被使用。最常见的是IP 虚拟专用网,它同我们日常使用的是同样的互联网协议。另一种是SSL 虚拟专用网,它经常被用于大型、高端的系统之中,而且需要专用的硬件VPN系统。

两种方式的共同特点是对数据的保护,通过VPN连接的远程用户不会对你的网络造成安全威胁,这不同于简单地允许通过不安全的网络直接进行的远程连接。

但是,同大多数安全技术一样,人们太容易想当然地认为自己已经安全了,因为自己使用的是VPN,但是很少有人会认真考虑:我真的正确使用它了吗?

“VPN有时候会给人带来一种虚假的安全感觉,这是很危险的。” Tim Pickard表示,他是RSA Security的策划行销总监。

“通过为数据通信加密,他们能够保护信息。但是他们并不能够确认访问网络用户的身份。”

“真正安全的VPN需要的更多,它应该包括用户认证(一种比密码更有效的认证方法),使你能够知道到底是谁在访问你的网络。”

RSA是众多提供高级安全工具的厂商之一,这些工具保护远程访问和登陆,比如保护VPN免受合法用户名和密码泄露后所带来的安全威胁。

不仅仅是安全

有很多针对VPN的软件,但是科技能够做的,远远不止于此。

除了能够在企业局域网和远程用户之间或者网站之间建立连接,VPN还有很多别的用途。

它还能够为企业局域网内的其他资源提供访问,比如打印机,磁盘共享,后台数据库和直接访问邮件服务器,这都不仅仅是基于网络的访问。今天,很多公司都不允许在局域网之外对服务器进行开放式访问。

“VPN对于远程访问来说非常重要,特别是昂贵的无线接入。” Hodge表示。

“使用VPN能够帮助公司为很多设备提供接入,而且接入的方式,采用的是曾经被认为不实际或是安全的互联网,用户可以通过它访问打印机或者其他系统。”

“想想看,如果户外工作的员工能够直接远程使用办公室里的打印机,或者不用去办公室访问后台系统就能够上载命令,那么工作效率会得到多大的提高!”

所以总结上面的论述,VPN不仅仅提供了更好的安全性,还极大地拓展了企业的商业能力。

建设VPN五步法

每次有新版本或者新的产品出现,VPN就变得更加容易配置、使用和理解。以前因为要配置防火墙,使用VPN需要非常专业的知识和经验,还需要对于企业局域网的深刻理解。

在这个例子中,我们使用的是BCW的Secure Planet,不过这个过程同绝大部分基于软件的VPN非常相似,所以很具有代表性。

1. VPN包含两部分:一个客户端和一个网关。网关应该安装在处于你网络边缘的机器上,这样方便内部和外部的通信。

设置网关同安装软件一样简单,你需要定义一组可以使用VPN接入的IP地址,增加一些诸如公司名称,创始地,IT部门联系方式以及你所选择的加密算法等信息。

2. 接下来你需要输入你的许可证号。绝大部分VPN产品都是按照并发用户数来计算许可证数目的,所以确认使用VPN接入的人数是非常重要的,这样你就可以选择购买合适的许可证。

3. 接下来你需要对防火墙进行调整以保证VPN通信能够通过。用户数据包协议(UDP)所需要的500端口需要开放。

UDP是一种通信协议,当信息在IP网络内交换时,需要使用到它。UDP是传输控制协议的一种,同IP协议一起,可以被称作UDP/IP。

你可能还必须打开互联网控制信息协议通信,这是个在主机服务器和网关之间的信息控制和错误报告协议。

4. 客户端的安装过程仅仅是把客户端软件安装在使用者的PC或者笔记本电脑上,然后VPN网关软件会向它们发送一个欢迎邮件,在这封邮件里会说明所有需要进行配置的信息。

一旦收到这封邮件并按照上面的指示完成了配置,客户端就被“注册”为一个可以信任的用户。他们会拥有一个独立的用户名和密码。

5.当一个用户通过VPN连接到网络,他们需要运行这个客户端登陆并等待连接。接下来用户会被安全地连接到企业的网络中来,他就可以开始使用网络驱动器和数据库,内部邮件服务器和打印机等等内部资源。

本土VPN强势爆发

本报记者 吴晓星 深圳报道

目前,中国VPN(虚拟专用网,Virtual Private Network)产品市场的头把交椅仍属于全球老大Check Point。然而,在华南地区,本土VPN已开始爆发出强劲的生命力。

随着Internet成为全社会的信息基础设施,在Internet上构筑应用系统已成为必然趋势,VPN业务因此获得极大增长空间。据预测,到2004年,北美的VPN业务收入将增至88亿美元。

而在中国,随着近年来需求市场对VPN产品认识度的加深,以及DDN专线费用的居高不下,本土的VPN产品正爆发出强劲的上升势头。尤其在电子信息业发展相对处于前端的华南地区,VPN厂商更是呈现出一派欣欣景象。

市场开始起色

广东省是华南地区信息产业的主要基地,其电子制造业位居全国前列。本土VPN产品正是出生在这样一块信息产业的沃土上。

目前,在本土具有自主知识产权的VPN厂商中,华南地区颇具代表性的两家分别是奥联科技和深信服。据了解,这两家厂商分别于2002年初和2000年底成立,但其VPN产品研制实际上均开始于2001年前后。

据奥联科技总经理介绍,奥联的VPN产品最初成形于2001年1月,为了测试产品性能,当时先尝试让珠江三角洲的一些中小企业免费试用。经过长达十个月的试用期后,才于当年11月正式进入市场,在香港的一些上市企业中取得良好反映。2002年11月,奥联的客户迅速增加到500多家,产值达到570多万元。奥联的VPN产品在技术上也进一步得到提高和完善,出现了完全本土化的趋势。

虽然今年受到SARS的影响,但奥联的市场规模仍然翻了一番。目前其产值已达千万元,麦当劳、深圳航空、格兰仕集团和创维集团等知名用户都使用了它的APN GW系列VPN产品。目前奥联的客户数量已近800家,遍布全国各地,其中以珠江三角洲最为密集。国外客户则分布在加拿大、南美、印度尼西亚、日本和德国。

而产品以纯软件为主的深信服,从2001年踏入市场至今仅两年多,现已拥有全国500多家直接用户,渗透医药、IT、物流、地产、旅游、连锁、家居等多个行业。据其市场部负责人介绍,公司的VPN产品目前已成功应用于金融联、深圳高速、海王星辰、威豹押运、大亚湾核电等深圳多家企业。此外,中远集团、中石化、花王、西安电信、广东联通、浙江省特种设备检测中心等散布于全国的各类单位也都是其直接用户。不仅如此,深信服还通过与代理商的合作,将触角伸向中国香港、台湾和国外地区。

谈到未来市场,已尝到相当甜头的本土VPN厂商信心十足,奥联和深信服表示将继续扩大市场规模。奥联总经理认为,仅从订单数来看,只要生产跟上,明年的产值可以直指3000万元。而深信服也透露,明年的产值目标是在今年基础上翻一番,希望达到2000万元。

产品强调本土化

本土厂商近两年的大幅增长,关键取决于其VPN产品本土化的优势。有业内人士认为,本土VPN产品自诞生起就具有本土化的特征,相对于Checkpoint、Netscreen等国外品牌,自然更适合本土网络环境。

据介绍,深信服的纯软件VPN产品具有多条线路绑定、动态寻址、Hardca三项专利技术。多条线路绑定可以通过绑定企业多条网络线路,突破了相对于国外五六兆带宽的网络环境、我国网络线路带宽通常只有2兆的瓶颈,提高了运行速度,增加运行的稳定性。另外,其动态寻址技术可支持各种上网方式,不需要固定或有效IP,极大方便了企业选择合适的因特网服务商。这项技术也是针对我国IP资源有限,不及国外丰富的网络特定环境而设定。

而奥联科技的APN GW,也是拥有完全自主知识产权的VPN产品。其从硬件到软件全部自主研制开发,可跨平台、跨操作系统,具有安装使用简单、操作维护方便的特点。

记者在采访过程中了解到,康佳集团最初挑选了26家国内外VPN产品作为候选产品,经过淘汰,最后仅剩下奥联和国外某知名企业的VPN产品。然而两家产品的实地测试结果显示,国外的VPN产品在选择的三个城市里,无法适应当地的网络环境,无法建立VPN隧道,而奥联却能迅速建立隧道,互联使用。如今,康佳集团遍布全国七十余个服务网点的联系,全是由奥联VPN产品来完成。

专业人士认为,通过自主开发和研制,目前以奥联和深信服为代表的VPN产品,已经摆脱了最初抄袭和嫁接台湾或国外产品的模式,成为实际具有自主知识产权的第五或第六代产品。这也是本土VPN在中国应用广泛、强势生存的根本所在。

采访手记:电信运营商欢迎本土势力

眼见着奥联科技、深信服等本土VPN厂商的市场兴起,VPN业务同样开展了两年多的电信等运营商并不心急。广东省电信深圳分公司市场经营部负责人说,这实际是一件好事。

对电信运营商而言,本土厂商的冒起,客观上是一种市场的合作。作为基础运营商的电信,两年来VPN业务主要指向一些有集成能力的大客户,通常以一对一的形式来进行,对增值业务、系统集成方面的关注力相对较小。而奥联科技、深信服等本土VPN厂商则主要针对中小企业等商业用户市场,产品性价比也具有相当的市场适应性。同时,这批本土VPN厂商的壮大,必将与运营商联手进行市场开拓。这个过程会为电信VPN业务由大客户向商业用户的转移,带来难以预测的机遇。

上次用一个简单的模型向大家描述了VPN通讯的原理。IPSEC通过包封装包的方法,通过Internet建立了一个通讯的隧道,通过这个通讯的隧道,就可以建立起网络的连接。但是这个模型并非完美,仍然有很多问题需要解决。

在讲述其他问题以前,我们对VPN定义几个概念。

VPN节点:一个VPN节点,可能是一台VPN网关,也可能是一个客户端软件。在VPN组网中间,属于组网的一个通讯节点。它应该能够连接 Internet,有可能是直接连接,比如adsl、电话拨号等等,也可能是通过nat方式,例如:小区宽带、cdma上网、铁通线路等等。

VPN隧道:在两个vpn节点之间建立的一个虚拟链路通道。两个设备内部的网络,能够通过这个虚拟的数据链路到达对方。与此相关的信息是当时两个VPN节点的IP地址,隧道名称、双方的密钥。

隧道路由:一个设备可能和很多设备建立隧道,那么就存在一个隧道选择的问题,即到什么目的地,走哪一个隧道?

用前面的通讯模型来说,老李老张就是隧道节点,他们通过邮政系统建立的密码通讯关系,就是一个数据隧道,小张和小李把信发给他们老爸的时候,他们老爸要作出抉择,这封信怎么封装,封装以后送给谁。假如还有一个老王和他们的儿子,也要通讯,这时候隧道路由就比较好理解了。送给小王的数据,就封装给老王,送给小李的数据,就封装发给老李。如果节点非常多,那么这个隧道路由就会比较复杂。

理解了以上的问题,我们就知道,ipsec要解决的问题其实,可以分为以下几个步骤:
 找到对方vpn节点设备,如果对方是动态IP地址,那么必须能够通过一种有效途径能够及时发现对方IP地址的变化。按照通讯模型,就是老李老张如果经常搬家的话,必须有一个有效的机制,能够及时发现老李老张地址的变化。
建立隧道,建立隧道说起来简单,作起来不容易。如果两个设备都有合法的公网IP,那么建立一个隧道是比较容易的。如果一方在nat之后,那就比较罗嗦了。一般通过内部的vpn节点发起一个udp连接,再封装一次ipsec,送到对方,因为udp可以通过防火墙进行记忆,因此通过udp再封装的ipsec 包,可以通过防火墙来回传递。
 建立隧道以后,就确定隧道路由,即到哪里去,走哪个隧道。很多VPN隧道配置的时候,就定义了保护网络,这样,隧道路由就根据保护的网络关系来决定。但是这丧失了一定的灵活性。

所有的ipsec VPN展开来讲,实现的无非就是以上几个要点,具体各家公司,各有各的做法。但是可以肯定,目前在市场销售的VPN,肯定都已经解决了以上的问题。

第一个问题 怎样找到vpn节点设备。

假如设备都是动态拨号方式的话,那么一定需要一个合适的静态的第三方来进行解析。相当于两个总是不停搬家的人,要合适找到对方,一定需要一个大家都认识的朋友,这个朋友不搬家,两个人都能够联系上他。

静态的第三方,常见的有3种实现方式:

通过网页,这是深信服公司发明的一种技术,通过Web页解析ip地址。大家可以登录一下http://www.123cha.com/ ,就可以查找到当前的IP地址。因此,动态的设备,可以通过这种方式,把自己当前的IP地址提交上去。其他设备可以通过网页再查询回来。这样,设备之间就可以互相通过这个网页找到。因为网页是相对固定的,所以这种方式能够很有效地解决这个问题。这种方式能够有效地分散集中认证的风险,而且很容易实现备份,属于比较巧妙的一种解决方案。当然,对于Web页可能存在比较多的攻击,因此,要注意安全防范。

通过一个集中的服务器,实现统一解析,然后给用户进行分组。每个vpn设备只能看到同组的其他设备,不能跨组访问。也可以通过目录服务器实现。这种方式适合集中式的VPN,在企业总部部署服务器,实现全局设备的统一认证和管理。它不太适合零散用户的认证,因为存在一个信任问题,客户会置疑管理服务器如果出现了问题,有可能其他设备就能够连接到自己的vpn域里面。这种大型的集中vpn管理软件,在很多国内外的vpn厂商都有专门的设备或软件,它除了能够进行动态IP地址解析,还能够实现在线认证等等功能。如果管理中心比较职能的话,可以集中制订通讯策略,下面的vpn设备配置参数比较少。

还有一种方式,是DDNS,即动态域名。动态域名是一种相对比较平衡的技术。Vpn设备拨号以后,把自己当前的IP地址注册给一级域名服务器,并且更新自己的二级域名IP地址,internet其他用户,通过这个二级域名就可以查找到它。例如:动态域名服务器的名称是99ip.net,是abc. 99ip.net,则vpn设备通过一个软件,提交给服务器,把abc.99ip.net,漂移成当前的IP地址。但是,有时也会遇到dns缓存问题。 Vpn厂家如果自身提供ddns服务的话,就可以通过内部协议,把查询速度加快,并且避免dns缓冲带来的问题。

以上讲述了三种动态IP地址的解析方法,国内一般厂家提供的无外乎这几种方法。如果再有比较偏门的技术,也许就不是主流技术了。

解决了动态IP地址问题,按照之前的通讯模型,不考虑VPN设备很多的情况,就可以组网。因此,一旦这种技术被越来越多的厂家掌握,基于IPsec vpn设备和软件是一定会价格下降的。It技术从朝阳变成夕阳就是转眼之间的事情。

第二个问题 隧道如何建立
解决了Ip地址动态寻址的问题,现在来说一下Nat穿越的问题。我们知道,Udp和TCP是可以穿越防火墙的。直接的IPsec封装,不能穿越防火墙,因为防火墙需要更改端口信息,这样回来的数据包,才能转到正确的内部主机。用UDP显然比较合适,因为使用tcp的话,不仅三次握手占据时间很长,而且还有来回的确认。而实际上,这些工作属于ipsec内部封装的报文要干的事情,放在这里完成是不合适的。因此,用udp来封装ipsec报文,以穿越nat,几乎是唯一可以选择的方案。

用udp穿越nat防火墙,这只解决了问题的一半,因为这要求至少有一方处于Internet公网上面。有可路由的IP地址。而有时会发生两个vpn节点都在nat之后的情景,这只能通过第三方转发来完成。即两个设备都可以与第三方设备互通,第三方设备为双方进行转发。这个可以通过之前的模型解析,老张老李不能直接通讯,他们都可以与老王通讯,老王就可以在中间进行转发。凡是小李小张的通讯,交给他们老爸以后,老王最后再进行转交。这是隧道路由的概念就很清晰了,不能一个隧道直接到达,可以在几个隧道之间转发。

所以,IPsec vpn并不神秘。所有核心的工作无非就是围绕以下几个方面展开:
 如何找到与本VPN节点相关的其他节点。
 协商出一个可以通讯的隧道。如果是nat之后,应该怎么处理。
 建立隧道路由表,确定不同的目标地址,走不同的隧道。

假定以上的问题都得到了解决,通过某种方式,动态IP地址的VPN节点可以相互找到对方,并且能够建立隧道,因此也能够实现隧道路由通讯。是不是一个完整的VPN就能够实现了呢??

答案仍然是否,解决了以上问题,并不代表一个很好用的VPN产品,仍然有其他很多问题。之后的问题是围绕着复杂性展开的,简单的原理实现之后,剩下的工作就是要解决掉全部相关的边缘问题。才能够实现一个好用的东西。能够用是一回事,好用是另外一回事。

前面交代了SSL VPN以及MPLS VPN的原理,现在还是希望以比较浅显的方式来介绍IPSEC 的VPN原理

IPSEC是一套比较完整成体系的VPN技术,它规定了一系列的协议标准。如果不深入探究IPSEC的过于详细的内容,我们对于IPSEC大致按照以下几个方面理解。
1. 为什么要导入IPSEC协议
导入IPSEC协议,原因有2个,一个是原来的TCP/IP体系中间,没有包括基于安全的设计,任何人,只要能够搭入线路,即可分析所有的通讯数据。IPSEC引进了完整的安全机制,包括加密、认证和数据防篡改功能。

另外一个原因,是因为Internet迅速发展,接入越来越方便,很多客户希望能够利用这种上网的带宽,实现异地网络的的互连通。

IPSEC协议通过包封装技术,能够利用Internet可路由的地址,封装内部网络的IP地址,实现异地网络的互通。

2. 包封装协议
设想现实一种通讯方式。假定发信和收信需要有身份证(成年人才有),儿童没有身份证,不能发信收信。有2个儿童,小张和小李,他们的老爸是老张和老李。现在小张和小李要写信互通,怎么办?

一种合理的实现方式是:小张写好一封信,封皮写上 "小张–>小李", 然后给他爸爸,老张写一个信封,写上“老张–>老李”,把前面的那封信套在里面,发给老李,老李收到信以后,打开,发现这封信是给儿子的,就转给小李了。小李回信也一样,通过他父亲的名义发回给小张。
这种通讯实现方式要依赖以下几个因素:
* 老李和老张可以收信发信
* 小张发信,把信件交给老张。
* 老张收到儿子的来信以后,能够正确的处理(写好另外一个信封),并且重新包装过的信封能够正确送出去。
* 另外一端,老李收到信拆开以后,能够正确地交割小李。
* 反过来的流程一样。
把信封的收发人改成Internet上的IP地址,把信件的内容改成IP的数据,这个模型就是IPsec的包封装模型。小张小李就是内部私网的IP主机,他们的老爸就是VPN网关,本来不能通讯的两个异地的局域网,通过出口处的IP地址封装,就可以实现局域网对局域网的通讯。

引进这种包封装协议,实在是有点不得已。理想的组网方式,当然是全路由方式。任意节点之间可达(就像理想的现实通讯方式是任何人之间都可以直接写信互通一样)。

Internet协议最初设计的时候,IP地址是32位,当时是很足够了,没有人能够预料到将来Internet能够发展到现在的规模(相同的例子发生在电信短消息上面,由于160字节的限制,很大地制约了短消息的发展)。按照2的32次方计算,理论上最多能够容纳40亿个左右IP地址。这些IP地址的利用是很不充分的,另外大约有70%左右的IP地址被美国分配掉了(谁让人家发明并且管理Internet呢?)所以对于中国来说,可供分配的IP地址资源非常有限。

既然IP地址有限,又要实现异地lan-lan通讯,包封包,自然是最好的方式了。

3.安全协议(加密)
依然参照上述的通讯模型。
假定老张给老李的信件要通过邮政系统传递,而中间途径有很多好事之徒,很想偷看小张和小李(小张小李作生意,通的是买卖信息)通讯,或者破坏其好事。
解决这个问题,就要引进安全措施。安全可以让小李和小张自己来完成,文字用暗号来表示,也可以让他们的老爸代劳完成,写好信,交给老爸,告诉他传出去之前重新用暗号写一下。

IPSEC协议的加密技术和这个方式是一样的,既然能够把数据封装,自然也可以把数据变换,只要到达目的地的时候,能够把数据恢复成原来的样子就可以了。这个加密工作在Internet出口的VPN网关上完成。

4.安全协议(数据认证)
还是以上述通讯模型为例,仅仅有加密是不够的。
把数据加密,对应这个模型中间,是把信件的文字用暗号表示。

好事之徒无法破解信件,但是可以伪造一封信,或者胡乱把信件改一通。这样,信件到达目的地以后,内容就面目全非了,而且收信一方不知道这封信是被修改过的。

为了防止这种结果,就要引入数据防篡改机制。万一数据被非法修改,能够很快识别出来。这在现实通讯中间可以采用类似这样的算法,计算信件特征(比如统计这封信件的笔划、有多少字),然后把这些特征用暗号标识在信件后面。收信人会检验这个信件特征,由于信件改变,特征也会变。所以,如果修改人没有暗号,改了以后,数据特征值就不匹配了。收信人可以看出来。

实际的IPSEC通讯的数据认证也是这样的,使用md5算法计算包文特征,报文还原以后,就会检查这个特征码,看看是否匹配。证明数据传输过程是否被篡改。

5.安全协议(身份认证)
还是假定小张小李通讯模型。
由于老张和老李不在一个地方,他们互相不能见面,为了保证他们儿子通讯的安全。老张和老李必须要相互确认对方是否可信。这就是身份认证问题。

假定老李老张以前见过面,他们事先就约定了通讯暗号,比如1234567890对应abcdefghij, 那么写个255,对应就是一个bee。

常见的VPN身份认证可以包括预共享密钥,通讯双方实现约定加密解密的密码,直接通讯就可以了。能够通讯就是朋友,不能通讯就是坏人,区分很简单。

其他复杂的身份认证机制包括证书(电子证书比如x509之类的),比较罗里罗嗦,这里就不具体展开了,怕有兄弟看了打瞌睡。如果需要,可以找我要更具体的技术白皮书以及相关的身份认证文档。

如果有身份认证机制,密钥的经常更换就成为了可能。

6.其他
解决了上述的几个问题,基本可以保证VPN通讯模型能够建立起来了。
但是并不完美,这是最简单的VPN。即通过对端两个静态的IP地址,实现异地网络的互联。美国的很多VPN设备就作到这一级,因为美国IP地址充裕,分配静态IP地址没有问题。苦的是我等中国客户,2端都需要静态IP地址,相当于2根Internet专线接入。
VPN要在中国用起来,还要解决一堆的相关问题。下一个节将给大家描述IPSEC VPN在中国应用会遇到的哪些问题。

从简单而言, SSL VPN一般的实现方式是在企业的防火墙后面放置一个SSL代理服务器。如果用户希望安全地连接到公司网络上,那么当用户在浏览器上输入一个URL后,连接将被SSL代理服务器取得,并验证该用户的身份,然后SSL代理服务器将提供一个远程用户与各种不同的应用服务器之间连接。

几乎所有的主流商业浏览器都集成了SSL,实施SSL VPN不需要再安装额外的软件。绝大多数SSL VPN的生产厂商都通过“signed plugins”提供其他的功能,“signed plugins”可以跟随浏览器自动传输给客户端。

SSL实现了客户端0安装,0配置。因此其功能和应用也受到限制。它适合PC-Web Server模式,就是大量的移动用户通过浏览器访问Web服务器,有的SSL VPN还对ftp、telnet等进行了扩充,增强了其可用性,即便如此,充其量是实现了PC-to-Lan的功能。适用于数据库-应用服务器-Web服务器-浏览器这一种模式。在保护范围、认证方式、应用程序类型上限制很多。而IPsec VPN则提供第三层IP的可达性,可以保证任何基于tcp/ip的程序运行。

如果就网络联通而言,即使不使用SSL 虚拟专用网,企业也能够实现Web应用,大不了我直接把服务器放置在Internet上,其他用户明文直接访问好了。有了一个SSL VPN设备,相当于在服务器之前作了一个代理,客户端要和服务器连接,就要通过这个代理的认证,而且从客户端到SSL VPN之间,数据是加密的。这样,internet上的黑客无法通过抓取数据包分析通讯信息。并且SSL VPN一般能够支持虚拟主机应用,这样,一个IP地址可以访问N个服务器。

SSL优点和缺点都很明显。
优点:
(1) 方便,实施SSL VPN只需要安装配置好中心网关即可。其余的客户端是免安装的,因此,实施工期很短,如果网络条件具备,连安装带调试,1-2天即可投入运营。
(2) 容易维护,SSL VPN维护起来也简单。出现问题,就维护网关就可以了。实在不行,换一台,如果有双机备份的话,备份机器启动就可以了。
(3) 安全,SSL 是一个安全协议,数据是全程加密传输的。另外,由于SSL网关隔离了内部服务器和客户端,只留下一个Web浏览接口,客户端的大多数病毒木马感染不到内部服务器。而IPsec VPN就不一样,实现的是IP级别的访问,远程网络和本地网络几乎没有区别。局域网能够传播的病毒,通过VPN一样能够传播。
当然,SSL VPN的缺点也是很明显的:
(1) 应用受限。一般都用于B/S模式。其他应用程序,象ftp/telnet等等有的SSL VPN能够支持。一般的C/S程序是不能直接应用的,因此SSL VPN市场始终没有火暴起来。这个缺点是致命的,所以现在很多SSL VPN也试图把IPsec 融入进去,通过客户端安装一个软件,虚拟一个VPN 的IP地址,实现PC-TO-Lan的IP级的连接。(2) 只能实现星形的PC-SSL-SERVERs的应用模式。星形、树型结构都不能支持。
(3) 价格比较高。目前比较知名的高端SSL 虚拟专用网,价格都在几十万以上。价格很低的国产VPN,在很多性能和应用可靠性上面,距离还比较大。
(4) 安全认证方式很单一,都是使用证书方式。,而且一般是单向认证。支持其它认证方式往往要进行长时间的二次开发。IPSec VPN认证方式更为灵活(口令、RADIUS、令牌等)。
(5) SSL VPN只能进行认证和加密,不能实施访问控制,建立隧道后,管理员对用户不能进行任何的限制。而集成防火墙的VPN则可以根据用户的身份和角色,在其访问内部资源(主机、数据库)进行访问控制和安全审计,这也是用户最为关心的一点。

为了克服以上的毛病,SSL开发商也作了很多工作,力图向IPSEC融合。兼容支持,而IPsec厂家也在后续的产品中间,陆续增加SSL的支持。我在公司下一代Ipsec产品规划的时候,已经把SSL的支持列入研究计划。

如果希望能够运行各种应用程序,并且建立LAN-to-Lan的VPN,IPsec还是主流的解决方案。我所在的公司(www.VPN.com.cn),同时有SSL和IPsec产品线,结果大型用户无一例外全部使用IPSEC产品。SSL的销售额,目前为止还不能养活配套的销售和工程师。

有很多种方法可以实现VPN。目前大家经常看到的有MPLS、IPSEC、L2tp/pp2p、SSL等类型。以下分别对MPLS的工作原理进行概述。

MPLS的工作原理及MPLS VPN技术的特点

MPLS VPN是一种基于MPLS技术的IP 虚拟专用网,是在网络路由和交换设备上应用MPLS(Multiprotocol Label Switching,多协议标记交换)技术,简化核心路由器的路由选择方式,利用结合传统路由技术的标记交换实现的IP虚拟专用网络(IP 虚拟专用网)。这种基于标记的IP路由选择方法,要求在整个交换网络中间所有的路由器都识别这个标签,运营商需要大笔投资建立全局的网络。而且跨越不同运营商之间,如果没有协调好,标签无法交换。

标记是一个能够被路由器识别理解的数据位,可以被用来代表逐跳式或者显式路由,并指明服务质量(QoS)、虚拟专网以及影响一种特定类型的流量(或一个特殊用户的流量)在网络上的传输方式等各类信息。MPLS可以提供每个IP数据包一个标记,将之与IP数据包封装于新的MPLS数据包,由此决定IP数据包的传输路径以及优先顺序,而与MPLS兼容的路由器会在将IP数据包按相应路径转发之前仅读取该MPLS数据包的包头标记,无须再去读取每个IP数据包中的IP地址位等信息。

IP包在边界路由器分配一个标记。自此,MPLS设备就会自始至终查看这些标记信息,将这些有标记的包交换至其目的地。由于路由处理减少,网络的等待时间也就随之缩短,而可伸缩性却有所增加。MPLS数据包的服务质量类型可以由MPLS边界路由器根据IP包的各种参数来确定,如IP的源地址、目的地址、端口号、TOS值等参数。

以大家比较好理解的物流系统作比喻。MPLS是在包裹上面打上一个特定的标签,要求整个物流系统的搬运环节都能够理解这个标签的意义,然后根据这个标签发送这个包裹。即使这个物流系统再繁忙,这类包裹的传输质量能够得到保证。但是这是有前提条件的,要求所有的搬运环节(搬运工)能够理解包裹的含义,例如: 1314信箱。并且能够理解加急、紧急等不同的字眼,不同的物流公司(对应不同的运营商),由于标签不统一,直接互通就很困难。

对于到达同一目的地的IP包,可根据其TOS值的要求来建立不同的转发路径,以达到其对传输质量的要求。同时,通过对特殊路由的管理,还能有效地解决网络中的负载均衡和拥塞问题。当网络中出现拥塞时,MPLS可实时建立新的转发路由来分散流量以缓解网络拥塞。

MPLS VPN的优点和缺点
MPLS VPN能够利用公用骨干网络强大的传输能力,为企业构建内部网络/Internet,同时能够满足用户对信息传输安全性、实时性、宽频带和方便性的需要。目前,在基于IP的网络中,MPLS具有很多优点,也有明显的缺点。
(1)降低了成本
MPLS简化了ATM与IP的集成技术,使L2和L3技术有效地结合起来,降低了成本,保护了用户的前期投资。 与专线相比,降低了成本。
不过这种降低成本是相对的,由于电信运营商建设网络的成本很高,因此MPLS的运营成本也不低。

(2)提高了资源利用率,提高了网络速度
由于在网内使用标签交换,用户各个点的局域网可以使用重复的IP地址,提高了IP资源利用率。 由于使用标签交换,缩短了每一跳过程中地址搜索的时间,减少了数据在网络传输中的时间,提高了网络速度。

(3)高可靠,业务综合能力强
采用MPLS作为通道机制实现透明报文传输,MPLS的LSP具有与帧中继和ATM VCC(Virtual Channel Connection,虚通道连接)类似的高可靠性。
网络能够提供数据、语音、视频相融合的能力。

(4)MPLS具有QoS保证
用户可以根据自己不同的业务需求,通过在CE侧的配置,来赋予不同的QoS等级。通过这种QoS技术,保证了网络的服务质量。

相对于其优点,MPLS的缺点也是明显的:
(1) 价格高
相对于使用IPsec通过Internet组网,MPLS的代价比较高。相当于一种准专线。

(2) 接入比较麻烦
并不是所有的地方都能够提供接入。

(3) 跨运营商不便,由于现在运营商之间还有很多协调工作没有完成。而且大家都知道,中国的电信巨头之间,向来以相互不合作出名。

从以上总结可以看出,MPLS适应比较高端的大型用户。

DDN和 虚拟专用网 技术比较
1、VPN 技术的优势

安全性
虚拟专用网:非常高,保护数据传输的完整性、保密性、不可抵赖性;安全控制在用户手里;
DDN:比较高,但是,安全是建立在对电信部门相信的基础上,对电信运营商,无任何安全可言。

可扩展性
虚拟专用网:基于 TCP/IP 技术,接入方式灵活,只要网络可达,就可以方便扩展。
DDN:以来当地运营商的支持,扩展很不方便。

投资成本
虚拟专用网:设备一次性投入,不需要支出每月的运营费用,长期看来大幅度节省支出。
DDN:专线费用很高,需要每月支付昂贵的专线租用费用,而且在初期要一次性投入路由器的费用

对移动用户的支持
虚拟专用网:能对 internet 上的内部移动用户安全接入,彻底消除地域差异。构造全球的虚拟专网。
DDN:只能联通专线拉到的网络,不支持离开局域网的内部用户接入专网。

带宽
虚拟专用网:使用各种廉价的宽带介入方式,如: ADSL , Ethernet 等,一般在 1~100M 。
DDN:由于价格昂贵,一般租用的带宽都比较窄(一般不超过 2M )。

升级
虚拟专用网:依赖于设备的升级,非常方便。
DDN:依赖于电信部门。

2、原理概述
随着网络,尤其是网络经济的发展,企业日益扩张,客户分布日益广泛,合作伙伴日益增多,这种情况促使了企业的效益日益增长,另一方面也越来越凸现传统企业网的功能缺陷:传统企业网基于固定物理地点的专线连接方式已难以适应现代企业的需求。于是企业对于自身的网络建设提出了更高的需求,主要表现在网络的灵活性、安全性、经济性、扩展性等方面。在这样的背景下, 虚拟专用网 以其独具特色的优势赢得了越来越多的企业的青睐,令企业可以较少地关注网络的运行与维护,而更多地致力于企业的商业目标的实现,但它与传统的专有网络,例如
数字数据网( Digital Data Network )是利用数字信道传输数据信号的数据传输网,它的传输媒介有光缆、数字微波、卫星信道以及用户端可用的普通电缆和双绞线。利用数字信道传输数据信号与传统的模拟信道相比,具有传输质量高、速度快、带宽利用率高等一系列优点 。
虚拟专用网( Virtual Private Network )被定义为通过一个公用网络(通常是 Internet )建立一个临时的、安全的连接,是一条穿过混乱的公用网络的安全、稳定的隧道。虚拟专用网是对企业内部网的扩展。虚拟专用网可以帮助远程用户、公司分支机构、商业伙伴及供应商同公司的内部网建立可信的安全连接,并保证数据的安全传输。虚拟专用网可用于不断增长的移动用户的全球因特网接入,以实现安全连接;可用于实现企业网站之间安全通信的虚拟专用线路,用于经济有效地连接到商业伙伴和用户的安全外联网虚拟专用网。

3、 虚拟专用网 协议简介
要使数据顺利地被封装、传送及解封装,通信协议是保证的核心。目前 虚拟专用网 隧道协议有 4 种:点到点隧道协议 PPTP 、第二层隧道协议 L2TP 、网络层隧道协议 IPSec 以及 SOCKS v5 ,它们在 OSI 七层模型中的位置如表所示。各协议工作在不同层次,无所谓谁更有优势。但我们应该注意,不同的网络环境适合不同的协议,在选择 虚拟专用网 产品时,应该注意选择。
1 .点到点隧道协议 —PPTP
PPTP 协议将控制包与数据包分开,控制包采用 TCP 控制,用于严格的状态查询及信令信息;数据包部分先封装在 PPP 协议中,然后封装到 GRE V2 协议中。目前, PPTP 协议基本已被淘汰,不再使用在 虚拟专用网 产品中。
2 .第二层隧道协议 —L2TP
L2TP 是国际标准隧道协议,它结合了 PPTP 协议以及第二层转发 L2F 协议的优点,能以隧道方式使 PPP 包通过各种网络协议,包括 ATM 、 SONET 和帧中继。但是 L2TP 没有任何加密措施,更多是和 IPSec 协议结合使用,提供隧道验证。
3 . IPSec 协议
IPSec 协议是一个范围广泛、开放的 虚拟专用网 安全协议,工作在 OSI 模型中的第三层 —— 网络层。它提供所有在网络层上的数据保护和透明的安全通信。 IPSec 协议可以设置成在两种模式下运行:一种是隧道模式,一种是传输模式。在隧道模式下, IPSec 把 IPv4 数据包封装在安全的 IP 帧中。传输模式是为了保护端到端的安全性,不会隐藏路由信息。 1999 年底, IETF 安全工作组完成了 IPSec 的扩展,在 IPSec 协议中加上了 ISAKMP 协议,其中还包括密钥分配协议 IKE 和 Oakley 。
OSI七层模型 安全技术 安全协议
应用层表示层 应用代理
会话层传输层 会话层代理 SOCKSv5/SSL
网络层数据链路层物理层 包过滤 IPSec
PPTP/L2F/L2TP


隧道协议在 OSI 七层模型中的位置

4、IPSec 的安全性描述
IPSec ( 1P Security )产生于 IPv6 的制定之中,用于提供 IP 层的安全性。由于所有支持 TCP / IP 协议的主机进行通信时,都要经过 IP 层的处理,所以提供了 IP 层的安全性就相当于为整个网络提供了安全通信的基础。鉴于 IPv4 的应用仍然很广泛,所以后来在 IPSec 的制定中也增添了对 IPv4 的支持。
最初的一组有关 IPSec 标准由 IETF 在 1995 年制定,但由于其中存在一些未解决的问题,从 1997 年开始 IETF 又开展了新一轮的 IPSec 的制定工作,截止至 1998 年 11 月份主要协议已经基本制定完成。不过这组新的协议仍然存在一些问题,预计在不久的将来 IETF 又会进行下一轮 IPSec 的修订工作。
5、IPSec 基本工作原理
IPSec 的工作原理(如下图所示)类似于包过滤防火墙,可以看作是对包过滤防火墙的一种扩展。当接收到一个 IP 数据包时,包过滤防火墙使用其头部在一个规则表中进行匹配。当找到一个相匹配的规则时,包过滤防火墙就按照该规则制定的方法对接收到的 IP 数据包进行处理。 这里的处理工作只有两种:丢弃或转发。

IPSec 通过查询 SPD ( Security P01icy Database 安全策略数据库)决定对接收到的 IP 数据包的处理。但是 IPSec 不同于包过滤防火墙的是,对 IP 数据包的处理方法除了丢弃,直接转发(绕过 IPSec )外,还有一种,即进行 IPSec 处理。正是这新增添的处理方法提供了比包过滤防火墙更进一步的网络安全性。
进行 IPSec 处理意味着对 IP 数据包进行加密和认证。包过滤防火墙只能控制来自或去往某个站点的 IP 数据包的通过,可以拒绝来自某个外部站点的 IP 数据包访问内部某些站点,.也可以拒绝某个内部站点方对某些外部网站的访问。但是包过滤防火墙不能保证自内部网络出去的数据包不被截取,也不能保证进入内部网络的数据包未经过篡改。只有在对 IP 数据包实施了加密和认证后,才能保证在外部网络传输的数据包的机密性,真实性,完整性,通过 Internet 进新安全的通信才成为可能。
IPSec 既可以只对 IP 数据包进行加密,或只进行认证,也可以同时实施二者。但无论是进行加密还是进行认证, IPSec 都有两种工作模式,一种是与其前一节提到的协议工作方式类似的隧道模式,另一种是传输模式。
传输模式,如图 2 所示,只对 IP 数据包的有效负载进行加密或认证。此时,继续使用以前的 IP 头部,只对 IP 头部的部分域进行修改,而 IPSec 协议头部插入到 IP 头部和传输层头部之间。
主机包头数据

主机包头 AH ESP 数据
隧道模式,如图 3 所示,对整个 IP 数据色进行加密或认证。此时,需要新产生一个 IP 头部, IPSec 头部被放在新产生的 IP 头部和以前的 IP 数据包之间,从而组成一个新的 IP 头部。
主机包头数据

安全网关IP包头 AH ESP主机 IP包头 数据
IPSec 中的三个主要协议
前面已经提到 IPSec 主要功能为加密和认证,为了进行加密和认证 IPSec 还需要有密钥的管理和交换的功能,以便为加密和认证提供所需要的密钥并对密钥的使用进行管理。以上三方面的工作分别由 AH , ESP 和 IKE 三个协议规定。为了介绍这三个协议,需要先引人一个非常重要的术语棗 SA ( Securlty Association 安全关联)。所谓安全关联是指安全服务与它服务的载体之间的一个“连接”。 AH 和 ESP 都需要使用 SA ,而 IKE 的主要功能就是 SA 的建立和维护。只要实现 AH 和 ESP 都必须提供对 SA 的支持。
通信双方如果要用 IPSec 建立一条安全的传输通路,需要事先协商好将要采用的安全策略,包括使用的加密算法、密钥、密钥的生存期等。当双方协商好使用的安全策略后,我们就说双方建立了一个 SA 。 SA 就是能向其上的数据传输提供某种 IPSec 安全保障的一个简单连接,可以由 AH 或 ESP 提供。当给定了一个 SA ,就确定了 IPSec 要执行的处理,如加密,认证等。 SA 可以进行两种方式的组合,分别为传输临近和嵌套隧道。

1 . ESP ( Encapsulating Secuity Fayload )
ESP 协议主要用来处理对 IP 数据包的加密,此外对认证也提供某种程度的支持。 ESP 是与具体的加密算法相独立的,几乎可以支持各种对称密钥加密算法,例如 DES , TripleDES , RC5 等。为了保证各种 IPSec 实现间的互操作性,目前 ESP 必须提供对 56 位 DES 算法的支持。
ESP 协议数据单元格式三个部分组成,除了头部、加密数据部分外,在实施认证时还包含一个可选尾部。头部有两个域:安全策略索引( SPl )和序列号( Sequencenumber )。使用 ESP 进行安全通信之前,通信双方需要先协商好一组将要采用的加密策略,包括使用的算法、密钥以及密钥的有效期等。“安全策略索引”使用来标识发送方是使用哪组加密策略来处理 IP 数据包的,当接收方看到了这个序号就知道了对收到的 IP 数据包应该如何处理。“序列号”用来区分使用同一组加密策略的不同数据包。加密数据部分除了包含原 IP 数据包的有效负载,填充域(用来保证加密数据部分满足块加密的长度要求)包含其余部分在传输时都是加密过的。其中“下一个头部( Next Header )”用来指出有效负载部分使用的协议,可能是传输层协议( TCP 或 UDP ),也可能还是 IPSec 协议( ESP 或 AH )。
通常, ESP 可以作为 IP 的有效负载进行传输,这 JFIP 的头 UKB 指出下广个协议是 ESP ,而非 TCP 和 UDP 。由于采用了这种封装形式,所以 ESP 可以使用旧有的网络进行传输。
前面已经提到用 IPSec 进行加密是可以有两种工作模式,意味着 ESP 协议有两种工作模式:传输模式( Transport Mode )和隧道模式( TunnelMode )。当 ESP 工作在传输模式时,采用当前的 IP 头部。而在隧道模式时,侍整个 IP 数据包进行加密作为 ESP 的有效负载,并在 ESP 头部前增添以网关地址为源地址的新的 IP 头部,此时可以起到 NAT 的作用。

2 . AH ( Authentication Header )
AH 只涉及到认证,不涉及到加密。 AH 虽然在功能上和 ESP 有些重复,但 AH 除了对可以对 IP 的有效负载进行认证外,还可以对 IP 头部实施认证。主要是处理数据对,可以对 IP 头部进行认证,而 ESP 的认证功能主要是面对 IP 的有效负载。为了提供最基本的功能并保证互操作性, AH 必须包含对 HMAC-SHA 和 HMAC- MD5 ( HMAC 是一种 SHA 和 MD5 都支持的对称式认证系统)的支持。
AH 既可以单独使用,也可在隧道模式下,或和 ESP 联用。

3 . IKE ( Internet Key Exchange )
IKE 协议主要是对密钥交换进行管理,它主要包括三个功能:
? 对使用的协议、加密算法和密钥进行协商。
? 方便的密钥交换机制(这可能需要周期性的进行)。
? 跟踪对以上这些约定的实施。
4、 DDN 和 虚拟专用网 安全性比较
数据是否加密传送 不加密 经过 3DES/AES/Blowfish/ 第三方算法 / 加密卡等加密算法对数据进行加密
设备之间是否进行身份认证 不进行身份认证 设备之间经过预定义的密钥、 RSA 等加密算法进行身份认证
数据包是否进行认证 不进行封包认证 通过 MD5 、 SHA 等加密算法进行封包认证,确保数据包中途没被修改
一般在 DDN 线路中,都是采用专用线路,没有与公众线路连接在一起,所以在很大程度上与 虚拟专用网 相比,容易导致安全上的误解。
从实际使用上看,由于 DDN 线路的专用性,所以也大大减少了其被攻击破坏的可能性。
但是另外一方面,从原理上分析,数据在 DDN 网络上面传输其实是不安全的,数据传送的过程中可能会被人窃取、修改等;数据在 虚拟专用网 虚拟专网中传输的过程是安全的,通过加密、身份认证、封包认证等过程保证数据包在传送的过程中不被窃取、删除和修改。

5、 总结
其实 DDN 是专有网络最传统的方式。以 Cisco 为代表的产品都是这样去解决。在欧美发达国家,由于固定 IP 地址的费用比较低, DDN 方式的专用网络很容易实现,而在亚洲许多国家, IP 地址比较匮乏,从而使得 DDN 固定 IP 的费用非常昂贵。
客观的说, DDN 的专有网络无疑是稳定的,虽然配置要求专业人员,也能形成网状的连接。但是从购买设备、安装调试和后期的维护的费用都是巨大的,而且还有每月高昂的通讯费用,这都将在国内制约着 DDN 专有网络的发展。
随着 IP 技术的发展和国内骨干网络带宽的不断提高, 虚拟专用网 越来越能满足用户安全性、高效性和灵活性等要求。可以相信,在未来几年内, 虚拟专用网 架构的企业信息化网络是主流方式。