基于IPSec协议的VPN安全网关设计.pdf

上传人:asd****56 文档编号:70340638 上传时间:2023-01-19 格式:PDF 页数:4 大小:1.62MB
返回 下载 相关 举报
基于IPSec协议的VPN安全网关设计.pdf_第1页
第1页 / 共4页
基于IPSec协议的VPN安全网关设计.pdf_第2页
第2页 / 共4页
点击查看更多>>
资源描述

《基于IPSec协议的VPN安全网关设计.pdf》由会员分享,可在线阅读,更多相关《基于IPSec协议的VPN安全网关设计.pdf(4页珍藏版)》请在得力文库 - 分享文档赚钱的网站上搜索。

1、 146 基于基于 IPSec 协议的协议的 VPN 安全网关设计安全网关设计 王志刚,石王志刚,石 颖颖(海军计算技术研究所,北京 100841)摘摘 要:要:随着 Internet 技术在各行业信息系统中的广泛应用,企业内部网络和应用系统的安全保密问题日益突出。在研究 IP 安全协议和虚拟专用网(VPN)技术的基础上,提出一种集防火墙技术和网络加密技术于一体的 VPN 安全网关的设计方案,给出主要软件模块的设计,对安全网关在实际应用系统中的应用模式进行了分析。关键词:关键词:虚拟专用网;IP 安全协议;隧道技术;加解密技术 Design of VPN Security Gateway Ba

2、sed on IPSec Protocol WANG Zhi-gang,SHI Ying(Navy Computing Technology Research Institute,Beijing 100841)【Abstract】As a result of extensive application of Internet/Intranet technology in the information system of the enterprise,the information of socialand more and more sharpening problems of networ

3、k security and information secrecy.This paper gives a resolving scheme of Virtual PrivateNetwork(VPN)security gateway with firewall and network encryption technology,based on IP Security(IPSec)protocol and VPN technology,itgives a design of main software module,and a deep analysis is made into the a

4、pplication of the scheme.【Key words】Virtual Private Network(VPN);IP security protocol;tunneling technology;encryption and decryption technology 计计 算算 机机 工工 程程Computer Engineering第第35卷卷 第第17期期Vol.35 No.17 2009 年年 9 月月September 2009安全技术安全技术 文章编号:文章编号:10003428(2009)17014603文献标识码:文献标识码:A 中图分类号:中图分类号:TP3

5、09Internet技术提供的互联性和开放性使信息的交换与共享成为现实,保护网络安全、保证信息安全成为人们日益关注的问题。防火墙和信息加密是最行之有效的2种技术,VPN安全网关则是综合这2种技术的网络安全设备。1 VPN简介简介 1.1 VPN概念及作用概念及作用 VPN技术是指采用隧道技术、加密和身份认证等方法,在公众网络上构建专用网络的技术,数据通过安全的“加密管道”在公众网络中传播。VPN技术实现了内部网络信息在公众信息网上的安全保密传输,就如同在广域网中为用户拉出一条专线。对于用户来讲,公众网络起到了“虚拟专用”的效果。通过VPN,网络对每个使用者也是专用的,不同的用户组可以建立自己的

6、“专用网”。1.2 VPN的关键技术及协议的关键技术及协议 实现VPN的关键技术和协议主要包括:(1)安全隧道技术(secure tunneling technology)。将待传输的原始信息经过加密和协议封装处理后再嵌套装入另一种协议的数据包送入网络中,像普通数据包一样进行传输。(2)用户认证技术(user authentication technology)。在隧道连接之前确认用户身份,以便系统实施资源访问控制或用户授权(authorization)。(3)访问控制技术(access control technology)。由服务提供者与网络信息资源的提供者共同协商确定对特定资源的访问权限

7、,以此实现基于用户的细粒度访问控制。(4)IPSec协议。IPSec是IETF设计的确保基于IP通信的数据安全性的机制,它不是一个单独的协议,而是给出了应用于IP层上网络数据安全的一整套体系结构1,包括:AH(Authentication Header)协议2,ESP(Encapsulating Security Payload)协议3,IKE(Internet Key Exchange)协议和用于网络验证和加密的一些算法等。IPSec规定了如何在对等层之间选择安全协议、确保安全算法和密钥交换,向上层提供了访问控制、数据源验证、数据加密等网络安全服务。IPSec定义的相关概念和术语如下:(1)

