网络安全协议课程设计_第1页
网络安全协议课程设计_第2页
网络安全协议课程设计_第3页
网络安全协议课程设计_第4页
网络安全协议课程设计_第5页
已阅读5页,还剩11页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、网络安全协议课程设计题 目IPsec隧道协议的安全分析与改进班级学号姓名指导老师2015年7月4 日目录一、概述 21.1 课程设计的目的 21.2 课程设计的内容 21.3 课程设计的要求 3二、问题分析 32.1 系统需求 32.2 GRE 协议分析 32.3 IPsec 协议分析 4三、协议漏洞 53.1 协议漏洞解决措施 53.2 协议漏洞解决详解 5四、协议完善具体实现 64.1 实现分析 64.2 GRE实现流程分析84.3 简单设备设置 10五、案安全性分析 11六、程设计心得、总结 11七、参考文献 121、概述网络如若想实现交流传输,必须以网络协议为载体进行。而网络协议 (

2、Network Protcol )是控制计算机在网络介质上进行信息交换的规则和约定。 网络协议通常会被按OSI参考模型的层次进行划分。OSI参考模型是国际标准化 组织制定的网络体系结构参考模型, 提供各种网络互联的标准, 共分七层: 物理 层、数据链路层、网络层、传输层、会话层、表示层和应用层,会话层、表示层 和应用层往往被合并称为高层。当前的计算机网络的体系结构是以 TCP/IP 协议 为主的 Internet 结构。伴随着网络的诞生近几年频繁出现的安全事故引起了各 国计算机安全界的高度重视,计算机网络安全技术也因此出现了日新月异的变 化。安全核心系统、VPNS全隧道、身份认证、网络底层数据

3、加密和网络入侵主 动监测等越来越高深复杂的安全技术极大地从不同层次加强了计算机网络的整 体安全性。 网络安全的实现首先需要网络协议的安全, 但是网络协议都是人为写 的,存在先天的不足与缺陷, 以至于只能慢慢实践发现并给与补充。 这里先谈一 下 VPN中的 GRE协议。GRE(Generic Routing Encapsulation,通用路由圭寸装)协议是由 Cisco 和 Net-smiths 等公司于 1994 年提交给 I ETF( Internet Engineering Task Force,网络工程工作小组)的,标号为 RFC1701和RFC1702 GRE协议规定了如何用一种网络

4、协议去封装另一种网络协议的方法,是一种最简单的隧道圭装技术, 它提供了将一种协议的报文在另一种协议组成的网络中传输 的能力。GRE协议就是一种应用非常广泛的第三层 VPN隧道协议。GRE隧道使用GRE协议封装原始数据报文,基于公共IP网络实现数据的透明传输。GRE隧 道不能配置二层信息,但可以配置IP地址。本文从GRE协议的工作原理入手, 从安全性角度出发,详细分析了 GRE隧道协议的不足与缺陷,最后提出了相关的 安全防护方案。1.1 课程设计的目的详细分析 IPsec 隧道协议不支持对多播和广播的加密的不足, 并针对其漏洞设计 实施完善可行的策略。1.2 课程设计的内容将GREW IPsec

5、结合使用,弥补IPsec不能保护组播数据的缺陷。因为GR刖以 封装组播数据并在GRE隧道中传输,所以对于诸如路由协议、语音、视频等组播 数据需要在IPsec隧道中传输的情况,可以通过建立GRE隧道,并对组播数据进 行GRE封装,然后再对封装后的报文进行IPSec的加密处理,就实现了组播数据 在IPsec隧道中的加密传输。1.3课程设计的要求GRE是传统IP网络中最常用的VPh技术;IPSec是比较常用的数据加密技术,本文 要求详细介绍GREW原理和报文封装,并且进行有效可行的GRE与 IPsec的组合 应用,解决组播业务在跨广域网的 VPN中部署的问题,最后深刻理解GRE协议和 IPsec协议

