论文部分内容阅读
信息通信技术的不断进步与革新,为我们社会的不断发展提供了强有力的科技支持,为我们的生活带来了极大的便利,信息网络的应用已渗透到了现代化社会的各行各业之中。进入21世纪之后,网络技术已进入高速发展阶段。目前,互联网已普及到全世界大部分区域。计算机网络也已在经济、政治、军事等各个不同的领域得到充分的应用。不过,技术的发展就好像一把双刃剑,在人们充分利用到网络的便利的同时,网络技术的安全隐患问题也逐渐暴露出来。
由于Internet在设计之初,并未充分考虑到其安全性的问题,同时Internet的结构本身比较松散,自由性比较强,因此,这些安全隐患给不法之徒带来了可乘之机。在没有安全防护的情况下,黑客们可以轻易的对网络数据进行盗取及篡改。
而虚拟专用网技术(virtual private network,VPN),就是一种主要融合了数据机密性技术、认证技术、隧道技术以及密钥管理技术的一种网络安全解决方案。随着经济的不断发展,公司或各种组织的规模日益扩大,势必会面对企业总部和企业子部门异地通过网络交换信息的情况,同时也会面对公司客户和产品提供商进行在线交换信息的情景,而当这些信息的机密性较高,则将其直接以明文形式在公网上传输显然是不安全的。通过虚拟专用网来建网,可为此类信息交互提供安全性保护。在公共网络上通过相关技术组建虚拟的专用网络,该专用网络对于企业外部来说是透明的,只有约定好的双方才能通过它来通信,从而极大地提高了通信安全性。VPN技术不需要像建立专网那样对新的网络环境进行重新投资,只需对原有网络通信线路添加相应设备,实现安全功能,从而极大地节约了成本。
目前,VPN产品有向着多功能、高性能、嵌入式的几个方向进行发展的趋势。嵌入式VPN是随着嵌入式产品的不断发展而孕育而生的,也是本课题的研究重点。如今,嵌入式系统的发展已日趋成熟,不论在软件还是硬件上,嵌入式技术都在不断更新和完善。同时,嵌入式系统与互联网的结合也越来越紧密,当嵌入式设备接入到网络时,必须要考虑网络安全的问题,它关系到嵌入式设备在互联网领域的发展前景。另外,从VPN设备的开发来看,嵌入式系统有着面向特定用户需求定制特定系统的特点,可根据适用场景的不同灵活的对软硬件裁剪,从而满足用户的需求。其专用性较强,占用体积小,资源利用率高,可满足特定场合对VPN产品的要求,且使用灵活,易用性较高。针对嵌入式设备对网络安全性的需求以及VPN产品自身特点的两个方面,本课题的工作是基于嵌入式系统开发一种VPN网关产品,以满足企事业单位对机密数据异地传输网络安全性的要求。
本课题首先对嵌入式VPN所采用的安全协议IPSec协议做出了深入分析。IPSec提供一系列安全协议组,可保护网关之间、网关与主机之间以及主机与主机之间的通信安全。通过制定IPSec通信策略,可以定义对同谁的通信进行安全保护;保护何种类型的通信和怎样实施保护。当要对IP层数据或更上层数据实施安全保障时,可应用IPSec组件中的网络认证协议(AH)或封装安全载荷协议(ESP)对数据加工。AH协议可对数据进行完整性校验、检验数据的起始地址和实施抗重播保护:ESP协议拥有AH协议的各项功能,同时还可以对数据包提供机密性保护。ESP协议和AH协议使用一系列加解密算法为数据提供认证及加密功能。IPSec协议将一组加密算法默认制定为强制执行,以确保采用不同IPSec实现方法的设备之间能够互相对接。这些算法或密钥需要在安全通信前双方进行协商确定。可以以人工方式确定算法和添加密钥,然而人工的方式效率较低且会降低扩展性。因此,IPSec也定义了一套标准的协议,用来动态对通信双方的身份进行验证、协商验证或加密算法和生成密钥等。该协议的作用主要用于密钥管理,名称为因特网密钥交换(Internet KeyExchange),即IKE。
接着本课题对嵌入式VPN网关做出了软硬件设计。硬件平台采用Mini2440开发板,其中央处理器为S3C2440,这款微处理器采用的是ARM920T核,其核心电压为1.2V,功耗较低。S3C2440具有16KB的数据缓存和16KB的指令缓存,缓存采用哈佛结构设计。芯片采用0.13μmCMOS工艺制造。工作频率为499MHz,完全能够满足嵌入式安全网关的工作需求。此外连同开发板上的SDRAM存储系统、FLASH存储系统、以太网络接口等共同构成了嵌入式VPN网关的硬件平台;嵌入式VPN网关的软件平台基于Linux系统实现。Linux作为一款源代码开放的操作系统,具有开发成本低、内核可定制、性能良好且具有完善的网络支持体系等优点。Linux系统在嵌入式领域中的应用非常广泛,可支持ARM架构的中央处理器。本课题根据嵌入式VPN网关的硬件平台的特点对Linux源码做出了裁剪和移植,从而实现嵌入式VPN网关的软件平台,并在该软件平台上实现VPN网关功能。Linux2.6内核里已实现了对IPSec协议的支持,同时在函数库里包含了DES-CBC、HMAC-SHA1-96等算法的实现。但内核中并没有自动密钥交换协议IKE,因此IKE协议需要在应用层完成。本嵌入式安全网关的IKE协议部分通过racoon进程来实现。内核为应用层提供了pf key和Netlink套接字接口,用户或应用层的IKE协议通过这些套接字接口对内核IPSec进行配置。另外,本课题通过在应用层实现setkey进程为用户提供管理和配置内核IPSec的操作界面。
最后,本课题对嵌入式安全网关从功能和性能两个方面进行了测试,并对测试结果做出了分析。