8、安全联盟(Security Association,SA)。SA构成IPSec的基础,它是2个通信实体经协商确定的一种协定。它们确定了用来保护数据包安全的IPSec协议、加密方式和密钥信息等。SADB是一个SA数据库。(2)安全策略数据库(Security Police Database,SPD)。安全策略决定了为一个数据包提供的安全服务,而对所有的IPSec方案来说,都将策略保存在一个数据库中,即SPD。(3)选择符。外出的数据包需要用选择符在SPD中检索相应的安全策略,它包括源地址、目标地址、名字、协议、上层端口。(4)安全参数索引(Security Parameter Index,SPI

9、)。SPI用于独一无二的标识出接收端的SA。由于包接收端在IP层不一定能访问到选择符内的所有字段,因此需要用SPI,目标地址,协议元组对SADB进行检索。2 VPN安全网关设计安全网关设计 2.1 设计原则和目标设计原则和目标(1)操作系统核心为自主开发的嵌入式安全增强操作 系统。(2)核心设计除了协议分析模块静态编译进OS内核外,其余的模块都作为独立的模块动态加载。作者简介:作者简介:王志刚(1965),男,高级工程师、硕士研究生,主研方向:安全操作系统,信息系统安全与保密;石 颖,助理工程师 收稿日期:收稿日期:2009-04-15 E-mail: 147(3)桥式转发,透明接入,对用户原

10、有的网络环境不产生影响。(4)支持TCP/IP协议族,对其他协议可选支持。(5)基于主机地址或子网地址的访问控制,防止数据的非授权访问。(6)支持IKE密钥分发方式。(7)使用DOC+RAMdisk的存储结构。(8)支持本地串口超级终端和WINDOWS图形界面管理。(10)提供完善的审记功能。(11)支持802.1Q的VLAN 结构,支持IPSec协议的ESP加解密模式。2.2 系统平台设计系统平台设计(1)硬件平台:采用高档Intel Server平台。2U工控机结构,高性能Server主板。Intel 体系结构,至强四核CPU。内存:2 GB。集成双1 000 MB网卡。高性能加密模块(内

11、置密码算法)。(2)系统软件平台:采用嵌入式Linux操作系统4,进行裁剪和安全增强。2.3 软件设计软件设计 在操作系统的网络模块中,设计实现了以太网网桥模块。网桥这一层是进出安全网关的所有网络数据包必须经过的一层,直接利用网桥实现了对IP数据包的安全控制。其系统软件总体结构如图1所示。在线管理模块SKE模块审计管理模块状态显示模块应用层API核心层系统配置数据维护加密认证显示管理动态连接库应用层传输层网络层网桥协议分析模块网卡驱动防火墙模块SPD处理模块SADB处理模块加密引擎模块加密模块网络协议栈过滤规则表加密参数库安全策略数据库 图图1 安全网关系统软件总体结构安全网关系统软件总体结构

12、 相关概念描述如下:(1)通信关系表 通信关系表存放2类信息:(1)与本机有密码通信关系的远端VPN网关的ID号和IP地址;(2)加密通信所使用的加密参数。此表主要用于索引远端VPN网关的加密算法及其他相关参数。(2)本地保护关系表 此表存放本地VPN网关所保护的内部子网列表,其主要作用是为了与有通信关系的远端VPN网关进行保护关系表交换,以完成VPN网关保护关系自动学习的功能。(3)远端保护关系表 此表存放所有与本机有密码通信关系的远端VPN网关保护子网的列表,用于根据加密IP包的目的地址检索保护远端网络的VPN网关。2.3.1 功能模块的设计(1)协议分析模块 该模块是整个系统最重要的模块

