1.引言1998年被称作“电为具有世界范围连通性的“Intemet来开展商务活动,,还存在一些亟待解决的问问题在有关厂商和ISP的努一条有效途径。子商务年”,而1999年则将是“第四媒体”,已经成为一个具有是目前各个企业讨论的热门话题题,其中最重要的两个问题是服力下正在逐步得以解决,而VPN政府上网年”。的确,Intemet作无限商机的场所。如何利用。但将Internet实际运用到商业中务质量问题和安全问题。服务质量技术的产生为解决安全问题提供了所谓VPN(VirtualP网络通过公用骨干网联接而息在Internet上传输的安全,,以保证了信息在传输中线来说,费用极为低廉,所信息成为可能。rivateNetwork,虚拟私有网络成逻辑上的虚拟子网,这里的公性,VPN技术采用了认证、存取不被偷看、篡改、复制。由于使以VPN的出现使企业通过Interne)是指将物理上分布在不同地点的用网主要指Interet。为了保障信控制、机密性、数据完整性等措施用Internet进行传输相对于租用专t既安全又经济地传输私有的机密VPN技术除了可以节省费用外,还具有其它特点:●伸缩性椂能够随着网络的扩张,很改已有网络软件配置,在新增客户机或网工作。灵活的加以扩展。当增加新的用户或子网时,只需修关上安装相应软件并接人Internet后,新的VPN即可●灵活性棗除了能够方便地将新的子,VPN可以使企业随时安全地将信息存取网扩充到企业的网络外,由于Intemet的全球连通性到全球的商贸伙伴和顾客。●易于管理棗用专线将以几何级数增长。而使用VP即可,不需要进行各个线路企业的各个子网连接起来时,随N时Internet的作用类似一个HUB的管理。着子网数量的增加,需要的专线数,只需要将各个子网接入InternetVPN既可以用于构建企业的Intra热的兴起,VPN应用必将越来越广泛。据I的两亿美元增长到2001年时的119亿美元net,也可以用于构建Extranet。随着全球电子商务nfoneticsReseach的预测,VPN的市场分额将从今天,其中VPN产品的销售收入就要占其中的十分之一。2.基于IPSec规范的VPN技术1)IPSec协议简介摘要:本文描述了实现方法和几种典型应用方VPN技术的基本原理以及IPSec规案。最后,作者对VPN技术的推范,在此基础上介绍了VPN技术的广与应用提出了自己的看法。IPSec(1PSecuritTCP/IP协议的主机进行通整个网络提供了安全通信的增添了对IPv4的支持。y)产生于IPv6的制定之中,用于信时,都要经过IP层的处理,所基础。鉴于IPv4的应用仍然很广提供IP层的安全性。由于所有支持以提供了IP层的安全性就相当于为泛,所以后来在IPSec的制定中也最初的一组有关IP,从1997年开始IETF又开展基本制定完成。不过这组新IPSec的修订工作。Sec标准由IETF在1995年制定,了新一轮的IPSec的制定工作,的协议仍然存在一些问题,预计但由于其中存在一些未解决的问题截止至1998年11月份主要协议已经在不久的将来IETF又会进行下一轮2)IPSec基本工作原理IPSec的工作原理(种扩展。当接收到一个IP数到一个相匹配的规则时,包。这里的处理工作只有两如图l所示)类似于包过滤防火墙据包时,包过滤防火墙使用其头过滤防火墙就按照该规则制定的种:,可以看作是对包过滤防火墙的一部在一个规则表中进行匹配。当找方法对接收到的IP数据包进行处理丢弃或转发。图1IPSec工作原理示意图IPSec通过查询SPD(SecurityP0据包的处理。但是IPSec不同于包过滤防发(绕过IPSec)外,还有一种,即进行IPS火墙更进一步的网络安全性。1icyDatabase安全策略数据库)决定对接收到的IP数火墙的是,对IP数据包的处理方法除了丢弃,直接转ec处理。正是这新增添的处理方法提供了比包过滤防进行IPSec处理意味着对IP数据往某个站点的IP数据包的通过,可以拒绝也可以拒绝某个内部站点方对某些外部网去的数据包不被截取,也不能保证进入内了加密和认证后,才能保证在外部网络传Internet进新安全的通信才成为可能。包进行加密和认证。包过滤防火墙只能控制来自或去来自某个外部站点的IP数据包访问内部某些站点,.站的访问。但是包过滤防火墙不能保证自内部网络出部网络的数据包未经过篡改。只有在对IP数据包实施输的数据包的机密性,真实性,完整性,通过IPSec既可以只对I是进行加密还是进行认证,类似的隧道模式,另一种是P数据包进行加密,或只进行认IPSec都有两种工作模式,一种传输模式。证,也可以同时实施二者。但无论是与其前一节提到的协议工作方式传输模式,如图2以前的IP头部,只对IP头部之间。所示,只对IP数据包的有效负载的部分域进行修改,而IPSec协进行加密或认证。此时,继续使用议头部插入到IP头部和传输层头部图2传输模式示意图隧道模式,如图3所示,对整个I头部,IPSec头部被放在新产生的IP头部P数据色进行加密或认证。此时,需要新产生一个IP和以前的IP数据包之间,从而组成一个新的IP头部。图3隧道模式示意图3)IPSec中的三个主要协议前面已经提到IPSe钥的管理和交换的功能,以三方面的工作分别由AH,ES重要的术语棗SA(Securlty体之间的一个“连接”。AH实现AH和ESP都必须提供对Sc主要功能为加密和认证,为了便为加密和认证提供所需要的密P和IKE三个协议规定。为了介绍Association安全关联)。所谓安和ESP都需要使用SA,而IKE的主A的支持。进行加密和认证IPSec还需要有密钥并对密钥的使用进行管理。以上这三个协议,需要先引人一个非常全关联是指安全服务与它服务的载要功能就是SA的建立和维护。只要通信双方如果要全策略,包括使用的加密算们就说双方建立了一个SA。接,可以由AH或ESP提供。。SA可以进行两种方式的组用IPSec建立一条安全的传输通法、密钥、密钥的生存期等。当SA就是能向其上的数据传输提供当给定了一个SA,就确定了IPSe合,分别为传输临近和嵌套隧道路,需要事先协商好将要采用的安双方协商好使用的安全策略后,我某种IPSec安全保障的一个简单连c要执行的处理,如加密,认证等。1)ESP(EncapsulatingSecuityFayload)ESP协议主要用来处理对IP数据是与具体的加密算法相独立的,几乎可以RC5等。为了保证各种IPSec实现间的互操包的加密,此外对认证也提供某种程度的支持。ESP支持各种对称密钥加密算法,例如DES,TripleDES,作性,目前ESP必须提供对56位DES算法的支持。ESP协议数据单元包含一个可选尾部。头部有ESP进行安全通信之前,通密钥以及密钥的有效期等。数据包的,当接收方看到了来区分使用同一组加密策略充域(用来保证加密数据部其中“下一个头部(NextHe格式三个部分组成,除了头部、两个域:安全策略索引(SPl)和信双方需要先协商好一组将要采“安全策略索引”使用来标识发这个序号就知道了对收到的IP数的不同数据包。加密数据部分除分满足块加密的长度要求)包含ader)”用来指出有效负载部分加密数据部分外,在实施认证时还序列号(Sequencenumber)。使用用的加密策略,包括使用的算法、送方是使用哪组加密策略来处理IP据包应该如何处理。“序列号”用了包含原IP数据包的有效负载,填其余部分在传输时都是加密过的。(TCP或UDP),也可能还是IPSec协议(ESP或AH)。使用的协议,可能是传输层协议通常,ESP可以作为IP的有效负而非TCP和UDP。由于采用了这种封装形式载进行传输,这JFIP的头UKB指出下广个协议是ESP,,所以ESP可以使用旧有的网络进行传输。前面已经提到用IP模式:传输模式(Transport当前的IP头部。而在隧道模前增添以网关地址为源地址Sec进行加密是可以有两种工作Mode)和隧道模式(TunnelMode)式时,侍整个IP数据包进行加密的新的IP头部,此时可以起到NA模式,意味着ESP协议有两种工作。当ESP工作在传输模式时,采用作为ESP的有效负载,并在ESP头部T的作用。2)AH(AuthenticationHeader)AH只涉及到认证,不涉及到加密。AH虽然在功能上和ESP有些重复,但AH除了对可以对IP的有效负载进行认证外,还可以对IP头部实施认证。主要是处理数据对,可以对IP头部进行认证,而ESP的认证功能主要是面对IP的有效负载。为了提供最基本的功能并保证互操作性,AH必须包含对HMAC?/FONTSHA和HMAC?/FONTMD5(HMAC是一种SHA和MD5都支持的对称式认证系统)的支持。AH既可以单独使用,也可在隧道模式下,或和ESP联用。3)IKE(InternetKeyExchange)IKE协议主要是对密钥交换进行管理,它主要包括三个功能:●对使用的协议、加密算法和密钥进行协商。●方便的密钥交换机制(这可能需要周期性的进行)。●跟踪对以上这些约定的实施。3.VPN系统的设计如图4所示,VPN的密/解密模块、数据分组封实现包含管理模块、密钥分配和装/分解模块和加密函数库几部生成模块、身份认证模块、数据加分组成。管理模块负责整个系统的配置和管理据包进行加密/解密。由于对IP数据包进个安全网关之间所有的IP数据包提供VPN定对哪些IP数据包进行加密。Intranet内VPN系统对自已的IP数据包提供加密服务。由管理模块来决定采取何种传输模式,对哪些IP数行加密需要消耗系统资源,增大网络延迟,因此对两服务是不现实的。网络管理员可以通过管理模块来指部用户也可以通过Telnet协议传送的专用命令,指定。密钥管理模块负责完成随机生成的方式。各安全网安全通信方式完成密钥在各以IP地址为关键字的快速查身份认证和数据加密所需的密钥关之间密钥的分配采取手工分配安全网关之间的传送。各安全网询获取。生成和分配。其中密钥的生成采取的方式,通过非网络传输的其它关的密钥存贮在密数据库中,支持身份认证模块对IP数据包完成数字签名的运算。整个数字签名的过程如图5所示:图5数字签名首先,发送方对数据进行哈希名Signature={h}key。发送方将签名据后,首先用密钥k对签名进行解密得到数据是完整的。数字签名在保证数据完整密钥的情况之下,才能对数据进行正确的运算h=H(m),然后用通信密钥k对h进行加密得到签附在明文之后,一起传送给接收方。接收方收到数h,并将其与H(m)进行比较,如果二者一致,则表明性的同时,也起到了身份认证的作用,因为只有在有签名。数据加密/解密模块完成对IP数据包DES算法。前者在用软件方式实现时可以可以采用专用硬件的方式实现数据的加密随着当前计算机运算能力的提高,DES算网络数据,数据加密/解密模块可以提供T的加密和解密操作。可选的加密算法有IDEA算法和获得较快的加密速度。为了进一步提高系统效率,和解密,这时采用DES算法能得到较快的加密速度。法的安全性开始受到挑战,对于安全性要求更高的riPleDES加密服务。数据分组的封装/分解数据分组时,数据分组封装模块实现对IP数据分组进行安全/分解模块为IP数据分组附加上封装或分解。当从安全网关发送IP身份认证头AH和安全数分解模块对AH和ESP进行协据封装头ESP。当安全网关接收议分析,并根据包头信息进行身到IP数据分组时,数据分组封装/份验证和数据解密。加密函数库为上述模块提供统通过一个统一的函数接口界面与上述模块一的加密服务。加密函数库设计的一条基本原则是进行通信。这样可以根据实际的需要,在挂接加密算法和加密强度不同的函数库时,其它模块不需作出改动。4.几种典型的VPN应用方案VPN的应用有两种基本类型:拨号式VPN与专用式VPN。拨号VPN为移动用户与远程办公行的形式。拨号VPN业务也称为“公司拨两种:在用户PC机上或在服务提供商的网者提供远程内部网访问,这种形式的VPN是当前最流号外包”方式。按照隧道建立的场所,拨号VPN分为络访