(计算机应用技术专业论文)linux下基于ipsec的网络安全研究与实现.pdf_第1页
(计算机应用技术专业论文)linux下基于ipsec的网络安全研究与实现.pdf_第2页
(计算机应用技术专业论文)linux下基于ipsec的网络安全研究与实现.pdf_第3页
(计算机应用技术专业论文)linux下基于ipsec的网络安全研究与实现.pdf_第4页
(计算机应用技术专业论文)linux下基于ipsec的网络安全研究与实现.pdf_第5页
已阅读5页,还剩72页未读 继续免费阅读

(计算机应用技术专业论文)linux下基于ipsec的网络安全研究与实现.pdf.pdf 免费下载

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

文档简介

西南交通大学硕士研究生学位论文第1 页 摘要 随着i n t e r n e t 的迅速发展和网络技术的不断提高,网络已成为现代社会 信息交流的重要途径。i n t e r n e t 提供的开放性网络环境也带来许多安全隐 患,网络安全问题已经越来越受到人们的关注。传统的网络安全措施还存在 许多缺陷,不能完全解决网络安全问题。 i p s e c 的出现弥补了传统安全技术的不足,提供了更加完善的网络安全 保护。i p s e c 在i p 层上对数据包进行高强度的安全处理,提供了i p 包数据源 认证、数据完整性、数据机密性以及抗重播等安全服务。各种上层协议也可 以直接或间接地使用在i p 层提供的安全服务,因而不必分别设计和实现各自 的安全机制,提高了执行效率,也降低了产生安全漏洞的可能性。i p s e c 协 议标准作为一种很好的网络安全架构,非常值得我们学习和借鉴。我们希望 通过研究i p s e c 协议本身和i p s e c 产品技术发展,最终设计出我们自主知识产 权的网络安全协议和网络安全产品。 本文对i p s e c 架构以及i p s e c 协议体系的各个组件进行了简单介绍,随后 针对i p s e c 协议的特点,分析了i p s e c 构建v p n 的优点与难点,并提出了在网关 间部署i p s e cv p n 的方法。选择l i n u x 作为i p s e c 实现平台,对2 4 版本以上内 核的n e t f i l t e r 网络框架进行了分析研究,提出了利用n e t f i l t e r 中的h 0 0 k 点 插入i p s e c 处理模块的方式。这种实现方式可以将i p s e c 处理模块无缝地加入 到i p 层中,不对内核进行修改,只进行功能上的扩充。并详细阐述了i p s e c 在i p 层处理中的流程,对i p s e c 主要功能模块的实现方法进行了设计说明。 最后在l i n u x 网关上构建了一个i p s e cv p n 模型,并对i p s e c 进行了安全 性能测试。通过对所截获数据包的分析,表明数据包在传输过程中已被e s p 加密,无法看到数据包中有用的内容,验证了其安全功能。 关键词:网络安全;i p s e c :v p n ;e s p 西南交通大学硕士研究生学位论文第1 页 第1 章绪论 1 1 研究背景 随着信息化进程的深入和i n t e r n e t 的迅速发展,人们的工作、学习和 生活方式正在发生巨大变化。i n t e r n e t 提供的互联性和开放性网络环境为信 息共享、信息交流、信息服务创造了理想空间,网络技术的迅速发展和广泛 应用,为人类社会的进步提供了巨大推动力。然而,正是由于互联网的上述 特性,紧随信息化发展而来的信息安全问题日渐凸出。信息安全是国家政治、 军事、经济以及社会生活正常运行的基础,也是一个国家综合实力的重要体 现。网络安全是信息安全的一个分支,主要面对的是计算机网络中的系统访 问权限安全、系统工作状态安全和信息可获性安全等问题。如果不很好地解 决网络安全问题,必将阻碍信息化发展的进程。 在互联网进入我国后,网络安全问题虽然逐渐受到关注,但实际上我国 目前的网络安全现状却是令人担忧的。包括政府、银行、证券及i s p i c p 等 在内的许多企业单位的安全意识普遍薄弱,从而为网络犯罪提供了温床。我 国网络安全方面存在的一些问题,比较突出的反映在网络安全产品使用比较 单一,入侵检测系统、身份认证技术、加密技术等的普及程度还很低。 目前,计算机系统面临的最重要的网络安全风险包括两方面: 第一种网络风险是信息在网络传输时被窥探或非法修改。由于目前网络 上传输的信息大部分为明文信息,很多服务器的操作系统登录密码仍缺省采 用明文密码方式,有些政府部门、企业随意用i n t e r n e t 传递未经加密的敏感 文件或电子邮件。而i n t e r n e t 存在大量可以免费下载的黑客软件。借助这些 傻瓜式的黑客软件,即使是普通的初学者也可以很容易获得这些敏感信息。 另外,有些未经授权的第三方不仅截获了在网络传输的数据流,而且还 篡改了其中的数据。这种现象在电子商务交易中最为常见,特别是如果网上 转账、网上交易的金额被第三方修改,将造成交易方的巨大损失。 第二种网络风险是来自i n t e r n e t 对内部网的非法访问和攻击。在理论 上,只要存在物理连接,就有被非法访问和攻击的可能存在。重播攻击是最 简单实用的网络攻击方式,它不断发送序列号相同的数据包占用有限的系统 资源,直到系统崩溃。更新的攻击破坏的方法也还在不断地出现。为了防止 非法访问和攻击,除了加强网络安全防护外,还需要保留相关的证据,也就 是取得非法访问者的真实地址i p 。然而,一个i p 数据包是否来自其真正的 源地址,i p 协议本身并不提供任何保障,i p 地址是可以被伪造的。这样一 西南交通大学硕士研究生学位论文第2 页 来,基于i p 地址标识的数据包事实上是不可信的,这就使得一些基于i p 地 址实现的访问控制技术失效,同时也使得对网络攻击者的追查与取证变得更 为困难。 从技术上解决网络安全问题取决于以下两个方面:一是网络硬件设备, 二是网络设备的操作系统和应用软件。如果一个国家不能够同时拥有上述两 方面的核心技术自主知识产权,那么该国的网络安全将失去基本保障,其网 络安全将潜在地控制在提供网络设备的国家手中。所以,对于我国而言,网 络安全的发展趋势将是自上而下的,从应用层软件到网络硬件基础设施逐步 自主地研制网络设备。 1 2 研究意义 由于网络安全威胁存在的普遍性和破坏性,网络安全的研究也成为网络 发展中的一个重要课题。为了应对目前以及未来的网络安全需要,由因特网 工程任务小组( i n t e r n e te n g i n e e r i n gt a s kf o r c e ,i e t f ) 提出了i p 安全 协议( i n t e r n e tp r o t o c 0 1s e c u r i t y ,i p s e c ) 。 i p s e c 体系结构由一系列协议组成,制订这些协议主要是为了确保通过 i p 网络进行的数据通信的整体性、保密性和认证。i p s e c 的主要功能是在网 络层对数据分组提供加密和完接性鉴别等安全服务,它提供了两种安全机 制:认证和加密。 传统的网络安全措施如防火墙、安全路由器、安全网关、黑客入侵检测 系统等产品技术,其实施集中在系统较高应用层次上,在完善性、规范性、 实用性上还存在许多不足,在多平台的兼容性、多协议的适应性、多接口的 满足性方面存在很大距离。i p s e c 的出现正好弥补了传统网络安全措施的不 足,i p s e c 可在以下三个不同的安全领域使用:虚拟专用网( v p n ) ,应用级安 全以及路由安全。目前,i p s e c 主要用于构建v p n 。在应用级安全或路由安 全中使用时,i p s e c 还不是一个完全的解决方案,可以将它与其他安全措施 配合使之更加有效。 i p s e c 提出的目标是为i p v 4 和i p v 6 提供具有较强的互操作能力、高服 务质量和密码安全。在从i p v 4 全面转向i p v 6 的过程中,j p s e e 将在两者闻 为网络安全提供保证。i p s e c 在i p 层上对数据包进行高强度的安全处理,提 供数据源认证、数据完整性、数据机密性、抗重播等安全服务。各种应用程 序可以享用i p 层提供的安全服务和密钥管理,而不必设计和实现自己的安 全机制,因此减少密钥协商的开销,也降低了产生安全漏洞的可能性,简化 了应用层软件的设计,提高了跨平台兼容性。i p s e c 也可连续或递归应用, 西南交通大学硕士研究生学位论文第3 页 在路由器、防火墙、主机和通信链路上配置,实现端到端安全、v p n 和安全 隧道技术。在i p v 6 协议中i p s e c 的加入是强制性的,因此i p s e c 技术必然 会得到迸一步的优化与发展。 我国由于自身网络安全的需要,不能完全直接采用国外的网络安全产 品。i p s e c 协议标准作为一种很好的网络安全架构,非常值得我们学习和借 鉴,我们可以通过研究i p s e c 协议本身和i p s e c 产品技术发展,最终设计出 适合我国国情的网络安全协议和网络安全产品。 1 3 研究现状 作为下一代i p v 6 网络的必要组成部分,i p s e c 产品的发展速度很快,国 内外各大计算机公司均已推出相关产品。目前,i p s e c 产品的实现重点是 i n t e r n e t 密钥交换( i k e ) 和安全策略系统,这两个技术的实现,决定了i p s e c 实现是否完善和标准。 相比之下,国外产品在安全性、可扩展性、简易性和性能价格比、协议 实现的完整性、系统的配置、系统的管理、日志及报表、系统自身的安全性、 性能、c a 认证等许多方面要优于国内产品。但存在的问题显而易见,产品从 硬件平台到操作系统都建立在国外产品之上,安全的控制权实际上在生产商 手中。另外,基于i k e 动态密钥管理并没有很好的实现,大部分产品是共享 式密钥,没有实现动态安全关联密钥交换,安全策略系统实现也并不完善。 国内各种网络安全系统也多建立在国外的系统软硬件平台之上。系统的 上层软件系统必须依赖于操作系统本身的软件基础,才能获得运行的高可靠 性和信息的完整性、保密性。由此可见,网络中系统的安全性依赖于网络中 各主机操作系统的安全性。建立在自主开发的操作系统基础上的网络安全系 统才能保证网络系统的安全。 目前国内安全产品有很多使用了l i n u x 操作系统作为网络安全的实现平 台。l i n u x 是开放源代码的操作系统,并且是根植于u n i x 的,稳定性好,网 络功能强大,非常适合作为网络安全的实现平台。因为它的内核源代码是完 全开放的,我们可以更清楚的掌握操作系统的内部机制,因此使用l i n u x 是 相对更安全的选择。当然,所有网络安全软件的基础是硬件设备,特别是硬 件设备关键控制芯片( 如c p u ) ,因此,最彻底的网络安全解决方案是掌握硬 件设备核心技术,并能做到操作系统以及上层软件系统完全自主开发。虽然 这是一项非常艰巨的任务,但也是我们为之努力的目标。 1 4 本论文研究目标和组织结构 西南交通大学硕士研究生学位论文第5 页 第2 章lp s e c 协议体系 i n t e r n e t 上传输的i p 包本质上是不安全的。可以很容易伪造出i p 包的 地址、篡改其内容、重播旧的包以及在传输途中拦截并查看包的内容。因此, 我们既不能保证收到的i p 包确实是来自它声称的来源也不能保证i p 包在 从源到目的地的传输中没有被窥视或篡改。 为了确保在任何i p 网络上拥有安全的通信,i e t f 制定了一套开放的网 络安全协议标准i p s e c 。i p s e c 可以在i p 层上对数据包进行高强度的安全处 理,提供了i p 包数据源认证、数据完整性、数据机密性以及抗重播等安全 服务。各种应用程序也可咀直接或间接地使用在i p 层提供的安全服务和密 钥管理,因而不必分别设计和实现各自的安全机制,减少了密钥协商的开销, 也降低了产生安全漏洞的可能性。 2 1i p s e c 体系概述 i p s e c 体系主要包括认证头( a u t h e n t i c a t i o nh e a d e r ,a h ) 1 1 4 l 、封装安 全载荷( e n c a p s u l a t i n gs e c u r i t yp a y l o a d ,e s p ) f 1 1 以及i n t e r n e t 密钥管 理协议( i n t e r n e tk e ye x c h a n g e ,i k e ) p “。图2 一l 表示了i p s e c 体系各组 件之间的交互方式。 图2 一li p s e c 体系结构 在i p s e c 体系结构中a l 通过使用认证算法来保证数据的起源地与数据 完整性,并能防止相同数据包的不断重播。而e s p 除了具有a h 的所有安全 性能之外,还可使用各种加密算法为数据流提供有限的机密性保障。a h 和 e s p 可以分开使用或结合使用。密钥管理则负责密钥的协商与产生,有手工 e s p 可以分开使用或结合使用。密钥管理则负责密钥的协商与产生,有手工 西南交通大学硕士研究生学位论文第6 页 管理和自动管理两种方式。其中自动管理主要使用i n t e r n e t 标准密钥管理 协议( i k e ) 进行。解释域( d o i ) 的作用是通过一系列命令、算法、属性、参 数将所有的i p s e c 协议捆绑在一起,保存密钥协商协议彼此相关各部分的标 识符及参数【”1 。 在i p s e c 中,策略是i p s e c 体系结构的重要组成部分,它决定了两个实 体间是否能够通信,以及对该通信应该实旌什么样的保护。策略部分尚未成 为标准的组件,策略的定义和表示是在具体的实施方案中解决【1 3 l 。 2 2 安全关联s a 安全关联( s e c u r i t ya s s o c i a t i o n ,s a ) 是i p s e c 实施的基础。s a 中规 定了保护数据包安全的i p s e c 协议、转换方式、密钥以及密钥的有效存在时 间等等。a h 与e s p 协议都要使用s a ,而i k e 的一个重要功能就是对s a 进行 管理和维护。在实施具体的i p s e c 处理前,必须首先在两个应用实体( 如主 机、路由器) 间建立s a ,由s a 来决定保护什么、如何保护以及谁来保护通 信数据。 一个s a 只保护单向数据流,因此对外出和进入处理的数据包需要分别 使用不同的s a ,而且需要各自维护一张单独的s a 数据表。例如两个主机a 和b 正在进行i p s e c 安全通信,那么主机a 需要有一个外出s a 即s a ( o u t ) , 用来处理外发的数据包;另外还需要有一个进入s a 即s a ( i n ) ,用来处理进 入的数据包。主机a 的s ( o u t ) 和主机b 的s a b ( i n ) 将共享相同的加密参数 ( 比如说密钥) 。类似地,主机a 的s a ( i n ) 和主机b 的s a b ( o u t ) 也会共享 同样的加密参数。 另外,不同的协议会有不同的s a 。如果主机a 和b 同时通过a h 和e s p 进行安全通信,那么每个主机会针对每一种协议来构建一个独立的s a ,即每 个主机有a h 外出s a 、a h 进入s a ,e s p 外出s a 和e s p 进入s a 共4 个s a 。由 这些s a 组成的集合称之为s a 束【”1 。 2 2 1s p 每个s a 用一个三元组唯一标识。该三元组包含一个安全参数索引s p i 、 一个s a 关联的目的i p 地址以及一个特定的安全协议( 如a h 或e s p ) 。其中 s p i 实际上是一个长度为3 2 位的数据,用来对应一个唯一的s a 【1 3 】。s p i 被当 作a h 和e s p 头的一部分传送。i p s e c 数据包的接收方可以很容易从a h 和e s p 头中提取s p i ,并将它和目的i p 地址及安全协议一起来确定与此数据包相关 联的s a 或s a 束。 西南交通大学硕士研究生学位论文第7 页 2 2 2s a d 安全关联数据库( s e c u r i t ya s s o c i a t i o nd a t a b a s e ,s a d ) 用来保存 协商好的s a ,为进入和外出包处理维持一个活动的s a 表。s a d 是由各个s a 聚集在一起形成的,可以通过手工或是使用i k e 之类的自动密钥管理系统来 管理。s a d 中的记录项定义了与s a 相关联的参数,每个s a 都会在s a d 中有 一条记录项相对应。对于进入处理,使用三元组 标识来查询s a d 的记录,找到对应s a 。对于外出处理,则首先在s p d 中查找指向s a d 中s a 的指针,然后在s a d 中查找对应的s a 或s a 束。如果 此时s a 尚未建立,则需要通过协商建立s a ,并将s p d 中的项与s a d 的记录 项关联起来。 s a d 记录项中的有关参数为: ( 1 ) 通道目的地址:对于隧道模式中的i p s e c 来说,需用该字段指出 隧道的目的地即外部头的目标i p 地址。 ( 2 ) 安全协议;a h 或e s p 。 ( 3 ) s p i :一个3 2 比特字段,用于区别同一个目的地和协议的s a 。 ( 4 ) 序号计数器:一个3 2 比特字段,用于产生a h 或e s p 头的序号。 ( 5 ) 序号计数器溢出标志:用来标识序号计数器是否溢出。如溢出, 则产生一个审计事件,并禁止用该s a 继续发送数据包。 ( 6 ) 抗重播窗口:一个3 2 比特计数器,用于决定进入的a h 或e s p 数 据包是否为重发。该参数为可选的,如接收方不选择抗重播服务( 如手工设 置s a 时) ,则不使用抗重播窗口。 ( 7 ) s a 的生存期:这是一个时间间隔。超过这一闻隅后,应建立一个 新的s a ( 以及一个新的s p i ) 或终止通信。生存期可以用时间或字节数为标准, 也可一起使用。生存期分为软、硬两种。软生存期过期时只是发出警告要更 换s a ;而硬生存期过期,则指明当前s a 必须终止。如数据包在s a 生存期内 未传输,则应丢弃。 ( 8 ) i p s e c 协议模式:i p s e c 协议可同时用于隧道模式及传送模式。依 据这个字段的值,载荷的处理方式也会有所区别。可将该字段设为隧道模式、 传送模式或者一个通配符。如果将该字段设为“通配符”,则意味着该s a 既可用于隧道模式,亦可用于传送模式。 ( 9 ) p m t u :记录所经过路径的m t u 及其寿命变量。在隧道模式下使用 i p s e c 时,必须维持正确的p m t u 信息,以便对这个数据包进行相应的分段。 西南交通大学硕士研究生学位论文第9 页 针从s a d 中取得对应的s a ( 若不存在,则需要调用i k e 创建一个新的s a ,并插 入到s a d 中) ,然后利用s a 指定的安全协议和认证加密算法对包进行安全处 理后发送到目的地址。接收方收到数据后实施i p s e c 进入处理,通过报文中 的s p i 等参数找到s a ,检查是否是重传数据。如是新的i p s e c 包则应用s a 中指定的协议和算法对数据进行解密和认证。随后根据选择符在s p d 中检索, 以验证所应用策略是否正确。 2 3 2 选择符 进入策略是通过s a 中的指针获得的,而外出策略是利用选择符查询s p d 得来的。选择符是从网络层和传送层头内提取出来,包含了一系列参数的集 合【1 3 】。通过使用一个或多个选择符,对s p d 中的策略条目进行检索,选择适 当的策略,从而为外出或进入的数据包提供安全服务。i p s e c 策略可以使用 的选择符有: ( 1 ) 源地址:源地址可以是一个通配符、一个地址范围、一个网络前 缀或者一个指定的主机。对来源于同一主机的所有数据包,如果都采取相同 的策略,那么就可以使用通配符。网络前缀和地址范围用在安全网关中,以 便为隐藏在它后面的主机提供安全保护,或用来构建v p n 。 ( 2 ) 目标地址:目标地址可以是通配符、一个地址范围、一个网络前 缀或一个指定主机。前三项用于隐藏在安全网关背后的主机。对于经过隧道 处理的i p 包,用作选择符的目标地址字段有别于用于查找s a 的目标地址。 在这种情况下,只要包以隧道方式传输,外部头的目的i p 地址便可能与内 部头的不一样。但是,目的网关中的策略是根据真正的目标地址内部头而设 的,而最终要用这一地址对s p d 数据库进行索引。 ( 3 ) 名字:名字字段用于在i k e 协商期间标识与一个有效用户或者 系统名称关联在一起的安全策略。 ( 4 ) 协议:协议字段指定了数据包使用了哪一种传输层协议,但如果 使用了e s p ,由于传输层协议头被加密,无法访问到协议号。在这种场合下, 则使用通配符。 ( 5 ) 上层端口:在进行面向会话的密钥交换对,上层端口代表着源和 目标端口。如果端口不能访问,便需使用通配符。 2 4a h 与e s p a h 协议提供数据完整性、i p 包身份认证和抗重播功能【1 4 】。数据完整性 功能可以保证在传输中不可能发生未经检测的修改,身份认证功能使终端系 西南交通大学硕士研究生学位论文第1 1 页 e s p 头中的s p i ( 3 2 位) 用于标识一个s a ,序列号( 3 2 位) 用来提供抗重 播功能。初始化向量( i n i t i a l i z a t i o nv e c t o r ,i v ) 在对称加密算法中需 要用到,它是一个随机生成的字符集,使用它可以确保任何两个文本都不会 生成相同的加密数据。在e s p 中,有的加密算法要求明文是某些字节的整数 倍,所以e s p 比a h 多了一个长度为0 2 5 5 字节的填充字段,这个字段也用于 保证密文的双字对齐,同时它还隐藏了有效载荷的真正长度,从而为传输流 量提供了一定的机密保护,但这个字段也占用了传输带宽。 2 5 i p s e c 工作模式 i p s e c 有两种工作方式:传输模式( t r a n s p o r tm o d e ) 和隧道模式( t u n n e l m o d e ) 【1 3 】,a h 和e s p 均可应用于这两种模式。 传输模式通常应用于主机之间端对端通信,该模式要求主机支持i p s e c 。 传输模式主要为上层协议提供保护,a h 或e s p 包头插入在i p 包头和运输层 协议包头之间。其结构如图2 4 所示。 原始i p 包 匝巫互匝巫区 困 传送模式下的a i 包 传送模式下的e s p 包 图2 4 传输模式下的i p s e c 包头结构 显然传输模式下e s p 并没有对原始i p 包头进行认证加密处理,源、目 的i p 地址内容是可见的。而a h 则对整个i p 包进行了认证处理,因此其完 整性保护要强于e s p 。 隧道模式应用于网关与网关之间,即在主机的网关( 防火墙、路由器) 上 加载i p s e c 。隧道模式下,整个i p 包都封装在一个新的i p 包中,并在新的i p 包 头和原来的i p 包头之间插入i p s e c 头( a h e s p ) 。其结构如图2 5 所示。 在隧道模式下,如果应用了e s p ,原始i p 包头是加密的,真正的源、目 的i p 地址被隐藏了,在新i p 头中指定的源、目的i p 地址一般是源、目的安全 西南交通大学硕士研究生学位论文 第12 页 网关的地址a 同时,隧道可以是嵌套式的,只要其嵌入方式正确,可以嵌入 任意深度。 隧道模式下的a l 包 隧道模式下的e s p 包 经过验证的数据 新i p 头je s p 头j 原始i p 头jt c p p 头j 数据 je s p 尾ie s p 认证 卜一卜一 经过加密的数据 图2 5 隧道模式下的i p s e c 包头结构 2 6 算法与密钥管理 2 6 1 认证与加密算法 i p s e c 中的认证算法用来提供数据源认证和数据完接性认证。对于数据 源认证来说,认证算法的原理是,在认证对象和认证算法相同的情况下,认 证密钥不同就会产生不同的认证数据。只要认证密钥不泄漏,就可以保证数 据源无法伪造。对于数据完整性认证来说,在认证密钥和认证算法相同的情 况下,篡改了原数据包的内容后将产生不同的认证数据,这样通过计算认证 数据就可以判断数据包内容是否被修改过。a h 与e s p 中常用的认证算法有 d 舱c s h a l ( s e c u r eh a s ha 1 9 0 r i t h mv e r s i o n1 ) 【1 q 、m i a c m d 5 ( | e s s a g e d i g e s tv e r s i o n5 ) 等。 加密算法用于保证e s p 的机密性。现有的加密算法主要有对称密钥密码 算法系统和公钥密码算法系统两大体系。对称密钥密码算法的加密函数与解 密函数使用同一个密钥。公钥密码算法则要使用两个不同的密钥,一个用于 加密函数,一个用于解密函数。对称密钥密码算法主要使用异或、逐位与、 位循环等初级操作,无论以软件方式还是硬件方式执行都非常有效,加解 密速度比公钥密码算法( 主要使用大指数模运算) 快的多。对于i p 包来说, 执行效率是非常重要的,因此目前i p s e c 多使用对称密钥密码算法对i p 包 提供保密服务。主要算法有d e s 【”】、3 d e s 等。 2 6 2i k e 管理i p s e c 中的密钥有两种方法:人工密钥管理和i k e 。人工密钥管理适 西南交通大学硕士研究生学位论文第1 3 页 合小型的相对静态的网络环境使用,不同i p s e c 设备上的密钥由系统管理员 人工输入。而在大型、动态的互联网中,由网络管理员对每一台设备进行详 细配置是相当费时而且繁琐的,因此通信双方要依赖i k e 来协商这些密钥。 在需要动态建立s a 时,i k e 代表i p s e c 对s a 进行协商,为协商双方提供用 于认证的密钥交换,并对s a d 进行填充。i k e 沿用了网络安全关联和密钥管理 协议( i n t e r n e ts e c u r i t ya s s o c i a t i o na n dk e ym a n a g e m e n tp r o t o c o l , i s a l ( m p ) f 圳的框架、0 a k l e y 的模式以及安全密钥交换机制( s e c u r ek e y e x c h a n g em e c h a n i s m ,s k e m e ) 的共享和密钥更新技术,组合成了自己的认证 加密材料生成技术和协商共享策略。i k e 协商的最终结果是产生一个通过认 证的密钥以及建立在双方协商基础上的i p s e cs a 。 i k e 使用两个阶段的协商机制来实现s a 协商。在第一阶段,通信各方彼 此问建立一个已通过身份认证和安全保护的隧道,即建立i k es a 。i k e 中也采 用了s a 的概念,但与i p s e cs a 不同的是i k es a 是双向的。i k es a 中提供了通 信中用到的加密算法、散列算法、认证方法等参数,它们是由通信双方协商 制定的。在第一阶段中i k e 可以选择采用主模式( m a i nm o d e ) 或是野蛮模式 ( a g g r e s s i v em o d e ) 进行协商。其中主模式的特点是身份保护功能协商能力 灵活全面。而野蛮模式不能提供身份保护,协商功能有限,但速度更快。可 以根据具体情况选择使用。 在第二阶段,利用第一阶段刨建好的i k es a ,为i p s e c 协商具体的s a 。 这些s a 通过快速模式( q u i c km o d e ) 进行交换这种交换将在第一阶段的i k e s a 的保护之下,协商创建一个用于i p s e c 通讯的s a ,并完成密钥交换。在一 个i k es a 的保护下可以同时进行多个快速模式交换,而在一次快速模式交换 中可以创建多个i p s e cs a 。 2 7ip s e c 实施方式 i p s e c 可以实施在终端主机、网关路由器、防火墙等处,根据实施的 场合不同,i p s e c 主要有三种实旌方式【1 l : ( 1 ) 与操作系统集成 如图2 6 所示,此方式通常在主机和路由器中实施,将i p s e c 协议和网络 层无缝集成在操作系统中。有利于诸如i p 分段、p m t u 和用户套接字之类的网 络服务,可以很容易根据每个数据流的级别提供不同的安全服务。由于i p s e c 与网络层的结合涉及操作系统中网络层源代码的大量修改,实现较为困难, 般由操作系统厂商提供解决方案。 西南交通大学硕士研究生学位论文第1 8 页 3 1 1v p n 特点 v p n 的服务目的就是在共享的基础公共网络上向用户提供网络连接,不 仅如此,v p n 连接应使用户获得与专有网络相同的通信质量。合理和实用的 v p n 解决方案应能够抗拒非法入侵、防范网络阻塞。而且能安全、及时地交 付用户的重要数据。在实现这些功能的同时,v p n 还应该具有良好的可管理 性。综上所述,一个高效、成功的v p n 应具备以下几个特点: ( 1 ) 安全保障 虽然实现v p n 的技术和方式很多,但所有的v p n 均应保证通过公用网络 平台传输数据的专用性和安全性。由于v p n 直接构建在公用网上,实现简单、 方便、灵活,但同时其安全问题也更为突出。企业必须确保其v p n 上传送的 数据不被攻击者窥视和篡改,并且要防止非法用户对网络资源或私有信息的 访问。既t r a n e tv p n 将企业网扩展到合作伙伴和客户,对安全性的要求更高。 为保证传输数据的私有性和安全性,v p n 在非面向连接的公用i p 网络上建立 起逻辑的、点对点的连接,称之为建立隧道。并利用加密技术对经过隧道传 输的数据进行加密,以保证数据仅被指定的发送者和接收者了解。 ( 2 ) 服务质量保证( q o s ) v p n 应为企业数据提供不同等级的服务质量保证。不同的用户和业务对 服务质量保证的要求差别较大。对于移动办公用户,提供广泛的连接和覆盖 性是保证v p n 服务的一个主要因素。而对于拥有众多分支机构的专线v p n 网 络,交互式的内部企业网应用则要求网络能提供良好的稳定性。对于其它应 用( 如视频等) 则对网络提出了更明确的要求,如网络时延及误码率等。所 有以上网络应用均要求网络根据需要提供不同等级的服务质量保证。在网络 优化方面,v p n 必须能充分有效地利用有限的广域网资源,为重要数据提供 可靠的带宽。广域网流量的不确定性使其带宽的利用率很低,在流量高峰时 引起网络阻塞,产生网络瓶颈,使实时性要求高 x 西南交通大学硕士研究生学位论文第2 0 页 手工配置,二是采用密钥交换协议动态分发。手工配置的方法由于密钥更新 困难,只适合于简单网络的情况。密钥交换协议采用软件方式动态生成密钥, 适合于复杂网络的情况且密钥可快速更新,可以显著提高v p n 的安全性。目 前主要的密钥交换与管理标准有i k e 、s k i p ( 互联网简单密钥管理) 和o a k l e y 。 ( 4 ) 认证技术 认证技术用于防止数据被篡改与伪造,以确认信息发送者的身份并验证 信息的完整性。目前主要的认证技术有数字摘要、数字签名、数字证书等。 其原理是采用一种称为“摘要”的技术,用h a s h 函数将一段长的报文通过 函数变换,映射为一段短的报文即摘要。由于h a s h 函数的特性,两个不同 的报文具有相同的摘要几乎不可能。该特性使得摘要技术可以满足v p n 中认 证数据完整性和认证用户的需要。 3 1 3v p n 组建方式 v p n 网络大致可分三类:i n t r a n e tv p n 、a c c e s sv p n 与e x t r a n e tv p n 如图3 1 。但多数情况下需要同时用到这三种v p n 网络类型。 a c c e g sv p n 图3 一lv p n 的应用类型 西南交通大学硕士研究生学位论文第2 1 页 ( 1 ) a c c e s sv p n ( 远程访问v p n ) 指企业员工或企业的小分支机构通过公网远程拨号的方式构筑的虚拟 网,是从客户端到v p n 网关的连接。如果企业的内部人员移动或有远程办公 需要,或者商家要提供b 2 c 的安全访问服务,就可以考虑使用a c c e s sv p n 。 a c c e s sv p n 通过一个拥有与专用网络相同策略的共享基础设施,提供对企业 内部网或外部网的远程访问。a c c e s sv p n 能使用户随时随地以其所需的方式 访问企业资源。a c c e s sv p n 包括能随时使用如模拟拨号m o d e m 、i s d n 、数字 用户线路( x d s l ) 、无线上网和有线电视电缆等拨号技术,安全地连接移动用 户、远程工作者或分支机构。这种方式对于需要移动办公的企业来说是一种 经济安全、灵活自由的好方式。 ( 2 ) i n t r a n e tv p n ( 企业内部v p n ) 即企业总部与分支机构间通过v p n 进行网络连接。这是建立在v p n 网关 到v p n 网关上的连接。它适用于公司两个异地机构的局域网互连,即在 i n t e r n e t 上组建世界范围内的企业网。利用i n t e r n e t 的线路保证网络的互 联性,而利用隧道、加密等v p n 特性可以保证信息在整个i n t r a n e tv p n 上 安全传输。使企业拥有与专用网络相同的政策,包括安全、服务质量( q o s ) 、 可管理性和可靠性。 ( 3 ) e x t r a n e tv p n ( 扩展的企业内部v p n ) 指与合作伙伴企业网构成的扩展的v p n 。由于不同公司的网络相互通信, 所以要更多考虑设备的互连、地址的协调、安全策略的协商等问题,它也属 于网关到网关的连接。利用v p n 技术可以组建安全的e x t r a n e tv p n ,既可以 向客户、合作伙伴提供有效的信息服务,又可以保证自身的内部网络的安全。 e x t r a n e tv p n 通过一个使用专用连接的共享基础设施。将客户、供应商、合 作伙伴或兴趣群体连接到企业内部网。e x t r a n e tv p n 对用户的吸引力在于能 容易地对外部网进行部署和管理,外部网的连接可以使用与部署内部网和远 端访问v p n 相同的架构和协议进行部署。主要的不同是接入许可,外部网的 用户只拥有部分网络资源访问权限。这要求企业用户对各外部用户进行相应 访问权限的设定。 3 1 4v p n 使用的主要协议 有许多协议可以实现v p n ,区别主要看是在o s i 参考模型的哪一层实现, 如在应用层实现的s s l ,在会话层实现的s o c k sv 5 ,在网络层实现的i p s e c 、 m p l s 和在数据链路层实现的p p t p l 2 t p 等。 点对点隧道协议( p o i n tt op o i n tt u n n e l i n gp r o t o c o l ,p p t p ) 是p p p 西南交通大学硕士研究生学位论文第2 2 页 协议的扩充,由p p p 、p a p ( 口令认证协议) 、c h a p ( p p p 质询握手认证协议) 、 g r e ( 通用路由选择封装协议) 组成的。数据包部分先封装在p p p 协议中,然后 封装到g r e 协议中。c i a p 利用p p p 建立链路和封装数据报的内务处理。g r e 提 供了一种简单的、减少封装问题的通用目的的机制。p a p 用于通过认证该链 路的远端的身份。 第二层隧道协议( l a y e r2t u n n e l i n gp r o t o c 0 1 ,l 2 t p ) 依赖p p p 协议 建立拨号连接,加密的方法也类似于p p t p ,但这是一个两层的协议,可以支 持非i p 协议数据包的传输,如a t m 或x 2 5 ,因此也可以说l 2 t p 是p p t p 在 实际应用环境中的推广。 无论是p ”p ,还是l 2 t p ,它们对现代安全需求的认证技术的支持都不 够完善,应用范围也不够广泛。事实上,缺乏p k i 技术所支持的数字证书, v p n 也就缺少了最重要的安全特性。简单地说,数字证书可以被认为是用户 的护照,使得他( 她) 有权使用v p n ,证书还为用户的活动提供了审计机制。 缺乏数字证书的v p n 对认证、完整性和不可否认性的支持相对而言要差很多。 多协议标签交换( m u l t i p r o t o c 0 1l a b e ls w i t c h ,m p l s ) 协议的关键是 引入了标签( l a b e l ) 的概念。标签是一种短的易于处理、便于分配、不包 含拓扑信息、只具有局部意义的信息内容。m p l s 在i p 路由和控制协议的基 础上提供面向连接( 基于标记) 的交换。m p l s 实际上就是一种隧道技术,所 以使用它来建立v p n 隧道是十分容易的。在艟p l s 网络中,i p 包在进入第一 个m p l s 设备时,就被m p l s 边缘路由器用标签封装起来。m p l s 边缘路由器分 析i p 包的内容并且为这些i p 包选择合适的标签,相对于传统的i p 路由分 析,m p l s 不仅分析i p 包头中的目的地址信息,还分析i p 包头中的其他信息, 如t 0 s 等。此后所有m p l s 网络中节点都是依据这个简短标签来作为转发判 x 西南交通大学硕士研究生学位论文第2 4 页 实施在网关上时,就可以建立起网关间v p n 。 实施i p s e c 的网关一端连入一个受保护的内部网络,另一端则是不安全 的公共网络。两个网关可以通过隧道模式在i n t e r n e t 上建立起一个安全通 道,两个内部网络可以通过这个通道进行安全的通信。对于两个内部网络来 说,网关是透明的,两个内部网络就像直接连接一样。同一内部网络间的通 信可以根据主机身份认证( 使用数字证书) 施加不同的安全措施,安全级别 低的主机可以不加保护,而安全级别高的主机可以在通信全程实施加密认 证保护,这样就形成了一个提供不同安全等级的v p n 。在这个v p n 中,每一 个具有i p s e c 的网关都是一个网络聚合点,用来实现数据的交换与转发。其 中,所有目的地址指向v p n 内部地址的数据包,i p s e c 都使用网关上的s a 来定义加密或认证的算法和密钥等参数,即从v p n 一端的网关发送的数据包 只要符合安全策略,就会用相应的s a 来加密或认证( 加上a h 或e s p 头) 。s a 的产生可以是手工配置也可以由i k e 协商完成,网关内部被保护的子网用户 根本无需考虑安全,也不需要做更多的配置,因为密钥交换、核对数字签名、 加密等都是由v p n 两端网关来完成的。 3 2 2i p s e cv p n 穿越n a t 的方法 n a t ( n e t w o r ka d d r e s st r a n s l a t i o n ,网络地址转换) 用来解决i p v 4 的地 址紧缺的问题,主要方法是:在内部网络中使用内部地址,通过n a t 把内部 地址转换成合法的i p 地址在i n t e r n e t 上使用,即将内网i p 包的地址域用合法 的公网i p 地址来替换【“。 n a t 有三种类型:静态n a t 、动态地址n a t 、n a p t ( n e t w o r ka d d r e s sp o r t t r a n s l a t i o n ,网络地址端口转换) 。其中静态n a t 是将内部网络中的每个主 机都永久映射成外部网络中的某个合法的地址。而动态地址n a t 则是在外部 网络中定义了一系列的合法地址,采用 x 西南交通大学硕士研究生学位论文第2 5 页 而端口号受到e s p 的保护,n a p t 对端口号的任何改变都会被认为破坏了e s p 包;因此e s p 不能和n a p t 一起工作。 综上所述,a h 与任何n a t 都是不相容的,而目前的网关中往往应用了n a t 功能,因此a h 不适合作为构建v p n 的协议。e s p 则可以与静态n a t 与动态n a t 共 同使用,因此v p n 中使用的是e s p 协议。然而,静态、动态n a t 在用户数量达 到一定规模时同样会出现合法地址短缺的现象。n a p t 的实施则可以解决这个 问题,因为同一地址可以供多个主机使用。因此,我们还需解决e s p 与n a p t 共用的问题。 n a p t 与e s p 的矛盾实际上是两者处理先后顺序的问题。因此简单的办法 是设立一个i p s e c 网关设备专门来运行i k e 协商,并处理所有的i p s e c 分组。 将所有进入到n a p t 设备的i p s e c 分组传送到i p s e c 网关,经过处理后的数据返 回n a p t 设备,将所需的i p s e c 数据送回到客户端。u d p 端口号5 0 0 被分配给客 户端专门用于i k e 协商,但同时只允许一个i p s e c 协商通过n a p t 。在i k e 协商 完成后,我们可以使用协商好的s a 对应的s p i 来映射一个内部i p 地址。n a p t 设备要通过s p i 来确定将流入的流量传送到哪个内部地址。 比较复杂的方法是,如果n a p t 与i p s e c 实施于同一设备,那么在外网数 据包通过设备发送到内网时,必须先实施i p s e c 处理,然后实施n a 阿,在内 网数据包通过设备发送到外网时,必须先进行n a p t ,再实施i p s e c 处理。这种 方法需要将i p s e c 、n a p t 与i p 协议栈紧密结合,避免重复处理,提高实施效 率。但实施上技术难度也较大,一般由设备专业厂商来实施。 西南交通大学硕士研究生学位论文第2 7 页 理而先交给i p s e c 处理,完成i p s e c 处理后再交给i p 层处理,再发到传输层; 如果是未经过i p s e c 处理的i p 包,则进行正常的i p 处理后再发到传输层:对 于需要转发的包,先进行i p s e c 处理,然后对i p s e c 处理后的包再次进行分片。 最后将分片发送到链路层。 ( 2 ) 对于外出的数据包,当传输层数据到达i p 层时,检查如果需要进 行i

温馨提示

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

评论

0/150

提交评论