13、,对进出数据包进行分析,提取协议号、端口号、IP头等,然后分别调用防火墙模块,对数据包进行过滤;调用安全策略维护模块,对数据包进行安全策略查询;调用加密引擎模块,对数据包进行加解密处理。然后将处理后的IP数据包转发至其他协议栈。该模块表态编译到内核中,在系统启动时自动装载。篇幅所限,下面介绍该模块的主要设计内容。VPN安全网关设计有2块网卡:eth0和eth1。将eth0设定为内部网口,eth1设定外部网口,内部网口连接所要保护的主机或子网,外部网口连接路由器的以太网口,这样可以只对进出外部网口的数据包进行安全保密处理。协议分析模块是整个核心中的总体调度模块,它是几大核心模块中最先被加载的。L

14、inux的源代码是开放的,因此,该模块通过修改Linux核心源代码(网络层部分),静态地编译到核心内。在这个模块中需要调用其他几个模块,而它又是最先被加载的,为了找到其他模块中的函数入口,在协议分析模块初始化时,需初始化一个全局变量,将各字段的函数指针置空,变量结构如下:typedef struct _Ker_Crypt_Info ushort version;unsigned char ip_crypt_flag;/*IP报文加密标识*/unsigned char fw_log_flag;/*防火墙日志记录标识*/unsigned char(*ip_fw_ask)(/*防火墙功能函数调用入口

15、*/struct iphdr*ip_head,struct sk_buff*skb,int flag);unsigned char(*ip_crypt_ask)(/*IP报文加密判断函数入口*/struct sk_buff*skb,struct iphdr*ip_head,ulong selp_ipaddr,unsigned char flag,PSAID said,unsigned char*log_buf);unsigned char(*ker_enc_buffer)(/*IP报文加密函数调用入口*/PSAID said,unsigned char*data_buf,ushort buf_

16、len,ushort*ret_len,unsigned char*log_buf);unsigned char(*ker_dec_buffer)(/*IP报文脱密函数调用入口*/PSAID said,unsigned char*data_buf,ushort buf_len,ushort*ret_len,unsigned char*log_buf);unsigned char reserved;KER_CRYPT_INFO,*PKER_CRYPT_INFO;另外,该模块还提供一个注册函数和卸载函数,供其他模块向它注册和注销之用。其他几个模块在加载时,需要调用这个注册函数,给这个全局变量的相应字

17、段的函数指针赋一个具体的值;在卸载时,需调用这个卸载函数,再将该字段赋空。协议分析模块中的发包加密流程如图2所示。148调用SADB模块 对数据报进行加密处理 eth0 发包的网络接口 eth1 协议N Y 明文访问 允许 拒绝 加密访问 调用防火墙模块 调用安全策略查询模块 传向下层协议丢弃数据包 从上层接收到数据包 成功 失败 TCP/IP 图图2 协议分析模块中的发包加密流程协议分析模块中的发包加密流程(2)防火墙模块 维护核心中的防火墙规则表,对IP数据包过滤。该模块在启动时加载。(3)SPD维护模块 负责维护核心中的安全策略数据库和远端保护关系表,并对协议分析模块传送过来的IP包进行

18、策略查询、匹配。维护核心策略库和文件策略库的一致性。(4)SADB维护模块 负责维护核心中的通信关系表和加密参数库,索引相应的SA,然后调用加密引擎模块。(5)加密引擎模块 为加密算法模块提供动态注册,并根据上层送过来的SA,调用具体的加密认证算法。(6)加密模块 在核心层对数据进行加密并为应用层提供加密认证 功能。(7)系统配置数据维护API 提供对系统参数进行设置,对各种系统表进行增、删、改操作的函数调用,完成对配置文件的各种操作,维护文件的完整性和各个配置文件一致性,实现文件锁机制,同时负责与核心模块通信,将最新配置设入核心。(8)加密认证API 为命令程序提供数据加密、认证的函数调用,

19、可以提供用户层的加密认证函数,也可通过对核心模块的调用来完成相应的功能。(9)显示管理API 完成液晶显示屏的底层驱动,提供用于命令程序通过液晶显示系统状态的函数。(10)SKE模块 完成安全网关与安全管理系统之间的管理功能,此模块包含一个socket客户程序和一个socket服务器程序。(12)其他应用层模块 其他模块完成的功能有:向管理中心注册;对设备进行手动配置;定义系统审计事件和审计日志管理策略,并根据审计日志的管理策略对日志文件进行处理;对VPN网关当前运行状态进行查询、监控;对系统配置方案进行备份等。2.3.2 安全网关的2种工作模式设计 IPSec既可用来保护一个完整的IP载荷,

