基于PKI的IPSec_VPN网关间通信研究和实现

基于PKI的IPSec_VPN网关间通信研究和实现

ID:36805353

大小:1.85 MB

页数:66页

时间:2019-05-15

上传者:U-145848
基于PKI的IPSec_VPN网关间通信研究和实现_第1页
基于PKI的IPSec_VPN网关间通信研究和实现_第2页
基于PKI的IPSec_VPN网关间通信研究和实现_第3页
基于PKI的IPSec_VPN网关间通信研究和实现_第4页
基于PKI的IPSec_VPN网关间通信研究和实现_第5页
资源描述:

《基于PKI的IPSec_VPN网关间通信研究和实现》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

中山大学硕士学位论文基于PKI的IPSec_VPN网关间通信研究和实现姓名:严石申请学位级别:硕士专业:检测技术与自动化装置指导教师:吕志民20060508 基于PKI的IPSec-VPN网关间通信研究和实现专业:检测技术与自动化装置硕士研究生:严石指导教师:吕志民教授摘要随着世界经济全球化的高速发展,计算机网络技术的进步也是日新月异。传统的以TCP/IP协议族为支撑的网络互联技术虽然成功地解决了异型计算机之间、异构网络之间的互联互通问题,但它的设计初衷及其使用环境基本未考虑此互联技术造成的安全隐患和安全漏洞。随着跨国公司业务的扩展,总部和异地分公司间通信,公司业务人员的移动办公:国家机关,各地政府部门问的安全通信等等安全网络应用的需求迫切。但IP数据包本质上是不安全的,IP头校验和仅仅对IP头计算,并不包括数据域:基于口令和IP地址的身份认证已经不能满足各种级别用户的安全需求。虚拟专用网(VPN)技术的产生和发展为以上问题的解决带来希望。但是与VPN相关的协议众多,功能和安全机制各异,因此应用效果参差不齐。本文的出发点正是为了完善VPN的身份认证功能,提高VPN通信过程中IP包的安全系数。因此,本文提出了在VPN中应用公钥基础设施PKI的解决方案,实现基于数字证书的身份认证;实施IP安全标准IPSec,使用高强度的密码认证和加密算法来保护IP通信的完整性和保密性。本文主要以IP安全协议体系(IPSec)为基础,对VPN这一目前广泛应用的信息安全技术及其实现方案进行深入的研究。论文依次阐述了安全问题的现状、分类和对策;IPSec协议体系的组成和关键技术;VPN技术的定义、分类和协议基础;PKI原理和相关组件。然后,详细描述了基于LirtHX平台上利用Netfilter机制构造应用IPSec的VPN网关的方法,包括系统构成,IPSec—VPN网关的安装和配置,并利用Windows2003Sever平台实现在线申请数字证书和基于数字证书的网关身份认证。最后对该IPSec—VPN网关进行了测试,包括功能测试和应用模式测试,验证目标系统的安全性能和通信效率。关键词:IPSec,VPN,PKI,数字证书,安全网关 ResearchandImplementationofCommunicationinIPSec—VPNGatewayBasedonPKISpecialty:DetectionTechniqueandAutomaticEquipmentName:YanShiSupervisor:Prof.L6ZhiminABSTRACTWiththeswiftdevelopmentofeconomyglobalization,technologyinnovationoncomputernetworkoccurscorrespondingly.AlthoughthenetworktechnologybasedonTCP/IPsuccessfullysolvedtheproblemofinterconnectionofdifferentmodelsofcomputeranddifferentnetworkstructures,whenitwasoriginaldesignedandintheapplicationenvironment,securityproblemsandbugscausedbythetechnologyitselfwerenottakenintoconsideration.Asthebusinessofmultinationalcompanyexpands,communicationbetweenheadquartersandbranches,mobileaccessofemployeesonbusiness,commtmicationbetweengovernmentsofdifferentdistricts,alloftheseneedsecurecommunicationurgently.ButIPpackagesareinsecureessentially,becausethechecksum.ofIPheaderisonlytbritselfanddatadomainisexcluded.IdentityauthenticationbasedonpasswordandIPaddresscouldnotmeetthesecurityrequirementofdifferentsubscribers.Asaresult,VirtualPrivateNetworkTechnologyisdevelopedandappliedcorrespondingly.ButthenumerousVPNrelatedprotocolsmakethesecureapplicationnotpreferable,SothemainintentionofthisthesisistoimprovethefunctionofidentityauthenticationandsecurityofIPpackagesinVPN.Inthisthesis,theapplicationofPKIinVPNisputforwardtOrealizeidentityauthenticationbasedondigitalcertificate,andtheimplementationofIPSeciscarriedoutbasedonhighstrengthencryptionalgorithmandauthentication,TheintegrityandconfidentialityofIPpackagesaresecuredinthissolution.ThisthesisismainlybasedonIPSecprotocolsystem,andsecuritytechnologiesandapplicationsolutionarethoroughlystudied.Then,inthethesis,researchonVPNcoverssecuritystatusandproblemclassification,strategiesofsolution,IPSecprotocolsystemandkeytechnologies,definition,categoryandprotocoltbundationofVPN,principlesandcomponentofPKI.Theninthethesis,asolutionforIPSec—VPNgatewaybasedonLinuxoperatingsystemwithNetfiltermechanismisdetailedly presented,includingsystemstructure,gatewayinstallationandconfiguration,aswellasrealizationofonlineapplyingdigitalcertificateandidentityauthenticationbasedoncertificateofIPSec—VPNgateway.Attheendofthethesis,experimentsarecarriedouttotesttheIPSec—VPNgateway.Targetsystem’sfunctionsandapplicationmodesaretestedandtheresultsreflectitsqualityofsecurityandefficiencyofcommunication.Keyword:IPSec,VPN,PKI,DigitalCertificate,SecureGatewayV 基于PKI的IPSec—VPN网关问通信研究和实现第一章引言1.1课题的意义当今基于TCP/IP协议实现互通和共享网络资源已经不是传统的局域网、城域网和广域网的概念了,虽然原来的局域网、城域网和广域网技术的经典部分仍然可用,但整个技术体系和运行协议上己经发生了根本性变化。随着Intemet的蓬勃发展,企业和生意伙伴、供应商之间的交流越来越多,Intemet简化了信息交换途径,增加了信息交换的速度,这样的交流不仅带来网络复杂性,而且带来了管理和安全上的问题。开放性互联的以TCP/IP协议族为支撑的网络互联技术虽然成功地解决了异型计算机之间、异构网络之间的互联互通问题,但它的设计初衷及其使用环境基本未考虑此互联技术造成的安全隐患和安全漏洞。基于Intemet的信息交流面临非善意的信息威胁和安全隐患⋯。目前企业内部广域网连接一般都采用向电信运营商租用专线的方法,实现企业内部的数据通信,形成自己的内部基础网络。对于远程访问和移动用户的访问,通常做法是在企业内部创建庞大的MODEMPOOL,远程访问者需拨打长途电话访问企业内部网。企业向电信运营商租用的DDN,FR或者ATM来连接企业的分支机构。由于长期以来形成的观点,大家认为从电信运营商租用的是完全属于自己使用的实专线(如DDN)或虚拟专线(如FR和ATM),用户对所谓的“专线”的安全性,即使是对数据传输安全性要求极高的政府部门和金融行业,也没有任何疑问。因此,用户在传递数据时并没有考虑任何安全措施。但我们应该清楚的认识到,企业的整个基础网络架构的权限都掌握在别人(电信运营商)手里。而且专线两端的终端设备价格昂贵,线路的租用费用高,管理也需要一定专业水平人员,这些都增加了用户的运营成本。DDN,FR,ATM也不能像Internet那样,可以随时和世界上任何一个使用Internet网络的用户连接。与此同时,部分企业随着自身的发展壮大和跨国化,企业分支机构越来越多,相互间网络基础设施互不兼容也越来越普遍。因此,企业的信息部门为连接分支机构,管理移动办公的业务人员的拨号接受企业内部网等网络安全问题感到日益棘手。以上的用户需求正是虚拟专业网VPN技术快速发展的主要原因。VPN技术是建筑再在Intemet上的可自行管理的专用网络。VPN提供了可靠、安全的Intemet访问通道,为企业的进一步发展提供了可靠的技术保证。VPN能提供专用线路类型服务,企业可以采用VPN在Intemet建立自己的私有网络,甚至不需要建立自己的广域网维护系统,而把这一繁重的工作交由电信运营商来完成。 中山大学硕:仁学位论文但是【P数据包本质上是不安全的,【P头校验和仅仅对IP头计算,并不包括数据域;伪造IP地址,篡改IP数据包的内容,监测传输中的IP包等等黑客行为严重破坏网络安全【2】【⋯。IP安全协议(IPSec)提供网络层安全服务,它允许通信双方进行身份认证,并建立会话密钥,改会话密钥用于保护该会话过程的通信数据,任何上层协议如TCP,UDP,ICMP和IGMP都能使用这些服务。运用IPSec协议与VPN系统中,把IP数据包分割成带有报头和密码学保护的记录,为数据通信提供高强度的加密,保护了IP报文的完整性和机密性。网络数据监听,离线密码分析,IP地址欺骗使得基于口令和IP地址的身份认证已经不能满足各种级别用户身份认证的安全需求。在IPSec—VPN系统中通信双方的身份认证问题没有彻底解决。公钥基础设施PKI咀密码学作为理论基础,提供身份鉴别、机密性、完整性和不可否认性服务,成为网络应用中信任和授权的重要安全平台。PKI以用户公钥证书为载体,记录用户的身份信息:并且,以一系列的协议规范为标准,为用户签发标准的X.509证书,以供用户在正常的网络活动中使用,从而保证用户网络活动的合法性和安全性,这恰好弥补了IPSec在身份认证方面的不足。目前的应用中,客户终端很少有拥有自己的证书,但随着PKI技术的日益成熟和应用范围的增长,考虑到VPN实现时的很多安全问题,以X.509证书作为身份认证的方案,将PKI技术应用到IPSec—VPN中有着重要实践意义。结合数字证书的身份认证方案,应用IPSec跚议到VPN网关后,能够充分发挥VPN相对于专线的技术优势口J:降低成本一一VPN可以显著的降低成本,通过连接到Intemet,实际上只需要网络安全简化网络容易扩展支付本地通讯费,却达到了长途通讯的效果。VPN主要可以减少以下的费用:移动用户的远程通讯费。只需要连接到Internet,不再需要支付昂贵的长途电话费。租用线路的成本。相对于专线,VPN连接的成本只相当于专线的40%.60%.主要设备的成本。采用VPN以后,不再需要昂贵的专线设备。VPN具有高度的安全性,以多种方式增强了网络的智能和安全性。通过采用VPN连接技术代替专线连接,远程用户通过Internet与企业内部建立VPN连接,可以大大简化专线连接的配置管理任务。企业想扩大网络VPN的容量和覆盖范围很容易,不再需要每次都另外搭建专线。与合作伙伴的互连也很方便,在过去,需要双方协商如何在双方之间租用何种专线。有了VPN,这种协商 基于PKI的IPSec—VPN网关问通信研究和实现非常简单。完全控制一一借助VPN,企业利用电信运营商的设施和服务,同时又完全掌握自己网络的控制权。支持新应用一一许多专用网对新应用准备不足,VPN则可以支持各种高级应用。如IP电话、IP传真、各种协议,如[Pv6,MPLS,SNMPv3等。1.2课题的研究背景和国内外现状1.2.1课题的研究背景互联网的进一步发展需要有效的网络安全来保驾护航。我们知道,随着Internet的“爆炸”式增长,Internet应用范围的不断扩大,人们对它的依赖程度也越来越高,同时人们对网络安全的需求也越来越强烈。但是以TCP/IP协议为基础的Internet网络,在发展初期,限于当时的客观环境,只注意到了网络的连接性、开放性和兼容性,而没有很好地考虑网络的安全性。作为网络层的安全标准,IPSec一经提出,就引起了计算机网络界的注意,世界上大多数的计算机公司都宣布支持这个标准,并且不断推出自己的产品。但是由于标准提出的时间很短,尽管产品种类很多,真正合格的产品却很少。国外对IPSee的研究起步较早,已有了一些基于IPSec的试验性VPN,但大部是在专用平台下实现,与操作系统绑定得都比较紧密,有的甚至就是一个黑盒子(如CISC0)。关于不同的IPSec实现问的互操作性,目前还没有令人满意的测试报告”1。1.2.2课题研究的国内外现状美国、欧洲各国以及韩国、日本是世界上较早涉足信息安全技术及产业的国家,他们大多数对PKI及其相关技术、产业用法律予以固化。其中韩国在1998年正式通过数字签名法,1999年7月这一法律开始正式实施;德国立法时削更早,是在1997年。美国在1998年立法,N2000年6N30日,美国总统克林顿又签署了美国的《全球及全国商业电子签名法》,这是美国历史上第一部联邦级的电子签名法。这一法律的签署,极大地推动了电子签名、数字证书的应用。在亚洲各国,PKI的发展并不平衡、不过很多国家己经意识到它的重要性。为了缩小各国技术及制度上的差异,推动PKI等技术的标准化,并充实法律制度,2000年由日本、韩国、印尼等国家发起设立了“亚洲PKI论坛”。该论坛将在今后五至十年之内开展以下工作:一、PKI标准化;二、对在引进信息技术方面落后的国家予以技术上的支援:三、支持制订电子签名法以充实亚洲各国的法律”1。与此同时,论坛也考虑与美国信息技术业创设的美国PKI论坛携手,朝世界性的标准化迈进。PKI的概念是近几年才提出来的,尽管在概念提出之前许多公司并 中山大学硕=E学位论文没有直接销售PKI终极解决产品,但是PK32的技术早己经被用于他们的产品当中,例如LotusNotes从1989年就开始用PKI对用户进行认证,PGP从1991年就开始对用户进行认证。目前,PKI基础理论研究己经比较完备,各个厂商己将他们的产品广泛地应用于需要数字证书的认证中,例如:Amer[canExpressBluecreditcard和香港邮政采用lBaltimoreTechnologies的PKI技术,美国邮政采用TCylink的IBIP(1nformationBasedIndiciaProgram),加拿大联邦采用TEntrust的技术,TeleCashGmbh采用了Xcert的PKI产品。目前,国际上能够开发PKI产品的公司有很多,比较有影响力的是Baltimore,Verisign和Entrust等。已存在的根cA有:卑VeriSignhierarchy(4classes)木CommerceNet}USPostalServiceCA}RSACAs(numerous)女AmericanBankingAssociatiOn掌Keywitness木Dig【talSignatureTrustCompany{BelSign女CanadaPost}ThawteCA国外的知名PKI产品有:$VeriSignOnsite{.CertCoOistributedMulti$Entrust/Server—StepSigning木EntrustWebCA.Entrust/Direct木TradeWaveTradeAuthority木MicrosoftCertificateServer丰GTECybertrust牢NetscapeCertificateServer半MotorolaCipherNetSystem木EntegrityWebAssure丰XcertSoftwareSentry术PGPCertificateServer术galtimoreTechnologiesUniCert国外的知名PKIJ抿务提供商有:女VeriSignOnSite十Entrust“in—sourcing”%GTE。”V[rtualCA“诛Tradewave“in—sourcing‘木IBM”WorldRegistry”丰”Insourcing”growinginpopularity}DigitalSignatureTrust国内的比较知名的PKI厂商有:$东大阿尔派$吉大正元$天威诫信$诺方信业国内的数字证书服务中心有:$CTCA中国电信认证中心4 摹于PKI的[PSecVPN网关问通信研究和实现$CFCA中国金融认证中心}上海CA{北京CA$北京国福安电子商务安全认证中一巴1.3课题完成的目标本文首先分析了现今形势下基于TCP/IP阱议网络的安全性缺陷和人们对网安全服务的需求分析。根据安全需求分析的结果,以IP安全协议体系(IPSec)为基础,对VPN这一目前广泛应用的信息安全技术及其实现方案进行深入的研究,本课题的目标就是建立一个基于PKI的IPSec—VPN网关系统,其中认证机构cA需要具备接受在线申请数字证书和基于数字证书的网关身份认证。VPN网关具备IPSec处理的功能,它通过对IP数据包进行加密和认证来保障IP数据包的机密性、完整性、真实性,从而保证整个IP网络传输的安全,防止机密信息的泄漏和抗击网络黑客的攻击。以及[PSecVPN网关能够实现在IKE协商过程中使用X.509证书进行身份认证的功能,从而实现在IPSec—VPN网关中应用PKI技术,增强IPSec—VPN网关的身份认证功能。最后进行系统测试,在两个局域网间建立安全的IPSec—VPN网关,采用各种通信的方案进行试验,得到量化的通信效率及安全指标参数。1.4论文的结构概况第一章介绍了课题的意义、研究现状和课题的目标第二章主要对IPSec协议体系和VPN隧道技术作系统性的分析和介绍;第三章介绍了PKI体系结构和相关的标准、协议、法规和常用的算法:第四章描述了本人提出的基于Linux平台上利用NetFnter机制构造应用IPSec的VPN网关的方法,包括系统构成,IPSec—VPN网关的安装和配置,并利用Windows2003Sever平台实现在线申请数字证书和基于数字证书的网关身份认证。第五章中详细介绍了对该IPSec—VPN网关进行了测试,包括功能测试和应用模式测试,验证目标系统的安全性能和通信效率,并指出本系统的缺点和不足以及下一步的研究工作。 基于PKI的[PSee—VPN劂关问通信研究和实现第二章IPsec-VPN协议体系2.1IPsec协议体系结构IPSec(IPSecurity)是一个网络层安全协议和算法的框架标准,如下图所示,它使得数据在网络层安全地传输。[8I㈣IPSec协议体系由IETF委员会制定.它提供了一个开放系统的安全框架,向IPv4/IPv6提供互操作的高质量的基于密码的安全性。其服务包括访问控制、无连接的完整性、数据源认证、抗重播保护、机密性和有限传输流机密性。IPSec框架IPSec协议加密图2.1IPsec框架它们主要由下面两个协议来实现:AH(AuthenticationHeader,认证头)协议,ESP(EncapsulatingSecurityPayload,封装安全负载)协议。IPSec根据系统所选择的安全协议提供【P层上的安全服务,决定服务所需的算法和密钥,并在主机之间、安全网关之问或主机与安全网关之问建立起一条或多条安全连接。Ipsec协议体系包括:AH、ESP,IKE(Internet密钥交换)、ISAKMP/Oakley等。IPsec发展规划定义了IPsec各组件之间的交互方式,如下图所示【¨Ⅱ121[b1:]日]日曰固曰曰同同 中山大学硕二b学位沦文图2.2IPsec各组件交互方式图2.2IPsec协议体系工作原理IPsec为IP层提供安全服务,它使系统能按需选择需要的安全协议,决定服务所使用的算法及放置服务所需密钥到相应位置。IPsec用来保护一条或多条主机与主机间、安全网关与安全网关间、安全网关与主机间的路径。它在协议栈中的通信平台模式如下图:数据链路层图2-3IPSec通信平台模式图 基于PKI的IPSecVPN网关间通信瓦叶究和实现IPSec的工作原理如下图所示,当IP模块收到一个IP分组时,通过查询安全策略数据库SPDB(SecurityPolicyDatabase)来决定对收到的这个【P数据分组的处理:丢弃IPsec、转发或IPSec处理,通过查询安全关联数据库SADB(SecurityAssociationDatabase)来获取安全关联所需的参数。图2.4[PSec的工作原理图IPsec协议实现可以工作在两种模式下:传输模式和隧道模式。主机上的IPsec可以工作在两种模式下,路由器上的IPsec只能工作在隧道模式下。在两种模式下,IPsec协议保护的对象不同。在传输模式下,受保护的对象包括传输层的头部和数据部分,IP头部并不受保护,只能用在通信的双方都做主机用途的情况下。在隧道模式下,受保护的对象是内部的整个IP数据包,只要通信的一方是做路由器用途或者转发数据报时,IPsec就一定要工作在隧道模式下。对于两种工作模式,后面会有更具体的介绍。2.3IPsec的关键技术:2.3.1IKE”州IKE在RFC2409中定义,可以将其想象成IPsec的维护协议。它负责各种IPsec选项的协商、认证通信的每~端(应用时包括公钥交换),以及管理IPsec隧道的会话密钥。IKE包括Oakley(RFC2412)、Intemet安全连接和密钥管理协议(ISAKMP)(RFC2407)、安全密钥交换机制(SKEME)等部分。SKEME用于认证IKESA的两端,Oakley用户从会话中得到加密密钥,[SAKMP定义交换 中山大学硕十学位论义的消息格式。IKE使用用户数据报协议(UDP)端口500进行通信。2-3.2AHplRFC2402中详细描述了AH,它是用于IPsec的一个主要认证选项。IPsec通过AH和ESP协议来提供安全保护,两者提供的安全保护和保护的范围不尽相同,AH为IP数据报提供数据完整性、数据源认证和一些可选的,有限的抗重播服务。ESP为IP数据报提供机密性、数据源认证、抗重播以及数据完整性等安全服务。在传输模式中,AH对招个IP数据报(包括IP头部和AH头部的固定域1提供认证,ESP只对IP数据报的数据部分提供保护,而不保护IP头部。在隧道模式下,AH对内部IP数据包和外部IP头部提供认证服务,ESP只对内部IP数据部提供安全服务。AH使用IP协议端口51进行通信。AH的协议头格式如下所示下一个头负载长度保留安全数据索引(SPI)顺序号认证数据图2—5AH蜘议头格式图(I)下一扩展头:标识AH头后的负载类型。.(2)负载长度:以32位字长为单位,其值为AH头长度减2。当认证数据为标准的96位时该值为4。f3)保留:留作将来使用,必须置为零。(4)安全参数索引(sPI):与目的端IP地址及安全协议(AH)一起唯一表示该报文的安全关联。它通常在建立安全关联的基础上由目的端系统柬选择。f5)顺序号:用于反重发服务,但无论接收方是否选择该服务,它都照常计数。(6)认证数据:含有该报文的完整性检查值(ICV)。长度可变,但必须是32的倍数。陔域可能含有填充数据,以确保整个AH协议头长度为32的整数倍(IPv4)或64的整数倍(IPv61。2.3.3ESPtl2】ESP的协议头格式如下图所示 接于PKI的IPSec—VPN网关问通信研究和实现32bit安全参数索引(SPD32bit顺序号负载数据0~255个填充字节填充长度下一扩展头认证数据图2-6ESP协议头格式图(1)安全参数索引(spD,顺序号的含义与AH中的相同。(2)负载数据:包含下一扩展头中描述的数据。(3)填充域:该域是可选的,包含0-255字节任何算法必须支持填充数据的产生和清除。f4)填充长度:指示填充域中填充的字节数。(5)下一扩展头:指示负载数据域中所含数据的类型,如IPv6中的扩展首部或对上层协议的标识。(6)认证数据:该域是可选的。只有在建立安全连接时选择了认证服务才有。它包含对ESP报文中除去认证:数据后计算的一个完整性检查值0cv),其长度由认证函数决定。2.3.4认证和加密算法【7】AH和ESP计算ICV的认证算法由安全关联决定。对于端到端通信,有基于对称加密算法(如DES)或单向希函数f如MD5,SHA—1)的消急认证代码。对于多目广播通信,可以采用与非对称签名算法相结合的单向哈希算法。所有AH实现必须支持哈希消息认证码HMAC(HashedMessageAuthenticationCode)的不同算法如HMAC—MD5,HMAC—SHA—l。ESP中的加密算法由安全关联决定,与对称加密算法一起使用。由于IP报文可能不是按顺序到达,所以每个报文必须携带一些信息以使接收端为解密建立保密同步。这些信息可以放在负载数据域中,如初始向量(InitializationVector),也可以从报头中提取。由于ESP中的信息是明文的,ESP的加密算法可以采用块或流模式。所有的ESP实现必须支持DESinCBCmode,HMAC.MD5,HMAC.SHA.1,NULL认证算法,NULL加密算法。 中山大学硕士学位论文2-3.5IPSec技术的具体应用AH的报文输出处理过程如下:(1)查找安全关联(2)产生顺序号:发送方计数器在安全关联建立时初始化为o。当进行输出报文处理时自动递增,并把新值加入到顺序号域中。如果选择了抗重播服务f缺省1,发送端在插入新值前需要检查并确保计数器没有循环。如果计数器己经循环,发送端将建立一个新的安全关联和密钥。如果没有选择抗重播服务,发送端不需要监测并重置计数器。当计数器达到最大值时将重新返回到o。(3)计算完整性检查值:AH完整性检查值的计算是针对IP报头、AH头、上层协议数据进行的。计算前主要包括两方面的处理:+处理可变域:如果某一域中的值在传输过程中被改变了。则将陔域的值置0。如果域的值是可变的,但可以被接收端预测,则将浚值插入到域中。在计算时,认证数据域中的值将置0。置0的方法保证了对齐,也保证了域长度在传输过程中不被改变。+填充:包括认证数据填充和报文填充。认证数据填充是为了确保AH头长度为32的倍数(IPv4)或64的倍数(IPv6)。对于一些认证算法,进行完整性检查值计算的字节流必须为算法所定义的块长度的整数倍。如果包括AH头在内的IP报文不符合该要求,那么必须在报文的末尾加上填充数据,填充数据必须为O.且不随报文一起发送。(4)分片:在传输模式中,分片处理在AH处理之后进行,经过AH处理的IP报文可以由路由器来分片,但在接收端必须在AH处理前进行重组。在隧道模式中可以对已经分片的IP报文进行AH处理。ESP的报文输出处理过程与AH大致相同主要有以下两点区别:(1)在查找安全关联之后,需要进行报文加密:发送方把上层协泌信息(传输模式)或整个IP报文(隧道模式)封装到ESP负载域中,然后添加必要的填充信息,最后用安全关联中指定的密钥、加密算法、算法模式以及保密同步数据对结果数据(包括负载数据、填充、填充长度、下一扩展头)进行加密。如果选择了认证服务,那么必须在认证之前进行加密,而且加密对象不能包括认证数据域。这种顺序加快了接收端检测和拒收重发报文或伪报文的速度,从而减少了服务拒绝攻击的影响。同时它也允许接收端对报文进行并行处理,也就是晚,解密和认证可以同时进行。(2)完整性检查值计算的对象有所不同:在ESP中ICV计算的对象是整个ESP报文中除了认证数据以外的所以数据AH的报文输入处理过程如下: 基于PKI的IPSecVPN网关问通信研究和实现f11重组:如果需要的话重组将在AH处理之前进行。f21查找安全关联:在收到包含AH协议头的报文之后,接收方根据目的端IP地址、安全协议fAH)和SPI确定相应的安全关联。如果无有效的安全关联存在,接收方将丢弃该报文。f3)JIl页序号检查:当安全关联建立时,接收方报文计数器必须初始化为0。在一个安全关联生命期内,对于每一个到达的报文必须确保其顺序号没有重复。重复的报文将通过使用滑动接收窗口被丢弃。如果接收端没有选择反重发服务,就不需要对输入报文进行该项检查。(41完整性检查值验证:接收方用指定的认证算法对报文的相应域计算ICV,并与报文的认证数据域中的ICV进行比较,如果不一致则丢弃该报文。ESP的报文输入处理过程比AH多一个报文解密过程。接收方使用安全关联中指定的密钥、加密算法、算法模式以及保密同步数据对负载数据、填充、填充长度、下一扩展头进行解密,然后用加密算法中指定的方法处理填充数据,最后重建初始IP报文。对于传输模式,从ESP负载域中提取IP报头和初始上层协议信息,对于隧道模式,从ESP负载域中提取隧道IP头和整个IP报文。如果选择了认证服务,ICV验证和解密可以串行或并行地进行。如果串行执行,将先进行ICV验证浊口果井行执行,那么在对解密报文进行进一步处理前必须完成ICV验证。2.4安全关联SA(SecurityAssociation,安全关联)是构成IPsec的基础。SA是两个通信实体经协商建立起来的一种协定。它们决定了用来保护数据包安全的IPsec协议、转码方式、密钥以及密钥的有效存在期间等等。任何IPsec实施方案始终会构建一个SA数据库(SADB),由它来维护IPsec协议用来保障数据包安全的SA记录。SA是单向的,换言之,它的设计非常简化。如果两个主机(比如A和B)正在通过ESP进行安全通信,那么主机A就需要有一个SA即SA(out),用来处理外发的数据包:另外还需要有一个不同的SA,即SA(in),用来处理进入的数据包。主机A的SA(out)j}n主机B的SA(in)将共享相同的加密参数(比如密钥)。类似地,主机A的SA(in)和主机B的SA(out)也会共享同样的加密参数。由于SA是单向的,所以针对外发和进入处理使用的SA,分别需要维护一张单独的数据表。另外,SA还是“协议相关”的。SA通过AH或ESP但不是两者同时使用而提供安全服务。如果主机A和B同时通过AH和ESP进行安全通信,那么每个主机都会针对每一种协议来构建一个独立的SAII⋯。 中山大学硕士学位论文2.4.1安全关联的参数安全关联(SA)是两对等体主机之间的契约,并描述了对等体将怎样使用IPsec安全服务来保护网络流量。SA维持者两个实体之进行安全通信的“场景”或“背景”。SA需要同时保存由具体协议所规定的子段,以及一些通用字段。安全连接由三部分内容唯一标识,SPI(SecurityParametersIndex安全参数索71)、IP目的地址、安全协议(AH和ESP)标识符。SPI是一个32位长的数据实体,目的地址可以是一个点播地址、IP广播地址或多播组地址。安全关联的参数包括:(1)序列号计数:器(SequeneeNumberCounter):--个用来产生AH或ESP协议头中序列号的32位字段,目标主机用它来侦测重播攻击。安全关联刚建立时,该字段为零,每通过SA发送一个数据包,该字段增加。在该字段溢出之前,安全关联会重新进行协商:(2)序列号计数器溢出标志(SequenceCounterOverfloW):表明序列号计数器溢出是否应该产生审查事件并且阻止SA上额外的包传输的标志:(3)抗重播窗口:一个确定内部AH或ESP报文是否为重传报文的32位计数器:(4)AH认证算法及其使用的密钥;(5)ESP加密算法算法模式及其使用的密钥:(6)ESP认证算法及其使用的密钥;(7)安全关联的生命期:时间问隔计数器,在浚参数指定的时间间隔后,SA必须被新的SA和新SPI替换或者终止,浚参数还包括指明该采取上述哪个动作的标志。该参数可以是时间或字节计数表示,或同时做两个用途(此时第一个生命期优先1;(8)IPsec协议模式:该参数指出SA工作在传输模式下还是隧道模式下:(9)路径最大传输单元。2.4.2安全关联的类型安全关联有两种类型:传输模式和隧道模式‘”1,如下图所示臣丑!IP数据包IP首部IPSec首部IP载荷传输模式下经[Psec处理的数据报 基于PKI的IPSec—VPN网关问通信研究和实现隧道模式下经[Psec处理的数据报图2—7安全关联工作模式图f1)传输模式的安全关联要求必须建立在两台主机或作主机用途的两个节点之间。在IPv4中,传输模式的安全协议头位于IP报头和可选部分之后,上层协议f如TCP或UDP)之前;在IPv6中,安全协议头出现在基本首部和扩展首部之后,目的端可选部分之前或之后,上层西议之前。对于ESP,传输模式的安全关联仅为上层协议提供安全服务,不为IP的基本首部和扩展首部提供安全服务:对于AH,这种保护也提供给部分被选择的基本首部、扩展首部和可选部(包括IPv4首部、1Pv6端对端扩展首部、IPv6目的端扩展首部)。当在两台主机之间建立SA时使用传输模式,如下图所示:ARB图2-8传输模式(2)隧道模式的安全关联实质上是一种应用在IP隧道上的安全关联。在隧道模式的安全关联中,有一个外层IP首部指定IPsec处理的目的端,内层IP首部指定IP包的最终目的端。安全协议头位于外层IP首部之后,内层IP首部之前。如果在隧道模式中使用AH协议,部分外层【P首部和所有的隧道IP包(包括内层【P首部和上层协议)可以受到保护;如果使用ESP协议仅仅只有隧道lP包受到保护。当安全关联的任意一端为安全网关时,安全关联必须是隧道模式。两台主机 中山大学倾二E学位论文间也可以建立隧道模式的安全关联。这种要求任意一条包括安全网关的安全关联必须采用隧道模式是为了避免一些潜在的问题,如IPsec包在分片和重组时可能遇到的问题,以及在安全网关后存在多条通往同一目的主机的路径引起的问题等。当在一台IPSec网关之间建立SA时使用隧道模式,如下图所示:ARIR2B‘磊i种一磊高—露露面鬲i可i■雨磊习L——————————————————————L——。i。越————————————————l——————————j——————J__________——竺!竺竺竺lI。;t⋯丽i馕翦磊忑t可iT琴焉噩瀚L——医.重盏。■一一I:,I苎些I堡.I图2-9.网关到网关隧道模式2.4.3安全关联数据库对于IPsec数据流处理,有两个必要的数据库:SPDB(SecutityPolicyDatabase,安全策略数据库)和SADB(SecurityAssociationDatabase,安全关联数据库)。SPDB指定了用于到达或者源自特定主机或者网络的数据流的策略,SADB包含活动的SA参数。对于SPDB和SADB嘟需要独立的输入输出数据库。(I)安全策略数据库:SPDB是IPsec在系统内核中维护的系统安全策略的副本。在SPDB数据库中,每个入口定义了要保护的是哪种类型的通信、如何保护以及如何共享这种保护。在包处理的过程中,对于每一个进入或者是离开IP协议栈的数据包都需要检索SPDB,查找可能的安全应用。每一个入口可能定义了丢弃、绕过和应用这下种动作中的一个,如果是应用,那么该入口将会提供相应信息用来检索保护该类型数据包的SA,如果SA尚未建立。那么就需要请求[KE(IntemetKeyExchange,Intemet密钥交换)与远端主机协商建立一个。数据包到IPsec策略的映射关系是由选择符决定的,选择符来源于数据包的各个字段,包括:目的地6 基于PKI的IPSecVPN网关间通信研究和实现址、源地址、名字、传输层协议和源目的端IZ]。这些选择符的值可能是一个特定取值、一个范围或者是不透明(表示在处理时不能得到相应的信息)。f21安全连接数据库:SA是构成IPsec的基础,它规定了用来保护数据包安全的IPsec协议、加密算法、验证算法、密钥以及有效时间等,是两个通信实体间为进行安全通信而协商建立起来的一种约定。为了维护当前活动的SA,在IPsec的实现中需要建立一个SA数据库(SADB)。SADB中维护的SA的参数,在前面的章节“安全关联的参数”中已经做过介绍,这里就不重复叙述。IPsec处理对于输入和输出处理,要保存单独的SADB对于输入和输出的数据报,将搜索各自的SADB来查找与从数据报头域中解析出来的选择符相匹配的SPI、源或目的地址以及IPsec协议了。2.5VPN的隧道协议瞳1与实际的点到点连接电路一样,VPN系统可被设计成通过Internet提供安全的点到点(或端到端)的“隧道”。这种连接与常规的直接拨号连接的不同点在于在后一种情形中,PPP(点对点协议)数据包流是通过专用线路传输的。在VPN中,PPP数据包流由一个LAN上的路由器发出,通过共享IP网络上的隧道进行传输,再到达另一个LAN上的路由器。隧道连接与直接拨号连接的关键不同点是隧道代替了实实在在的专用线路。隧道好比是在WAN云海中拉出一根串行通信电缆。因为Intemet是一个公共传输网络,建立在它之上的安全专用网络需要有高度的安全技术要求,而且Intemet不提供像实际的点到点连接那样的町靠性能。在Internet上,经常发生阻塞,导致丢包和包重发,这将影响到网络的整体性能。基于Internet的VPN使用了下面些技术来实现内部数据网。正如网络是依靠相应的网络协议完成一样,VPN技术中的隧道是由隧道协议形成的,隧道协议用来建立通过Intemet的安全的点到点传输,现在大多数的VPN系统使用点到点隧道协议(PPTP—Point2t02PointTunnellingProtoc01)、第二层隧道协议(L2TP—Layer2TunnelingProtoc01)及IPsec(SecureIP)标准。PPTP协议被嵌入到Windows98和WindowsNT4.0中,在VPN中应用最广。L2TP协议综合了PPTP协议和L2F(Layer2Forwarding)协议的优点,并且支持多路隧道,这样可以使用用户同时访问Intemet和企业网。一般而言,PPTP/L2TP的特点是:+封装的PPP数据包中包含用户信息;+支持隧道交换,隧道交换可以根据用户权限,开启并分配新的隧道,将PPP数据包在网络中传输: 中山大学顺=}学位论文·便于企业在防火墙和内部服务器上实旌访问控制。位于企业防火墙的隧道终端器接受包含用户信息的PPP数据包,然后对不同来源的数据包实施访问控制。隧道交换还可以将用户导向指定的企业内部服务器。而IPsec是一个广泛的、安全的VPN协议,IPsec包含了用户身份认证、查验和数据完整性内容。该协议规定了用以在两个IP工作站之问进行加密、数字签名等而使用的一系列IP级协议。IPsec实现来自不同厂商的设备在进行隧道开通和终止时的互操作。同时,IPsec的安全性功能与密钥管理系统松散耦合,当密钥管理系统发生变化时,IPsec的安全机制不需要进行修改。IPsec适应向IPv6迁移,预计它今后将成为VPN的主要标准。隧道协议有两个重要的方面:性能与安全。各公司采用不同的标准,因此这方面有着广泛的技术。I司时可以有很多技术来提高隧道的性能,包括减少丢包、压缩和加密数据,但在目前,这些技术并未被广泛应用。2.5.1PPTP协议即点到点隧道协议。该协议由美国微软设计,用于将PPP分组通过IP网络封装传输。设计PPTP协议的目的正是为了满足这种日益增多的内部职员异地办公的需要。PPTP协议定义了一种PPP分组的运载方法。它通过使用扩展的GRE封装,将PPP分组在IP网上进行传输。PPTP在逻辑上延伸了PPP会话,从而形成了虚拟远程拨号连接。这种虚拟连接一方面保留了PPP协议成熟的鉴别和授权机制,同时保留了PPP协议多协议封装的特征。远处拨号用户图2.10PPTP协议的应用网络拓扑控制连接总部⋯国 基于PKI的IPSeeVPN网关间通信石)f究和实现控制连接是一条TCP连接。在传送任何PPTP分组之前,必须在PAC和PNS之间建立一条控制连接。通过控制连接,PAC通知PNS建立一次入站呼叫,或者PNS通知PAC,发起一次出站呼叫。当呼叫建立之后,控制连接担负维护和关闭由呼叫产生的会话的责任。PAC或PNS为完成这些任务而发送的消息称为控制消息。控制消息必须通过控制连接以TCP数据形式发送。在一个对之间可以形成一条或多条PPTP隧道,PPTP协议使用隧道ID来区分它们。每一个PPTP分组都被作为IP分组的数据部分被发送。因此,PPTP隧道也被称为IP隧道。在同一条隧道中,同时可以封装多条用户会话,他们通过GRE封装中的密钥字段进行隧道复用,分用,并使用GRE头中的序列号和确认号对隧道中的会话进行流量控制。PPTP隧道的作用是对PPP分组进行封装传送。PPP协议属于链路层,因此PPTP是发生在数据链路层的封装,封装后形成的分组被装入IP分组中,在IP网上进行发送。图2.1lPPTP协议在协议栈中的位置PPTP分组IP分组或其他非【P分组被封装入PPP分组之中。当PPP分组发送至PAC时,PPTP协议将其封装入扩展的GRE头之中。封装后的数据作为IP分组的数据部分,传送给下层媒体发送。2.5.2L2TP协议传统的拨号服务往往只是支持已注册的全球IP地址,或者通过专有网络实现。在拨号用户与网络服务提供商以OsP)之削,协议数据往往通过PPP即或者SLIP封装传输,并在ISP接入点(POP)除对原有封装进行解封,再经由帧中继、ISDN等专有网络或IP网络传送到目的地。而L2TP不但支持已注册的【P地址,也支持私有IP地址,以及IPX,X2.5等多协议传输,L2TP将PPP分组尽心隧道封装并在不同的传输媒体上传输。它是IETF(IntemetEngineeringTaskForce)结合PPTP及L2F(第几层转发)两者的优点提出的一个草案标准,定义了利用公共 中山大学硕士学位论文网络设施(如IP网络、ATM和帧中继网络)封装传输链路层PPP帧的方法,可以让拨号用户支持多种协议,如IP,IPX,AppleTalk,且可以使用保留网络地址,包括保留IP地址L2TP还解决了多个PPP链路的捆绑问题,PPP链路捆绑要求其成员均指向同一个NAS(阿J络接入服务器),L2TP可以使物理上连接到不同NAS的PPP链路,在逻辑上的终结点为同一个物理殴备。删冬I—j删连岛评耀一j图2.12L2TP协议网络拓朴图L2TP协议对PPP分组进行封装传输,从逻辑上看在远程拨号用户和LNS之间形成一个点对点的数据链路,因此它对应到OSI七层协议中的第二层,即为数据链路层的封装协议。图2.13L2TP封装L2TP主要由LAC(L2TPAecessConcentrator)手1]LNSrL2CPNetworkServer)构成,LAC支持客户端的L2TP,它用于发起呼叫,接收呼叫和建立隧道;LNS是 基于PKI的[PSecVPN刚关间通信研究和实现所有隧道的终点。L2TP的建立过程是:11用户拨号至本地的接入服务器LAC;LAC接收呼叫并进行基本的辨别。21当用户被确认,建立一个通向LNS的拨号VPN隧道。31企业内部的安全服务器鉴定拨号用户。41LNS与远程用户交换PPP信息,分配IP地址。51端到端的数据从拨号用户传到LNS.2.6本章小结本章作为提出IPSec—VPN网关理论基础,详细地介绍了IPSec体系结构,细致地分析了IPSec协议族的工作原理和关键技术。然后介绍了通信实体问应用IPSec的基础一一安全管理SA,正是由它决定用来保护数据包安全的IPsec协议、转码方式、密钥以及密钥的有效存在期间等等。最后叙述的VPN实现安全通信的途径一一隧道协议。 基于PKI的[PSec—VPN网关问通信研究和实现第三章公钥基础设施(PKI)体系结构3.1PKI技术概述PKI技术采用证书管理公钥,通过第三方的可信任机构一认证中心以(CertificateAuthority),把用户的公钥和用户的其它标志信息(如名称、身份证号等)捆绑在一起,在Internet网上验证用户的身份。PKI通过把公钥密码和对称密码结合起来,在Internet网上实现密钥的自动管理,保证网上数据的安全传输。PKI是一种遵循标准的利用公钥加密技术为网上电子商务的开展提供一套安全基础平台,用户利用PKI平台提供的安全服务进行安全通讯。目前,利用建立在PKI基础之上的数字证书,通过把要传输的数字信息进行加密和签名,保证信息传输的机密性、真实性、完整性和不可否认性,从而保证信息的安全传输。从广义上讲,所有提供公钥加密和数字签名服务的系统,都可叫作PK[系统。PKI的主要目的是通过自动管理密钥和证书,可以为用户建立起一个安全的网络运行环境,使用户可以在多种应用环境下方便地使用加密和数字签名技术,从而保证网上数据的机密性、完整性、有效性。数据的机密性是指数据在传输过程中不能被非授权者偷看;数据的完整性是指数据在传输过程中不能被非法窜改;数据的有效性是指数据不能被否认。一个有效的PKI系统必须是安全和透明的,用户在获得加密和数字签名服务时,不需要详细地了解PKI是怎样管理证书和密钥的。一个典型、完整、有效的PKI应用系统至少应具有以下部分:公钥密码证书管理、证书废止列表的发布和管理、密钥的备份和恢复、自动更新密钥、自动管理历史密钥、支持交叉认证、证书管理策略等。0013.2PKI的密码学理论基础PK[以应用密码学为其理论基础,它是基于公钥密码学的基础而发展起来的。随着互联网的快速发展,特别是电子商务和电子政务的迅猛发展,PKI作为网络安全的基础性平台,它已在实际的网上商务活动中得到了应用。3.2.L对称密码学理论加密/解密技术的基本原理对称密码体制(又叫秘密密钥密码体制)是一种经典的密码体制,它己经历了很长时间的不断发展和完善。在这种体制下,用户A和用户B共享一个密钥,这个密钥既用作加密又用作解密。对称密码体制由于速度很快,通常被用作加密信息主体。属于对称密码体制的算法很多,比较有名的有DES,IDEA,RC4等等,而且在技术上己很成熟并己投入商业使用中。 中山大学硕:卜学位论文对于对称密码来说,一般具有以下两个特征之一:(1)加密密钥和解密钥完全相同:(2)一个密钥可以很容易从另一个密钥中导出。对称密码具有算法简单,运行速度快,占用的空间小等特点,它能提供的服务有:认证,消息完整性以及机密性等三项服务。但它也有致命的三个弱点:(1)两者通信需要事先就密钥达成共识;(2)加密者可以对自己加密数据的行为进行否认,因为双方都可以加密解密:(3)如果一个人想和多个人进行加密数据交换需要大量的密钥。为了解决这个问题,非对称密码(公钥密码)应运而生。“13.2.2非对称密码体制对非对称密码而言:采用两种相关的密钥一一公钥和私钥,而这两个密钥又是截然不同的,知道其中一个,并不能容易推导出另一个,至少在有限时问计算复杂度上可以这样说。这就意味着只要有一个密钥被有效的保密,即使另一个密钥完全公开(如在网上发布),也不会降低它的安全性。非对称密码除了能提供对称算法提供的三种服务外,还可以提供不可否认服务。公开密钥的观念是如此的先进,因而保密数据的方法立刻发展成为众所周知的公钥密码学。现在的数字签名和数字信封技术对Internet上的通讯和商务提供了一个全新的安全平台。虽然密码术自身并不能识别拥有密钥的人,但是公钥基础设施(PKIPublieKey[nfrasteeture)为公钥持有者建立了可信的身份。非对称密码学的出现从根本上解决了对称密码学固有的密钥分发问题。对称密码的安全性完全依赖于密钥的安全,因而怎样安全的分发密钥就是对称密钥所面临的难题一密钥分发问题(Keydistributionproblem)。从传统的意义上说,确保密钥的安全性的唯一方法是通过亲自见面,而这对工nternet上的通讯和商务来说几乎是不可能的。非对称密码学的出现从根本上解决了对称密码学固有的密钥分发问题。因为对于拥有非对称密钥的实体来说,他只需要保护好自己的私钥(私钥是独占的),但可以和其他人共享公钥。公钥密码技术减少了对称加密中所需的安全消息发送方和接受方的先行关系,只需要保护好自己的私钥,因而从根本上解决了密钥分发问题。非对称密码体制有许多:RSA,McEliece、椭圆曲线密码体制等等。其中被Internet推荐使用的是RSA.RSA公钥算法的RSA来自三个发明者的名字。它 基于PKI的IPSecVPN网关间通信研究和实现既能用于加密也能用于数字签名,““””1RSA算法的原理可描述如表2表3一lRSA算法原理是目前流行且比较完善的公钥算法。【所示:选择P,q计算n=p*q计算中(n)=(p-1)(q-1)选择整数e计算d公钥私钥明文密文明文密文密钥产生p年1]q是两个素数,p≠qgcd(巾(n),e)=1:lissuer找到发布该证书的CA的撤销列表CRL,然后验证证书撤销列表CRL的有效性判断CRL的下一次撤销时间即nextupdate是否大于当前系统时间,如果nextupdate比当前时间要早的话,说明陔CRL已经无效,必须重新下载CRL,一旦验证CRL有效后,接下来的过程为:a提取CRL的被撤销证书表即初始化*revokedcert=crl-->revokedcertificate;b判断revokedcert-->usercertificate的序列号是否与被验证的证书cert的序列号相同,如果相同,说明该证书在CRL表中,即该证书己被撤销了,返回。否则下一步。c被撤销证书表的指针后移,即revokedcert=revokedcert-->next,转bd证书未被撤销4.2.L.3数字签名的认证如果经过以上验证过程得出证书是有效的,就证明证书是由可信任的CA发给VPN网关的,并且是在有效期内。接下来就是从证书中提取对方公钥。此时需要解析证书,提取公钥字段,然后用所得到的公钥解密对方传过来的与数字签名相关的信息。数字签名常用RSA算法。验证算法使用了签名者的公钥,所有任何人都可以认证一个签名;但由于签名使用的是签名者的私钥,所以只有签名者本人才能产生有效的签名,也就保证了对方的确是该证书的拥有者,从而就验 中山大学硕=仁学位论文证了对方IPSec—VPN网关的身份。4.2.2IPSec处理模块IPSec协议是一个网络层协议,基于IPSec协议实现VPN必须修改IP层的工作流程,实际上最重要的工作就是在IP层的工作流程中加入IPSec协议的处理流程。Linux2.4.x内核在IP协议栈部分有较大改动,Netfilter就是一大特色。Netfilter机制提供了从内核中提取数据包的方法,因此,可以在发送方VPN网关,通过Netfilter机制为IP协议提供的钩子接入内核,从内核提取外出数据包,进行IPSec的发送处理,之后将处理完的数据包重新注入IP协议栈,放到因特网上传输;在接收方VPN网关,通过Netfilter机制为IP协议提供的钩子接入内核,从内核中提取进入数据包,进行IPSec的接收处理,还原原始数据包,之后将原始数据包重新注入IP。[341本系统的IPSec处理模块设计目标是:利用Netfilter的hook机制,在接受IP包和发送IP包的过程中,在适当的处理位置调用相关的IPSec处理功能,实现进入:IPSec进入策略处理、路由、本机对IP包处理、IPSec进入处理、转发处理、本地IP包处理、IPSec外出处理、发送处理。7.2.1Netfilter钩子函数利用Linux提供的Netfilter框架,并在Netfilter框架提供的HOOK点上注册并实现IPSec相关处理函数,使得IPSec处理能加入到IP包接收或发送处理过程的适当位置。链路层传输层4—7Netfilter的HOOK机制 基于PKI的IPSecVPN刚关间通信研究和实现Linux内核的Netfilter框架在IPv4中提供了5个HOOK点(图4—7),在每个HOOK点上都可以通过一个注册函数nf_register_hook(structnf_hookops+reg)将自己实现的处理函数挂接到HOOK点上。这样在每~次HOOK点被激活时,都将查询并执行该HOOK点所注册的处理函数。然后在处理结束时返回相关的信息来决定被处理的包是丢弃、拒绝,还是继续进行HOOK点后面的处理。检查点编号检查点名称检查点所在文件名lNF—IP—PRE—ROUTINGip—input.c2NF【PLOCALINip_input.C3NLIP—FORWARDiPforward.C4NF—IP—POST—ROUTINGip_output.c5NF-IP—LOCAL—OUTip_output.cROUTE(I)处对收到的包做路由查找并判断这个包是需要转发的包还是发往本机上层的包ROUTE(2)处查找本机发出包的路由NFIPPREROuTING处对所有传入IP层的数据包进行检查,在这之前,有关数据包的版本、长度、校验和等正确性检查已经完成。在报文作路由以前执行。NFIPLOCALIN对发往本机上层的数据包进行检查,INPUT包在此点过滤。NFIPFORWARD处检查需要转发的数据包,FORWARD包在此点过滤。NF【PPOSTROUTING处对所有向链路层传递的数据包进行检查,内置的目的地址转换功能在此点进行。NFIPLOCALOUT对本机发出的包进行检查。nfhookOps就是在检查点上引用的结构每个协议栈预先定义的8个链表数组用于保存这些结构。这些链表与协议栈中的检查点一一对应。在实际的应用中这8个链表并不一定都被使用在IPv4中只定义了5个检查点分别对应前5个链表在Linux2.4.18之后的实现中在五个检查点上都注册了nfhookops结构。structnfhook_ops结构的实例(结构如下):structnf_hookops{structlistheadlist; 中山大学硕士学位论文nf_hookfn4hook;intpf.inthooknum;intpriority;};并将该结构中的一个相关处理函数nfhookfn(定义如下)实现为我们所需的相关IPSec处理函数:unsignedintnf_hookfn(unsignedinthooknum,structsk—bufr+skb,conststructRet—device+in,conststructnetdevice40ut,int(+okfn)(structsk_buff*));并用nf_registeres_hook将该实例注册到由hooknum所指定的HOOK点上。这样,当hooknum指定的HOOK点被激活时(如在ip—rcv中的NP—HOOK(PF—nqET'NF—IP—PRE—ROUTING,skb,dev,NULL,ip_rcv_finish)),将根据priority所指定的优先级,依次执行在陔HOOK点注册的函数,因此我们所实现的相关[PSec处理函数将得到执行。Netfilter还提供了下列返回信息:NFACCEPT继续正常传输数据报NF—DROP丢弃该数据报,不再传输NF—STOLEN模块接管该数据报,不要继续传输浚数据报NFQUEUE对该数据报进行排队(通常用于将数据报给用户空间的进程进行处理1NFREPEAT再次调用该钩子函数在处理结束后将通过返回信息来决定被处理的数据报在HOOK点之后应该怎样处理。IPSecVPN网关对IP报文的接收,转发和发送处理的整个过程如下图所示: 基于PKI的【PSec—VPN咧关问通信副f究和实现组装IP包传输层接收处理IPSec进入处理l———一咐F—IP—LOCAL—IN]—面习路由传输层发送处理本地IP包处理路由叵鏖一一1NFIPFORWARDIPSec进入策略处理IPSec#F出策略处理lIPSec发送处理筹Ⅲ。酋帏忐巾孺羽厣蕊千叮赢网卡接收数据I喷网#发送数据II女4—8IPSecVPN处理模块结构流程图4.2.2.1IPSec进入处理具体实现细节:1)检查nmask标记(该标记在进入策略处理时被设置上)。如果不是IPSec包返回NFAcCEPT=如果是,继续进行IPSec进入处理。2)提取IP头中的目的地址、下一协议,通过下一协议字段信息,提取IPsec头中的安全参数索引(spi)信息。3)根据dev, 基于PKI的IPSec_vPN网关问通信研究和实现dev2,ioforwardfinish):调用我们实现的[PSec外出处理模块。4.2.2.3IPSec外出处理实现细节(I)查找SPD(外出策略)库,找到匹配项的所定义的目标动作。1)ACCEPT:返回NFACCEPT,即包不用经过任何加工处理,直接通过。2)DROP:返回NFDROP,丢掉此包不再传输。3)TRAP:发送Pekey消息ACQUIRE给IKE守护进程,在SPD中把它替换成HOLD,返回NFSTOLEN。不继续传输浚数据报。4)HOLD:截取符合此策略的包,更新以前截获的包,返回NFSTOLEN,不继续传输该数据报。5)IPSECSalist:进行IPSec处理。以下便是详细的步骤说明。(2)根据策略提供的信息,查找安全关联库(SAD),寻找该IP包应该应用的安全关联(SA或SA串)。如果没有找到SA,则将通过发送PFEY消息来触发IKE守护进程进行安全关联(SA或SA串)的协商。此时IP包被暂时保持,直到sa创建或超时。(3)On果找到了SA(SA串),检查当前SA的状态,对于己经超时的SA,要释放SA和这个SA包。(4)设置重播窗口。(5)检查SA的生命期,包括使用时间,已处理的字节数,处理的【P包数目。对于已经过生命期的SA要删除,发PF消息给。_keyIKE(6)根据SA中的协议设置AH或ESP头,然后转到SA链的下一个SA,重复从4开始的处理。(7)设置新的MTU(女I]果实现了PMTU机制,要做相应的处理)(8)根据SA指定的协议(AH或ESP)设置头空间和尾空间,井使用SA规定的协议中应该使用的加密或验证算法处理IP包数据区内容。(9)处理结束后调整IP头重新设置校验和,f10)更新SA的生命期(11)对于SA串将循环处理SA串上的每一个SA(12)对新的IP包重新进行路由。(13)返回NFACCEPT,将IP包传送到进入激活HOOK点时指定的处理函数tip,.进入发送处理模块。49 基于PKI的[PSec—VPN网关问通信研究和实现第五章系统测试实验及结果分析5.1测试环境搭建由于本系统有一定的特殊性,这个系统的实际应用环境与本沦文组建的运行平台相差比较大,这个系统的实际应用环境是一个广域网的网络环境,而本论文组建的环境是一个简单的网络。基于上述的原因,本论文只是按照实际系统的简化模型进行了的实验测试。由于条件限制,我们在实验室局域网内建立一个简单的模拟坏境如图5.1所示,对系统进行了实验测试。PKI服磐器EHacker图5一l基于PKI的IPSec—VPN网络实验拓扑结构5.1.1硬件配置在实验室中用集线器和6台计算机,搭建出模拟基于PKI的IPSec.VPN的网络,其中IPSec.VPN网关A和B配置为高性能PC,安装双网卡eth0和ethl,成功安装驱动之后,操作系统分别识别为eth0和ethl.网卡eth0为连接外部网的网卡,ethl为连接内部网的网卡。主机C和D为普通计算机,分别连接到IPSec—VPN网关的eth0网卡。主机,[PSec—VPN网关,PKI服务器分别属于不同的子网:192.168.0.X’192.168.0.x,202.116.78.x。网络监听计算机Hacker与两个安全网关处与同一子网,在如上图所示的网络中,监听两个子网之间的通信数据旬.。5.1.2软件配置安全网关A和B,主机C和D运行环境为RedhatLinux9.0,内核版本为2,4;PKI服务器安装Windows2003Sever;网络监听计算机Hacker运行环境是 中山大学硕=扛学位论文WindowsXP,并且安装了SnifferPro网络监听软件,可以实现捕捉FTP,HTTP等协议的数据包,监听由集线器构建的局域网内所有传输数据,以理解TCP/IP协议中多种数据结构,会话连接建立和终止过程,TCP序列号,应答响应序号的变化规律。IPSec—VPN网关A的IP地址为:202.116.78.22,lPSec—VPN网B的IP地址为:202.116.78.49:主机C和主机D分别为IPSec—VPN网关A和B内,IP地址为192.168.0,2,192.168.1f3。IPSec—VPN网关A和B必须采用完全相同的安全策略,否则无法进行相互通信。IPSec—VPN网关A的网络配置如下:ifconfigeth0l92.168.0.1netmask255.255.255.0ifeonfigethl202.1l6.78.22netmask255.255.255.0IPSec—VPN网关B的网络配置如下:ifconfigeth0192.168.1.1netmask255.255.255.0ifconfigethl202.116,78.49netmask255.255.255.03.开启Linux内核的IP转发,并添加两大静态路由信息。(1)在终端控制台输入命令:echo⋯1>/proc/sys/net/ipv4/ip—forward,丌启内核IP转发。(2)添加静态路由:routeadd—net202.116.78.0netmask255.255.255.0devethO,使得所有经过内部网卡且目标网段为202.116.78.O的IP包都转发到外部网卡。routeadd—net192.168.1.0netmask255.255.255.0devethl,使得所有经过外部网卡且目标网段为192.168.1.0的IP包都转发到内部网卡。(3)添加一条缺省路由(如果没有其他匹配的路由项,就使用这个路由规则),即其他网段的数据都从ethl走:routeadddefaultgw202.116.78.22这样就构成一个双宿主网关,在内部网段192.168.0.0/24,192.168.0.0/24与外部网关之间作为转发IP包的一个桥梁。5.2测试实验5.2.1网络连通性测试:测试目的:检查所连接的两个网段上的主机相互之间的连通性。由主机C向在另一个网段中的主机D发送lO次64byte的ICMP包,ping对方的IP地址。采用如下命令: 基于PKI的[PSecVPN网关问通信研究和实现ping—c10192.168.1.3ping文件内容如下:64bytesfrom192.168.1.3:l’cmpseq=lttl2254time=1.022ms64bytesfrom192.168.【.3:l’cmp_seq=2ttl=254time=【.629ms64bytesfrom192.168.1.3:l’cmpseq=3ttl=254time=l_018ms64bytesfrom192.168.1.3:l‘cmp—seq=4ttl=254time=1.236ms64bytesfrom192.168.1.3:l’cmpseq-5ttl=254time=1.001ms64bytesfrom192.168.1.3:icmpseq=6ttl=254time=1.749ms64bytesfrom192.168.1.3:iempseq-7ttl=254time=1.028ms64bytesfrom192.168.1_3:1’cmpseq=8ttl=254time=1.237ms64bytesfrom192.168.1_3:t‘cmpseq=9ttl=254time=l_802ms64bytesfrom192.168.1.3:l’cmp—seq=10ttl=254time=1.628ms一192.168.1.3pingstatistics一10packetstransmitted,10received,0%packetloss,time5068msrttmin/avg/max/mdev=1.OOl/1.356/1.802/1.237ms由以上实验数据可以晚明网络是连通的。5.2.2网络性能测试:测试目的:测试安全网关的应用对网络文件传输速度的影响。5.2.2.1测试实验一:FTP通信在主机C和主机D之间进行ftp通信,通过IPSec.VPN网关传输一个大小为15,680Kbyte的文件.应用IPSecESP防议的各种不同的加密和验证算法,对ftp通信进行保护。为了允许外网主机C访问主机D提供的flp服务,需要对lPSec.VPN网关A和B进行响应的NAT设置:在A的终端控制台输入命令:(1)将NAT表清空:iptables—tnat—F(2)开启内核IP转发:echo“I”>/proc/sys/net/ipv4/ip—forward(3)允许私有地址为192168.0.0的主机访问外网的I=t口服务:iptables—tnat—APOSTRoUTINC—s192.168.0.0/24一Pf【pdport21-oethl-jSNAT-to—source202.116.78.22 中山大学硕=}学位论文在B的终端控制台输入命令:允许外网主机访问192.168.1.3主机提供的fIp服务iptables·tnat—APREROUTINC·d202.1l6.78.49一Pftpdport2l-ieth0-jDNAT—to_clestination192.168.1.3这样当外网用户访问ftp://202.116.78.2l时.实际上是访问内网主机192.168.I.3:2l上的fcD服务。测试分别在没有应用安全保护,采用3DES.SHAl,DES.MD5,DES.SHAI,DES.MD5等机制下进行,得出以下数据结果如表5.1所示安全机制IPSec加密算法验证算法文件大小传输时间平均速度协议(KB)(S)(KB/S)l无15,68029.875252AH无MD515,68032.304853AH无SHA-115,68032.874774ESPDESMD515,68034.844505ESPDESSHA一115,68035.3l4446ESP3DESMD515,68053.332947ESP3DESSHA—l15.68055.8028l图5—2FTP试验结果5.2.2.2测试实验二:ICMP包传输通信 基于PKI的IPSec—VPN罔关间通信研究和实现由主机C向在另一个网段中的主机D发送不同大小的ICMP包,ping对方的IP地址。采用如下命令:Ping—c[次数]一s[包长度]192.168.I.3IPSec加密算法验证算法文件大小(KB)协议64100020005000无1.021.893.226.59AH无MD51.232.233.929.35AH无SHA一11.393.405.2011.07ESPDESMD52.473.806.8813.L0ESPDESSHA一12.944.248.0213.99ESP3DESMD53.5l5.289.2518.26ESP3DESSHA—l3.846.0l10.1l19.50平均时间(ms)图5-3[CMP包传输试验结果由以上数据和统计图标可以看出,应用安全网关前后,数据传输率明显下降,特别是ICMP包的传送,所需时间变成安全网关应用之前的2—3倍,这主 中山大学碗二卜学位论文要是因为加密和解密需要一定的时间,对邱文件传输协议而言,也产生了一定影响,但相对ICMP包的穿输,影响略小。这一方面是因为ping命令采用ICMP包传输,IPSec处理的流程和邱实验所使用的IP数据包略有不同:另一方面因为ping命令的响应时间指发出一个数据包到接收到同样的数据包的时间,两段都进行了同样工作量的加密和解密处理,而邱传输的返回数据包要比发出的数据包小得多,处理时间也相应的要少得多所以ping命令的响应时间变化相对较大。综合考虑,对于日常的网络应用,如企业办公网络,家庭上网等,网络传输的数据多为IP数据包,ICMP数据包的使用相对较少,仅用于探测网络通断睛况。所以,以上设计的系统还是具有一定的实际应用意义。在以上实验中,本系统采用的是软件加密和解密的,而加密和认证都要消耗大量的CPU资源,占用了一定的时间。这样就会比普通网关的处理速度下降一些,造成网络吞吐量下降是不可避免的。解决方法之一是采用专门的硬件来加密和解密来弥补。5.2.3系统安全性测试本系统的[PSec—VPN网关采用公信的PKI服务器的CA签发的X.509证书,以1024位的私钥对证书自签名。IPSec应用中采用3DES对称加密,密宅l{|长度达到168位,在现今的计算机计算能力条件下,能够抵御穷举攻击。数据传输的安全性实验通过运行服务器/客户程序来测试,在VPN系统中IP地址为192.168.1.3的毛机D访问ftp://202.116.78.22:2l时.实际上是访问内网主机C,192.168.0.2:2l上的邱服务。因为在网络性能测试试验中,已经对IPSec—VPN网关A和B进行响应的NAT相应设置。在名为HACKER的黑客主机上运行SnifferPro这个网络阱议检测程序获得流经此集线器中的网络通信数据包。我们在RD服务器上放置了一个名为security.test.txt的文本文件。首先,在不加载IPSec模块的情况下,VPN网关A和B就变成了普通意义的网关。主机D从主机C下载security.test.txt文件。在下载过程中,Hacker主机使用SnifferPro截获数据包,查看结构如下图所示: 基于PKI的IPSecVPN网关闾通信研究和实现⋯⋯⋯⋯⋯⋯⋯~⋯⋯⋯一。⋯一⋯~”⋯⋯⋯⋯⋯一Ⅻ口}‘d置Eil·如∞t竹e”⋯酗sPl町扣娃to“吨¨·枣h“·H“p—sx-l¨{。i‰l帕叠jlDd“■j兰鹫鱼l割国|毙lo{尊l墓{蒲|囝l恩i捌垒l型lNosbnBISm,=ceAd女e{{lBed蛐≈lSu“n州^lTCPD=2lS=i757^cx-32i2;?0{90*INai7j37FTPCP0盯。17{7TPP£^FTPRPORT=17i7200j⋯自t50^FTP0POP盯=17s7P^!~FTPRPORq=1757:27Ent⋯gF⋯eMode(IFT}CPORT=1757R£TR⋯itv-·t雠tt#tTCPD=二163S=26i15YN5E0一§27202{46LEN=0WlHtTCP0e2StiS-116i5YHA£Z*027200447SEQ=4090t2TCPD。11S3St261lACE4日90l2S72{目IN=175:0I600鞭PRPOlar=17571i8却E⋯9ISCII—edd‘o6001释D=2stiS*1153FjN自CE*s27202{47SEQ=409012601鬻!鬻㈣£鬟*⋯糍“E=⋯409⋯012⋯E74j㈨P!N=ⅫI?5记06t'。。“苗:.。⋯⋯童3。。。黪羟襞;嚣鬣嚣瑟篓鬻黪答薹黼翳l《鬟落{鲁《!粼i:鏊羞_、多,翩。65。za$湖I#∞£J图5—4SnifferPro截获的明文数据包试验结果显示传输的文本文件名为security—test.txt,内容是thisisatest,源地址为192.168.1_3,目的地址为192.168.0.2,监听结果显示未加载安全传输机制的网络不安全。在另一个试验中,我们把[PSec模块加载上,采用IPSec隧道模式下ESP协议处理,采用3DES加密,执行与以上相同的传输操作。SnifferPro截获的数据包如下图所示:擘£11·卧“t。re叩tqr·m'pI町如dtDitch4#·!^na州Htb。窖。,I”I。|镪l粕剖{Oeladl■藩Jq;·1H亟j国|毳Io|曲I露}蒲|翁|恩I悫|剑鲎llNOsI搬ISo∽eA曲e器IDesIAd拥#sIS懈㈣^口11。f2021167822If202it578491lTCP’DclZ330z4,92^CH=3962084157WlW髓0211070402021i67022FTP.RPORT=488SlSOOpenixigASEI!m删o021167049202t167022TCP:0=4992S=1230FIN^CM。04413003S1SE0口25’021167022202Ii57049TCp‘D=i2,3S,d990^CHa096:’09{】8$#IN2021167049TCP0。1233S=4992FI*^CE=33S208d130SE02021167022TCP0c=4992Snl23{ACW*34413002S2WIN~雕0211570222021167B49TCP0=2lS。d00S^fjK。07761S79b2wI¨一l。口tlg0211570402021167822FTPRPOET。408022Sha群£黜∞mnleto口200211S7022202i167049TCF0;2IS;4005^CX=07,8i$7806W:N“I”’“2掣磊墨&”“8“。囊;。丽i-,i∞G鬻嚣薹篓。。=:i。2嚣3篡瓣00·4el06:群dlt矮《《醚戮¨|溢麟9嗣d攀琶戳l斟≯2j6s善o”l孵疆t糟々§$e≯、:剐hS.1I璺9黜⋯:辫磐瓣参熬糕i鞘鍪镳黪器滋。8麟燕絮憨鬻m瓣、;堡翳^!警史^!蝌啤^懒7舭A煦删堡鹦^曼堂蝗s/FdrMd口⋯tt¨岛r一^i⋯⋯~㈣r⋯一——~一^图5-5应用IPSec模块后SnifferPro截获的数据包 中山大学硕二卜学位论文进行分析时,我们发现数据包的源地址和目的地址变为了202.116.78.49和202.116.78.22,这正是两个IPSec—VPN网关的IP地址。这时由于当使用隧道模式时,位于两个安全网关问的使用ESP保护的安全联盟提供的流量保密性。内层的IP包被加密,所以隐藏了报文的实际源头和终点。同时传输的文件显示是乱码的,说明这是3DES加密过后的结果。更进一步的是,ESP使用的填充字节隐藏了报文的实际尺寸,从而更进一步地隐藏了这个报文的外在特征。当网络中的移动用户使用动态地址,使用隧道方式的安全关联穿过安全网关时,也有类似的通信流的保密性。通过以上试验结构表明IPSec.VPN能够保护网络中主机之间的通信安全。5.3不足之处以及下一步研究工作的展望IPSec是一套庞大的协议体系,包含多方面的内容,完全实现所有功能的难度较大,加上时间及实验条件的限制,所以本论文只是初步的实现IPSec进入,转发和外出处理,如果进一步完善IPSec—VPN网关功能,还有安全策略库(SPDB),安全关联库(SADB)的设计工作需要完成。本文中PKI的应用也只是简单的建立单独的cA服务器,并未涉及到现实应用中的下属层次信任模型,对等模型,网状模型等信任模型,在证书管理方面也需要进一步研究和实现。通过阅读相关方向的资料文献并进行分析,认为本课题有如下改进思路:(1)改进加密认证算法。导致VPN性能大幅下降的主要原因是加密算法的速度相对太慢。因此,改进加密和认证算法是提供高速网络VPN性能的关键。本课题实现中采用了DES和3DES加密算法,可以加入并支持更多的加密算法,如AES算法等。(2)本课题是在Linux平台下实现的。今后要实现与其他平台(windows等)之间的互操作性。(3)将MPLS技术集成到VPN系统中,提高QOS的能力。(4)适当运用IPComp压缩技术,提高处理大量数据的能力和网络利用率。(5)将VOIP应用拓展到VPN中,为VPN增值服务提供新的增长点。(6)安全网关上引入LDAP:轻量级目录涛问协议(LDAP)是一个用于通过TCP/IP网络来访问目录服务的协议。在今后的研究中,LDAP可以为安全网关的一个组成部分。 基于PK【的IPSec—VPN州关问通信研究和实现结束语IPSec是新一代的网络安全标准,可以用来保护IP及上层的数据通信安全。由于IPSec协议的强大功能和优势,所以它得到了不断完善并具有广泛的应用前景,目前利用IPSec来构建虚拟专用网络已成为流行趋势。本论文在深入理解IPSec。协议体系及Linux内核TCP/IP网络协议栈的基础上,在Linux下对基于Netfilter机制的[PSecVPN作了初步实现并进行了测试。本人在论文中所做的主要工作如一F:(1)阅读了大量的国内外的相关书籍和文献资料,对网络安全和虚拟专用网VPN的技术和发展方向有了较深的认识,并对文献资料进行了综合分析。(2)分析了大量RFC文档和相关文献资料,深入研究了IPSec协议的体系结构、工作模式等、并理解了IPSec协议各个组件工作原理,对IPSec提供的安全机制有了较为全面的认识。(3)阅读了大量PKI相关的文章和书籍,理解了PK[协议各个组件工作原理,对非对称加密,证书,数字签名等了较为全面的认识。(4)利用其源码的开放性,本课题使用Linux的2.4.20、内核提供的Netfilter机制,在适当的处理位置调用相关的IPSec。处理模块,实现了IPSec的无缝接入,主要完成了基于Netfilter机制的工IPSec—VPN网关的基本功能。(5)构造了简单的VPN模型,使用PING,FTP等方式对系统进行测试,并通过对截获的通信数据包进行分析,验证了所实现的[PSec的安全机制,同时对安全网关的处理速度进行了测试,验证了其安全性及性能。综上所述,VPN技术代表了当今网络发展的最新技术,它集成了传统数据网和共享数据网络的性能和优点,不仅安全,而且结构简单、投入少、扩展性强,它为网络的发展提供了强有力的支持和保障,随着VPN技术的不断发展和完善,VPN技术将成为今后网络安全技术发展的主要方向。通过本课题,我对IPSec。协议和其涉及到的网络技术、密码学知识、安全技术有了广泛的接触和深入的了解。在Linux平台下基于Netfilter机制的IPSec—VPN安全网关的设计和实现过程中,还使我对计算机操作系统,尤其是操作系统中网络协议的认识水平有了很大地提高,系统分析等能力也得到了提高。IPSec是一套庞大的协议体系,包含多方面的内容,完全实现所有功能的难度较大,加上时间及实验条件的限制,所以本论文只是初步的实现。实现相对简单,功能也不够完善,有很多地方还需要改进。由于本人才疏学浅, 中山大学顺二卜学位论文难免在此论文中暴露出一些问题、幼稚的想法和不成熟的见解。本人投入了极大的精力、时间和智慧,经过了导师的多次指导和本人的若干次的修改、琢磨、再修改的过程。如果仍有不当之处,恳请各位专家、评委给予适当的宽容、凉解、支持和鼓励。 基于PKI的IPSec-vPN网关问通信研究和实现参考文献1.CarltonR.Davis著.周永彬,冯登国等译.IPsec:VPN的安全实施.清华大学出版社,200l,8.2.戴宗坤、唐三平著,((VPN与网络安全》,电子工业出版社,2002年9月.3.AndrewS.Tanenbaum著.潘爱民译.计算机网络(第四版).清华大学出版社,2004,84.AndrewNash,WilliamDuane,等著.张玉清等译硷钥基础设施(PKI)实现和管理电子安全.清华大学出版社,2002,125.JeremyDeClercqandOlivierParidaens.ScalabilityImplicatiORSofVirtualPrirateNetworks,IEEECommunicatiOtISMagazine,2002—5.6.CarlisleAdams,SteveLloyd著.冯登国等译.公开密钥基础设施——概念、标准和实旋.人民邮电出版社,200L,1.7.wiiiJamStallings著刘玉珍,王丽娜,傅建明等译密码编码学与网络安全:原理与实践:principlesandpractices电子工业出版社,2004,8.8.S.Kent,R.Atkinson,SecurityArchitecturefortheInternetProtocol,RFC2401.1998—1l_9.S.Kent,R.Atkinson,IPAuthenticationHeader,RPC2402.1998一l1.10.SeanConvery著;王迎春,谢琳,汪魁译网络安全体系结构人民邮电出版社,200511.D.Piper.RFC2407:TheInternetIPSecurityDomainofInterpretation.1998-10.12.S.Kent,R.Arktnson,IPEncapsulatingSecurityPayload(ESP),RFC24061998~11_13.D.Maughan,M.Schertler,InternetSecurityAssociationandKeyManagementProtoc01.RFC2408.1998—10.14.D.Harkins,D.carrel.TheInternetKeyExchange.RFC2409.1998—1015.邱亮,孙亚刚编著网络安全工具及案例分析电子工业出版社,200416.CharlieKaufman,RadiaPerlman,MikeSpecinet"著;许剑卓,左英男等译网络安全:公众世界中的秘密通信:privatecommunicationinapublicworid电子工业出版社,2004L7.CiscoSystems公司CiscoNetworkingAcademyProgram著;李涤非,欧岩亮,秦华译思科网络技术学院教程.网络安全基础人民邮电出版社,6 中山大学硕:L学位论文200518.崔宝江等编著.信息安全实验指导.国防工业出版社,2005,719.余胜生,周敬利,陈向荣.IPsec—VPN中应用PKI的研究与实现方案.计算机仿真,2003,3.20.谢冬青,冷健.PKI原理与技术.清华大学出版社,2003.7.21.马如军,周卫华,谭成翔.基于IPSec的VPN在Linux中的实现.计算机工程,2003.3.22.王昱白,汪海航,谭成翔.基于IPSee的VPN密钥交换(IKE)协议的分析与实现.计算机工程.2003,1.23.曾凤萍,潘爱民.x.509证书库的设计与实现.计算机应用研究,2003,5.24.D.Solo,Citicorp,D.Kemp.InternetX.509CertificateRequestMessageFormat.RFC2511.1999.25.Roger.WYonglove.PublicKeyInfrastarctureHowItWorks.Computing&ControlEngineeringJournal,200l,12:99—102.26.C.Metz,”PF—KEYKeyManagementAPI,Version2”,RFC2367,1998—7.27.RadiaPerlman,SunMicrosystems.AnOverviewofPKITrustModel.Network,IEEE,1999,t3:38—43.28.BruceSchneier.ApplledCryptography2ndedition.JohnWiley&Sons.Inc.1996.29.余秦勇.X.509~V3证书格式及其语义.通信技术,2001.6.30.代玲莉,欧阳劲.Linux内核分析与实例应用.国防工业出版社,2002,9.31.MichaelJang著,邱仲潘等译.红帽Linux9从入门到精通.电子工业出版社,2003,1032.BobToxen著.前导工作室译.Linux安全:入侵防范、检测、和恢复.机械工业出版社,2002,1_33.宁磊,周卫.LiFlUX网络与安全管理.人民邮电出版社,2001,8.34.AronHsiao著.史兴华译.Linux系统安全基础.2002,2.35.刘海静,王力.VPN的NAT穿越解决方案.计算机工程与设计.2004,10.36.Chokhani.S.AndW.Ford.RFC2527:InternetX.509PublicKeyInfrastructureCertificatePolicyandCertificationPracticesFrameword.,http://www.ietf.org/rfc/rfc2527.txt,1999. 基于PKI的fPSecVPN嘲燕闻通信研究和塞现后记在论文完成之际,首先耍感谢我的导师吕志民老师。从论文的开题到实验工{謇翁开震,壹至论文数完成,罄老努都绘予了悉心戆摆零粒关一陌。两年浓,量老师无论在学习上、工作上还愚生活上都绘了我极大的帮助,在此向他致以衷心的感’谢和崇高的敬意。吕老师严谨的治学态殿,脚踏实地的工作作风,渊博的学识和丰富的科研经验锼我获益嶷多。从链身上,我学到的不仅仅是专业知识和秘研:凌黢,更重要静楚酃种求实斡态度稻严谨靛作风。最后向所有关心我、帮助找,使我能顺利完成学业的老师、同学、亲人和朋友致以衷心的感谢和最良好的祝愿。 基于PKi的IPSoc—VPN剜关阐通信研宄嗣实现原创性声明本久帮塑声明:鼹呈交熬学应论文,是本人在喾炳瓣指导下,皴立送行礤究工作所取得的成果。除文中已经注明引掰的内容外,本论文不包含任何其他个人威集体己经发表或撰写过的作品成果。对本文的研究作出重要贡献的个人和集体,均已在文中以明确方式梃明。本人完全意识到本声明的法律结柴出本人承担。学位论文作者签名:乒局日期:z。a薛卵gFi'f 基于PKI的IPSec_VPN网关间通信研究和实现作者:严石学位授予单位:中山大学本文读者也读过(10条)1.蔡弘亮IPSec_VPN网关中应用PKI的研究和实现[学位论文]20052.黄宪.陆建德.HUANGXian.LUJian-de基于PKI的IPsec-VPN安全网关设计和研究[期刊论文]-微机发展2005,15(5)3.刘华春.LIUHua-chun基于PKI的IPSec-VPN的研究与设计[期刊论文]-通信技术2009,42(1)4.代向东.陈性元.杜学绘.Dai,Xiangdong.Chen,Xingyuan.Du,Xuehui基于PKI的VPN安全管理系统的设计与实现[期刊论文]-微计算机信息2006,22(27)5.余胜生.周敬利.陈向荣IPSec-VPN中应用PKI的研究与实现方案[期刊论文]-计算机仿真2003,20(3)6.李刚VPN的研究与IPSecVPN网关的设计与实现[学位论文]20067.范冰冰.龙灿.FanBingbing.LongCan改进的IPSec-VPN网关PKI应用模型的设计与分析[期刊论文]-网络安全技术与应用2007(3)8.陈向荣.余胜生IPSec-VPN中应用PKI的研究与实现方案[期刊论文]-计算机与数字工程2002,30(6)9.孟桂娥.熊云凤.杨宇航.MENGGuie.XIONGYunfeng.YANGYuhang基于PKI的IPSec-VPN网关的设计与实现[期刊论文]-计算机工程2001,27(2)10.李艳芳.LiYanfang基于PKI-IPsec的VPN技术[期刊论文]-科技广场2006(1)本文链接:http://d.g.wanfangdata.com.cn/Thesis_Y923590.aspx

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。
关闭