6、的原理与作用,以及两者一起使用时的功能与利弊。、问题分析2.1系统需求实现这个需求首先要知道IPSEC协议只能对单播数据报文进行加密,我们可以设 想把组播源或者组播客户端发出的组播报文, 采用某种技术或者协议在组播报文 的前面封装一个单播的IP报文头,构造一个普通的单播IP数据报文,组播报文 可以看作是它的数据净荷,那么这个构造的报文在传输过程中,就可以使用IPsec协议对其进行加密了,这也意味着组播报文作为构造的单播IP数据报文里“数据净荷”被加密了 2.2 GRE协议分析(1) GRE协议广泛应用于建立VPN网络隧道,例如有一个大型企业需要利用 VPN 将分布在两地的总部和办事处网络连接起

7、来, 在办事处网络路由器A与总部网络 路由器B之间建立一个GRE隧道,则办事处网络中的主机 A和总部网络中的主机 B可以通过该隧道进行网络通信。如图 1所示,这就是一个非常典型的利用 GRE 隧道协议来实现VPN网络的模型,本文中所描述的各种情况均以该网络拓扑结构 为基础。(2) GRE协议数据包结构GRE协议可以实现对IP、IPX、AppleTalk等协议数据包的封装,本文以使用最 为广泛的IP协议为例。通过GRE协议封装过的数据包格式如图2所示:E2f R K1ZJh|i(lH anti在GRE数据包结构中,前面的IP包头部结构是传送数据报头部,用于将其他 被封装的数据包封装成IP包并在I

8、P网络中传输,在本文中称之为外部IP报 头。GRE报头部用来传送与有效负载数据包有关的控制信息,用来在控制GRE数 据包在隧道中的传输以及 GRE报文加封装和解封装过程,其结构如图3所示。有 效载荷数据包是被封装的其他协议的数据包,若被封装的协议为IP数据包,则有效载荷数据包就是一个IP数据包。(3)GRE协议报文处理过程GRE协议报文在隧道中传输时,必须要经过加封装与解封装两个过程。 在图1所 描述的网络中,办事处网络中主机A与总部网络中主机B的通信过程如下所述:1、A发送的IP报文首先到达路由器 A,路由器A连接内部网络的接口收到该 IP报文后首先交由IP报文处理进程处理,其检查IP报头中

9、的目的地址域来确 定如何路由该IP报文。由于其目的地址为总部网络中的IP地址,则开始进行 数据包的加封装,即在该IP报文前加上新的IP报头即外部IP报头和GRE报 头。之后将封装好的报文通过 GRE隧道接口发送出去。2、器B从GRE隧道接口收到路由器A发送的经过封装的GRBS文后,检查目的地址,发现目的地就是此路由器时,先去掉外部IP报头,将剩下的报文交由GRE协议处理。GRE协议进行检查校验和、序列号等处理,之后进行GRE解封装,即将GRE报头部去掉。再将解封装之后的IP报文交由IP报文处理进程象 对待一般IP报文一样对此报文进行处理,即将该IP数据包交给连接内部网络 的接口,按照目的地址发

10、送给主机 B。由上述的GRE协议处理过程可以看出, GRE协议只提供了数据包的封装,并没有提供增强安全性的加密功能。2.3 IPsec协议分析IPsec协议是目前用于所有Internet_通信的唯一的一种安全协议。IPSec保 护IP数据包的安全,主要包括:数据起源地验证、无连接数据的完整性验证、保 证数据内容机密性、抗重播保护和保护有限数据流的机密性等。提供了一种标准的、健壮的以及包容广泛的机制,为运行于IP顶部的任何一种协议(如TCP,UDP,IC MP等)提供保护。IPSec确保端到端的数据安全。IPSe。在网络内部实施 时,即构成了虚拟专用网。IPSe。运行在网络层上,所以属于第三层隧

11、道协议。IPSec是一组协议套件,包括 AH(验证头),ESP(封装安全载荷)、IKE (Internet 密钥交换)、ISAKMP/Oakley以及转码。各组件之间的交互方式如图 1所示:IPSec策略由安全策略数据库(SecurityPolicyDatabase,SP D)加以维护。在SPD数据库中,每个条目都定义了所要保护的通信类别、保护方法以及与谁共享这种保护。进人或离开IP堆栈的每个数据包都必须检索 SPD数据库,调查可能的安 全应用。每一个SPD条目定义的行为是丢弃、绕过或应用中的一种。行为是“应 用的” PD条目,会指向一个或一套安全联盟 (Security Associatio

12、nSA),表示对数据包实施应用安全保护。实施方案都要构建一个安全联盟数据库(SecurityAssociation Database,SADB)来维护SA记录。SA是两个通信实体经协商建立起 来的一种协定,该协定决定了用来保护数据包安全的IPSec协议、转码方式、密 钥及密钥的有效存活时间等。SA是单向的,对于一个主机分别有SA (in)和SA(out)处理进人和外出的数据包。SA具有协议相关性,若某一主机同时使用AH 和ESP两种协议进行安全通信,那么该主机会针对每一个协议构建一个独立的 SA, SA是以成对的形式存在的,既可人工创建,也可动态创建。在进人通信时, 若SA不存在,则丢弃数据包

13、;对于外出通信,若SA不存在,则通过In ternet 密钥交换动态创建。、协议漏洞3.1协议漏洞解决措施GREover IPsec,是将整个已经圭寸装过的 GRE数据包进行加密,于IPsec不支持 对多播和广播数据包的加密,这样的话,使用IPsec的隧道中,动态路由协议等 依靠多播和广播的协议就不能进行正常通告,所以,这时候要配合GRE隧道,GRE隧道会将多播和广播数据包封装到单播包中,再经过 IPsec加密。3.2协议漏洞解决详解我们知道,最初,某大客户的总部网络和分支机构网络之间的业务主要局限于 些传统的FTP, HTTP等,网络结构如下:NE1 6A 耐歼,-NEOSANE03BNE1

14、EBIntern BtT吟服务辖使用IPsec协议,对总部和分支机构之间传送的数据报文进行加密,客户已经成功部署了这方面的业务。随着企业规模的扩大,现在需要开启大量新业务,比如: 语音、视频等组播业务,组播服务器放在公司总部,组播客户端位于分支机构, 网络结构如下:NEOBAimerneiFTP筛服彌组措服务器当总部向分支机构提供语音、视频等组播业务时,组播数据流要通过In ternet进行传输,出于安全的需要,也要求使用IPSEC技术对客户在In ternet上传送的语音、视频等组播数据包进行加密,保证组播数据报文在In ternet上传输时的私有性、完整性和真实性。但是由于IPSEC协议目

15、前只能对单播报文进行加密 和保护,不能对组播报文进行加密和保护,所以人么迫切希望能不能采用其他的 方法来实现这方面的需求。四、协议完善具体实现4.1实现分析既然IPSEC协议只能对单播数据报文进行加密,我们可以设想把组播源或者 组播客户端发出的组播报文,采用某种技术或者协议在组播报文的前面封装一个 单播的IP报文头,构造一个普通的单播IP数据报文,组播报文可以看作是它的 数据净荷,那么这个构造的报文在传输过程中,就可以使用IPsec协议对其进行 加密了,这也意味着组播报文作为构造的单播IP数据报文里“数据净荷”被加密了。如图所示:(1)组播客户端发出一个组播报文,在NE16A上使用上面提到的某

16、种技术,在组 播报文前面封装一个单播IP头,目的地址是NE16B 在NE08A和NE08B之间建立一条IPSEC隧道,当构造的IP单播报文进入到 隧道时,在NE08上A对其数据净荷进行加密;在 NE08B上对其数据净荷进行解 密;(3)当这个报文到达NE16B时,去掉封装的IP头,还原出组播报文,这样组播 报文就可以到达组播服务器了。组播报文本身就是一个IP报文,采用上面的设想就等同于在一个IP报文前面再加上或者可以说是再封装一个单播的IP报文头,能够实现这种IP内封装IP的协议或者技术,我们可以采用 GRE 一个封装好的报文的形式如下:IPGREIP(Passenger Protacob运载

17、协议或封熬协议 (Carrier PrrtOcOft(Encapsulation Protoco|j传输协议(Transport Frutocc举例来说,一个封装在IP Tunnel中的IP传输报文的格式如下: 一个封装好的报文的形式如下:Delivery Header(Transport Prdocoll)GRE Header(Eincapsulatian Proto go I Payload Packet(Passenger Protocol)举例来说,一个圭寸装在IP Tunnel中的IP传输报文的格式如下:IP gre ip乘客圳谏(Passenger Protocol) 运戦协谏或封

18、装协谏(Carrier Prntocd)r Encapsulation Protocol 传输协谏(Transport Protoc(tl4.2 GRE实现流程分析通过上面的分析,解决的方案就很清晰了:将GREW IPsec结合使用,弥补IPsec 不能保护组播数据的缺陷。因为GRE可以封装组播数据并在 GRE隧道中传输,所 以对于诸如路由协议、语音、视频等组播数据需要在IPSec隧道中传输的情况,可以通过建立GRE隧道,并对组播数据进行GRE封装,然后再对封装后的报文进 行IPsec的加密处理,就实现了组播数据在IPsec隧道中的加密传输。我们根据 下面这个图例进行详细的分析:GRE隧道NE

19、16ANE0BA容户崙PCIPSEC隧道imerneiGR睢道FTP竿服彌组播月務器具体组网描述如下: 总部有两台路由器,分别是 NE08B和NE16B组播服务器 直接下挂在 NE16B下。组播服务器的IP地址和网关分别为 /24 和/24 ; NE08BB NE16B的互连 IP 地址为 /30 和 /30 , NE08B连接In ternet 的接口 IP地址为/30。分支机构也有两台路由器, 分别是NE16A和NE08A组播客户端下挂在 NE16A下。组播客户端的IP地址和 网关分别为 /24

20、 和/24 ; NE16A和NE08A的互连IP地址为 /30 和 /30 ; NE08A 连接 In ternet的接口 IP 地址为/30 。在 NE16A和 NE16B之间建立 GRE隧道 tunnel,tunnel 两端 IP 地 址分别为 /30 和 /30,NE08A和 NE08B之间建立 IPSECtunnel。我们以组播客户端访问组播服务器为例,即数据报文的传输方向是从NE16A路由 器到NE16B路由器,对GREF实现流程进行说明: 在 NE16A上,GRE tunnel 接口的

21、source IP address 为 , dest in ation IP address为 。 组播客户端发出的组播报文,到达 NE16A后,进入GRE tunnel前,分别要 封装两个报文头:GRE和IP报文头。特别注意的是:封装IP报文头的source IP address 和 destination IP address 就是 GRRunnel 接口的 source IP address 和 destination IP address,即 和 ,出 GRE隧道之前,始终 不变。封装前组播报文格式:组播报文GRE头部

22、单播IP报头加密部分组檣报文妁装后的组播报文格武如下,组揭报文GRE头部单播IP报头 当封装后的组播报文即将进入IPSEC隧道时,NE08A会对报文的净荷或者整 个报文进行加密。假如对报文的净荷加密,那么报文格式如下:当报文即将出IPSEC隧道时,NE08B会对报文的加密净荷进行解密。还原出 一个加密前的报文,格式如下:组播报文GRE头部单播IP报头(5)当报文到达NE16B寸,即将出GREtunnel接口时,NE16B会将单播的IP包 头和GRE头去掉,还原出一个组播报文,格式如下:組播扳文(6) NE16B将还原出来的组播报文,转发给组播源 整个过程可以用下图进行表示:组皤扌啟 GRE I

23、F头加密的淨荷卩头组播扌眩 GRE IP头;GRE薩道IIIPSEO 值GRE 隧H1 一一一HH=一NE16ANE16BInternet组痫肢a唇户端RCNE09AB组栩容户瑞NEoeeFT吟服爵锯殂播删国4.3简单设备设置本文提供的数据配置只涉及GRE和IPSEC,命令行的含义参考 QuidwayNetEngine16E/08E/05路由器 命令手册,其他基础配置也可以参考Quidway NetEngine16E/08E/05路由器命令手册。NE16A的数据配置:in terface tunnel 1/0/0ip address 52source

24、 desti nati on NE16B的数据配置:in terface tunnel 1/0/0ip address 52source desti nati on NE08A的数据配置:ike peer fen zhipre-shared-key 123 remote-address ipsec proposal fen zhi ipsec policy fen zhi 1 isakmp security acl 2100 pfs dh-group1 ike-peer

25、 fen zhiproposal fen zhisa duratio n time-based 86400acl number 2100rule 0 permit ip source 0 desti natio n 0rule 1 deny ipNE08A的数据配置:ike peer zongbu pre-shared-key 123 remote-address ipsec proposal zongb ipsec policy zongbu 1 isakmp security acl 2100 pfs dh-group1 ike-peer

26、 zongbu proposal zongbu sa duration time-based 86400 acl number 2100 rule 0 permit ip source 0 destination 0 rule 1 deny ip五、案安全性分析本文通过IPsec和GREF结合应用,实现了客户在通过广域网以VPN的形式部署 业务,又能很好的保证安全性的需求,而且通过GRE5妙的解决了穿透广域网实 现组播业务部署的问题。 IPsec 是一种比较常用的加密技术,而且本身具备构建 VPN的能力,所以在跨广域网部署私有业务时,被广泛的应用。IPsec

27、在安全加密方面应用比较广泛,而且不同的产品为了适应客户大量的安全加密需求,将 IPsec 的安全加密功能进行硬件实现,很好的缓解了加密 / 解密对转发性能的影 响。但是IPsec在构建VPN方面存在一定的不足,通过IPSEC建立的VPN拓扑是 “点到点”的,如果实现“网状”拓扑,必须手工逐点配置,而且 IPsec 本身不 具备拓扑发现能力,必须依赖路由协议为其保证网络层可达性。 IPsec 在适应上 层应用的能力上也存在一定的不足,本方案中就有IPSEC与组播结合应用的需求,因为目前IPSEC通道内部还不能直接承载组播数据,所以才引出了IPsec与GRE吉合应用的方案。GRE可以说是传统IP网

28、络中应用最为广泛的 VPN技术,部署简单,配置复杂度 不高,当然GRE也有不能发现拓扑的缺点,但是在“点到点”业务接入点的网络 结构中,完全可以满足要求。本文对GRE从原理到报文封装都进行了详细的介绍, 并且给出了相关配置。另外,目前的GRES然可以比较方便的静态部署“点到点” VPN但是在适应多业务承载方面存在一定的不足,在目前的GRE封装里,除了应用tunnel的“destination ”和“source ”以外,没有其他手段来区分不同的 隧道,这对于两个接入点有多种业务互通需求, 但是出口设备又只有一对 “公网” IP地址的小型网络来说,就无法很好的解决。我们知道,GRE会在封装的IP

29、报文前再封装以GRE报文头和“destination ”对应的IP头,所以GRE嵌套层数越 多,转发效率也就越低,并且对于不允许分片的报文来说,可能还会面临MTU值的问题。六、程设计心得、总结 要做好一个课程设计, 就必须做到: 在设计程序之前, 对所用网络协议的结构有一个系统的了解, 而且要有一个清晰的思路和一个完整的的流程图; 在设计程序 时,不能妄想一次就将整个方案设计好, 反复修改、 不断改进是完善设计的必经 之路;要养成细心的好习惯, 一个方案的完美与否不仅仅是实现功能, 而应该让 人一看就能明白你的思路, 这样也为资料的保存和交流提供了方便; 在设计课程 过程中遇到问题是很正常的, 但我们应该将每次遇到的问题记录下来, 并分析清 楚,以免下次再碰到同样的问题的课程设计结束了, 但是从中学到的知识会让我 受益终身。发现、提出、分析、解决问题和实践能力的提高都会受益于我在以后

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论