20、又可保护一个IP载荷的上层协议。这2个方面的保护分别由IPSec的2种模式传送模式和隧道模式来实现。在安全网关的设计中保持了这2种模式,传送模式保护的是上层协议,而隧道模式保护的是整个IP包5。在传送模式中,IP头和上层协议之间插入一个特殊的IPSec头,如图3所示。隧道模式受保护的包原始的IP包传送模式受保护的包IP头TCP头数据IP头IPSec头TCP头数据IP头IPSec头 IP头 TCP头数据 图图3 传送模式和隧道模式下受传送模式和隧道模式下受IPSec保护的包格式保护的包格式 在隧道模式中,整个IP数据包被封装在另一个IP数据报内,并在外部IP头和内部IP头之间插入一个IPSec头

21、。隧道模式的内部头由通信主机所创建,而外部头由提供安全服务的设备所创建。就信息加密而言,传输模式和隧道模式仅是加密格式的不同,并不影响信息加密和认证的强度。就网络安全性而言,隧道模式可以隐藏内部网络的IP地址,保证一定站点间信息流量的机密性,安全性更好一些。但是,隧道模式需要应用系统修改网络结构,重新进行IP地址划分,对用户不透明,所以,建议使用传输模式。对于传输模式不能隐藏内部网络IP地址的弱点,可以通过防火墙等安全措施弥补。3 VPN安全网关的应用安全网关的应用 基于IPSec的VPN安全网关由于透明性好、高效、安全及易用等特性,应用方式也非常灵活。它可以保护一个子网、一个局网或者一台主机

22、,通过配套研制的IP安全包,从而可为不同规模的用户在公共网络上构建自己的“私有网络”。具体应用模式如图4所示。Internet/Extranet装有IP安全包的移动用户总部网络应用系统VPN安全网关外连机构应用系统装有IP安全包的主机分支机构应用系统计算机VPN安全网关服务器服务器服务器计算机打印机打印机路由器路由器路由器计算机 图图4 VPN安全网关应用示意图安全网关应用示意图 该系统已通过国家权威部门的检测,具有加密性能高、适应性强、配置灵活、安全保密一体化的特点,已在银证联 网、铁路运输等部门获得了广泛的应用,实践证明,该系统的功能和性能均能满足各类用户的安全保密使用需求。4 VPN安全

23、网关的发展趋势安全网关的发展趋势 面对新的安全发展形势,从国际安全技术发展趋势看,安全网关的未来发展有如下4个特点:(1)采用专用的高等级的安全操作系统,进一步提高安全网关自身的安全性。(下转第151页)151只需要考虑状态E一个字节的平衡性,就(0,0)位置字节而言,猜测)(5eoK的(0,0)位置字节记为5k,那么 000000001011()()eooeckmckm=02022030335()()oockmckmk 记)3,2,1,0(,)(00=imkcfiiioi,那么上式可以用下式简单地表示:00000001010120202()()()eef ckf ckf ck=303035(

24、)f ckk (2)要对00k,01k,02k,03k,5k 5个密钥进行猜测,明文总数是322个,可见这样的时间复杂度是722,但是基于Crypton算法结构的特殊性质得到的00e的解密算式(2),可以用图2的方法将时间复杂度降低到250。),(20302024ccu个明密文对322),(203116cu个282u个)2528kue个4801001622计算复杂度为的猜测,个分别对kk4802822计算复杂度为的猜测个分别对k4803822计算复杂度为的猜测个分别对k 485822计算复杂度为的猜测个分别对k 判断平衡性0100kk,02k03k5k(图图2 修改的密钥猜测方法修改的密钥猜测

25、方法 基于322个明密文对,先猜测00k和01k,计算:)()(01011000000kcfkcfu=并且将数组),(03020ccu记录,这个数组可能出现的数值个数为242,记录每个数值的出现次数1n,若出现次数为偶数记为0,出现次数为奇数记为1。该步的时间复杂度为481632222=。基于上面猜测的00k和01k,以及对应的),(03020ccu,继续 猜 测02k,按 记 录),(03020ccu的 出 现 次 数 计 算)(0202201kcfuu=,对每个猜测记录),(031cu出现的次数 2n,),(031cu共有162种数值。对162个猜测的00k和01k,以及其对应的),(03

26、020ccu数组,都要猜测02k,因此,该步的时间复杂度为48162482222=。在已经猜测的00k,01k,02k的情况下,基于),(031cu继续猜测03k,计算)(0303312kcfuu=,并且记录它的每个数值出现次数3n,2u共有82个取值。这一步的时间复杂度同样可以计算得到,其值为482。在上面的工作前提下,猜测5k的取值,根据2u的记录计算)(52kue,并且统计它的出现次数n,最后对每个00k,01k,02k,03k,5k的 猜 测 根 据 出 现 次 数 计 算82个)(52kue的异或值,这个异或值就是判断平衡性的标准。由上面的分析可以看到,这种猜测密钥的方法减少了很多重

27、复计算的情况,并且每个步骤中的数值出现次数记录值(1n,2n,3n,n)为0时可以不给予考虑,这样就可以大大减少计算量。可以选择几个不同的4-集重复利用这种分析方法对 6轮Crypton算法进行分析,就可以得到正确的密钥,因此,这种分析方法需要的明文数量是322n,时间复杂度是250。4 结束语结束语 对6轮Crypton算法的分析,相对1-集构造的Square攻击,本文用4-集构造的平衡性可以攻击一些弱点,并将时间复杂度降低到250。AES的征集掀起了分组密码研究的高潮,15个AES候选算法反映了当前分组密码设计的水平,因此,对这些密码算法的安全性分析具有很重要的意义。在对分组密码算法的攻击

28、方法的改进上,也需要进一步的研究。参考文献参考文献 1 Lim C.Crypton:A New 128-bit Block CipherC/Proc.of the 1st AES Candidate Conference.California,USA:s.n.,1998.2 Daemen J,Knudsen L R,Rijmen V.The Block Cipher SquareC/Proc.of FSE97.S.1.:Springer-Verlag,1997:149-165.3 He Yeping,Qing Sihan.Square Attack on Reduced Camellia Ci

29、pherC/Proc.of ICICS01.S.1.:Springer-Verlag,2001:238-245.编辑 索书志(上接第148页)(2)硬件化和芯片化成为趋势,针对新的应用协议需要,如解压缩、语音、视频的处理,必须逐步在产品中集成相应的专用加速引擎来获得更高的性能,如网络处理、安全处理性能和加密性能等。(3)硬件平台多样化,为适应各种安全需要,安全网关产品的硬件平台出现了多样发展的趋势,如有基于通用CPU的X86架构、ASIC架构及目前比较热门的基于网络处理器(NPU)架构,还有一些直接使用嵌入式芯片作为主处理器的架构,如基于Power PC,MIPS,ARM等嵌入式CPU架构。(

30、4)功能多样性,进一步集成IDS/IPS、防病毒、防垃圾邮件等安全功能。5 结束语结束语 本文在研究网络加密和防火墙技术的基础上,描述了一种VPN安全网关系统的技术设计和应用设计。该安全解决方案具有很好的实用性和网络兼容性,对研制新一代高性能自主网络安全产品具有一定的现实意义。参考文献参考文献 1 Kent S,Atkinson S.Security Architecture for the Internet ProtocolS.RFC 2401,1998.2 Kent S,Atkinson R.IP Authentication HeaderS.RFC 2402,1998.3 Kent S,Atkinson R.IP Encapsulating Security Payload(ESP)9S.RFC 2406,1998:2-20.4 邹思轶.嵌入式 Linux 设计与应用M.北京:清华大学出版社,2002.5 韩儒博,徐孟春.虚拟专用网络及其隧道实现技术J.微计算机信息,2005,(10):1-3.编辑 索书志

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 技术资料 > 其他杂项

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知得利文库网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号-8 |  经营许可证:黑B2-20190332号 |   黑公网安备:91230400333293403D

© 2020-2023 www.deliwenku.com 得利文库. All Rights Reserved 黑龙江转换宝科技有限公司 

黑龙江省互联网违法和不良信息举报
举报电话:0468-3380021 邮箱:hgswwxb@163.com