王艳涛 刘建辉 曹 辉
(辽宁工程技术大学 阜新 123000)
摘 要
由于Inter net的不安全性,许多团体和组织为了在这个全球性的开放网络上进行安全的内部通信,开发并采用了虚拟专用网络技术。首先介绍了V PN的概念以及IP SEC体系结构及实现方法,全面分析和比较了目前的V PN技术,同时研究了通用安全网关的实施架构和功能,本着高效、安全的原则提出了一个基于L inux的V PN安全网关的解决方案,具体实施借鉴了双宿主防火墙的架构,在IPSEC模块的基础上添加了防火墙模块和网络地址转换模块,最后在基于Linux定制的操作系统上进行整合。
关键词:网络安全协议 网关 防火墙 网络地址翻译
中图分类号:T P393.04
Research of VPN Safe Gateway Based on Linux
Wang Yantao Liu Jianhui Cao Hui
(Liaoning T echnical U niversity,Fuxin 123000)
Abstract:Because of the unsafety of Internet,a lot of g roups and organizations,in or der to communicate safely in these global open netw orks,have developed and adopted the V irtual Priv ate N etwork technology.T his text introduces the concept,IPSEC system structur e and implementation method of V PN at first,analyzes and compares present VP N technolog y in an all-round w ay,studies implementation building up and function of the safe gateway in common use at the same time,puts fo rward a solutio n based on L inux in line wit h the principle of the high-efficiency and secur ity,refer ences pairs of host framework o f fire w all to im plement concretely,adds fire w all module and net address translation module o n the basis of IP SEC module,combines on the basis of L inux customized oper ating system finally.
Key words:IPSEC,g atew ay,firewall,net address translation
C lass number:T P393.04
0 引言
VPN(Virtual Private Network)技术可以使企业采用廉价的Internet公共网络组建自己的企业VPN,使用隧道技术对传输的数据进行严格的保护。虚拟专用网(VPN)企业网在Internet网等公共网络上的延伸,通过一个私用的通道来创建一个安全的私有连接,虚拟专用网络通过安全的数据通道将远程用户、公司分支机构、公司的业务合作伙伴等跟公司的企业网连接起来,构成一个扩展的公司企业网。在中国,VPN存在广泛且持续的市场要求,企业、信息化建设需要VPN,许多跨区域发展的大型企业,要实现资源的集中管理需要VPN,网上传输的内容从语音、文本发展到图像、视频和三维等都需要VPN。这些都意味着,VPN 将给中国企业带来崛起的机会。
1 VPN原理
VPN属网关型安全设备,架构于局域网和路由器之间,无需改变网络原有配置,即可无缝接入公共网络;它根据用户设定的安全策略有选择地对从局域网发出的IP数据包进行安全加密,构成安全通信隧道,有效保证数据的完整性和机密性。1.1VPN的概念
收到本文时间:2005年3月3日
VPN 即虚拟专用网,现代意义上的VPN,普遍被认为是一种基于数字网络的安全技术。随着Internet 的日渐普及,人们开始尝试在Internet 上架构自己的专用网络,但这首先要解决的问题就是安全,因为Internet 本身是开放式的,并不能提供任何安全保障。使用现代密码技术,可以克服安全因素造成的障碍,从而造就了现在所谓的 虚拟专用网!。 虚拟!的含义是指在开放、不安全的网络环境中利用加密技术构建专用、安全的通信通道,从而模拟出一个 专用!的网络[3]
。由于这种 虚拟!的方法在安全意义上是高可信的,又节省了构建专用网络的物理线路成本,因此已经成为了一种具有很高应用价值的技术。
1.2VPN 的优缺点
企业界采用一种新的技术,首要的考虑往往是降低成本,但和传统的专用网络相比,虚拟专用网络的优点包括:省去了租用线路的成本、节省了端用户的成本、节省了电信开销、不再需要复杂的网络拓扑结构设计、管理更容易、扩展性更好。
当然,VPN 技术也有一些局限,尤其是当VPN 的概念应用到实际的IP 网络上时,VPN 可能的缺点有:用户需要一定的安全知识、维护和管理开销大和服务质量下降等。
2 IPSEC 体系结构及实现方案
2.1IPSEC 协议概述2.1.1IPSEC 协议简介
IPSEC 协议即IP 层安全协议,它是基于IP 层
的,提供对IP 及其上层协议的保护。IPSEC 协议是IETF 的IPSEC 工作组1998年提出的将安全机制引入IP 层的一系列的协议标准。
IPSEC 协议族能够提供基于IP 网络环境的主机到主机、主机到网关、网关到网关的数据通信保护。这些安全保护主要有如下的安全协议和算法来实现:ESP(Encapsulating Security Payload,封装安全载荷)、AH (Authentication Header,认证报头)、IKE (Internet Key Exchange,因特网密钥交换)、加密算法和验证算法。在IPSEC 协议套件中,有两种具体的安全封装处理协议:封装安全载荷(ESP)和认证报头(AH ),AH 可提供数据的发源地身份认证、保障数据的完整性和防止IP 数据包重播攻击;ESP 除了具有以上功能外,还可以提供数据机密性保护功能。2.1.2IPSEC 协议的封装模式
IPSEC 实现有两种封装模式:传输模式
(Transport)和隧道模式(T unnel)。两种模式的区别在于隧道模式保护整个IP 数据包,传输模式只是保护IP 包内的数据载荷而不保护IP 协议头部,
更重要的一点是,在网关上实施的IPSEC 隧道模式,不但能保护网络通信数据,而且能对外屏蔽内部子网的拓扑结构,使得外部的网络看到的只是网关,从而增强了通信子网的保护[4]
。
2.2IPSEC 体系结构
IPSEC 组件包括安全协议验证头(AH)和封装安全载荷(ESP)、安全关联(SA)、密钥管理(IKE)及加密和验证算法等。图1显示了IPSEC 的体系结构、组件及各组件间的相互关系。
图1 IPSEC 的体系结构
2.3IPSEC 的实施
IPSEC 的实施有两种方式:第一种是将IPSEC 插入IP 层与数据链路层之间,称为堆栈中的块(BIT S,Bump In The Stack);第二种是与操作系统集成,即将IPSEC 插入IP 层[1]。2.3.1IPSEC 传统的实现方案
IPSEC 传统的实现方案就是将IPSEC 插入IP 层与数据链路层之间。2.3.2传统方案的优缺点
优点:IPSEC 处理模块于内核,IPSEC 处理程序几乎对内核没有进行修改。
缺点:多次重复处理IP 包,大大增加了IP 包在IP 层的处理时间,极大地影响了IP 包处理的效率,这对于业务繁忙的网关,将影响正常的通讯,成为通讯的瓶颈。
2.3.3新方案的提出(体系结构)
鉴于传统方案的缺点,本方案采用了与操作系
统集成的方案,并在网络层添加了防火墙模块和网络地址翻译模块(如图2),我们采用的方案是IP+IPSEC+Firew all+NAT,修改内核的标准IP 处理
程序,将IP 、IPSEC 、Firewall 和NAT 处理程序捆绑,形成新的IP 层处理。来提高网关的效率和网络的安全等级,使网关成为通信瓶颈的可能性大大
降低。
图2 传统的实现方法到新方案的过渡
基于以上的分析,VPN 网关的体系结构可抽
象为三层:管理系统层、IP +IPSEC +Firew all+NAT 层和操作系统内核层。如图3所示:
用户管理系统层
内核
I P+IPSEC+F W+NA T 层
操作系统内核层
图3 VPN 网关的体系结构
2.3.4新方案的优点
(1)处理效率高,IPSEC 处理与IP 处理融合在一起,提高了网关的处理效率,极大地提高了IP 包在IPSEC 网关上的传递速度,使IPSEC 网关成为瓶颈的可能性大大降低;
(2)由于添加了防火墙模块,对进入IP 层的IP 包进行先期判决处理,根据用户自定义的规则,过滤掉不安全网段的IP 包,同时也丢弃了内部网用户对敏感站点的访问,减轻了后续的IPSEC 处理模块的工作负荷,提高了系统的吞吐量和安全性;
(3)因为在原来的基础上还添加了NAT 处理模块,在IP 包进入和外出网关时进行地址转换,可以有效隐藏内部网的IP 地址,提高了网络的安全等级。
3 基于Linux 的VPN 安全网关的实现
3.1VPN 安全网关系统的总体框架
3.1.1总体框架
VPN 网关系统从软件结构上分为应用层模块和内核层模块,运行在应用层的软件模块有:SAD 手工注入接口模块和密钥管理程序模块;运行在内核层的软件模块有IPSEC 处理模块(包括策略管
理模块、IPSEC 协议引擎、IPSEC 基本协议及密码算法)、双向NAT 模块和防火墙模块。
3.1.2主要模块功能描述
IPSEC 处理模块:VPN 网关的核心处理模块之一,主要完成IP 数据包的AH 、ESP 封装、数据认证、数据加密和解密等操作,在网络传输上,依据传输方向有两种不同的数据操作,对进入的IP 数据包的IPSEC 处理操作和对外出的IP 数据包的IPSEC 处理操作。
防火墙模块:作为进入IP 包的一个先期判决处理,实现一个基本的包过滤防火墙,根据用户自定义的过滤规则过滤掉来自不安全网段的IP 包,同时也丢弃内部网用户对敏感站点的访问,这样可以减轻后续的IPSEC 处理模块的工作负荷,提高系统的吞吐量。
双向NAT 模块:在IP 包进入和外出网关时,对源地址和目标地址进行实时地址转换,对外出包,源地址改为网关IP 地址,对于进入包则还原为其内部网主机的IP 地址,这样可以使多个内部地址共享一个外部IP 地址,节省企业的IP 地址资源,还可以隐藏内部网的IP 地址,提高网络安全等级。
由于VPN 网关系统的实现有多个模块相互调用,并且跨越了操作系统应用层和内核层,必须为相应的模块提供明确的调用接口,主要有:
(1)处于应用层的SAD 手工注入接口模块和密钥管理程序模块与处于系统内核的SAD 管理模块通信的接口,根据RFC2367,该接口采用PF_Key 的协议族的socket 接口。
(2)内核层中的IPSEC 模块中的各子模块之间采用函数调用,全局变量实现数据交互。(3)IPSEC 处理模块、防火墙模块和双向NAT 模块三者之间的接口。
3.2IPSEC+IP 的设计思路和具体实现
3.2.1IPSEC+IP 实现的总体思想
在基于IPSEC 技术的VPN 网关的实现中,IPSEC 协议主要是按照安全联盟的协定来完成对IP 数据包的封装和加密以及认证操作。因为是对IP 数据包的操作,故而IPSEC 协议的实现应该在IP 网络层,对上层协议透明,在Linux 操作系统中,IP 网络层协议的实现模块是在系统内核当中完成的,所以,首先IPSEC 协议的实现应该定位在Linux 操作系统的内核当中,另外对于密钥协商和管理协议IKE 的实现、对IPSEC 的安全策略的配置和管理的实现都应该在应用程序模块来实现。
3.2.2基于Linux操作系统的定制
对于IPSEC VPN网关来说,制作操作系统的过程就是对现有的网关的操作系统进行功能定制、系统裁剪,最后在另一个存储设备(硬盘或者其它的启动设备)上生成一个新的更精炼的Linux操作系统,并作为安全网关的外部存储设备和操作系统设备。
制作微操作系统的过程主要分为三个大的步骤:生成Linux新内核、创建微操作系统的根文件系统、生成系统盘BOOTDISK。
3.3本系统方案的创新点
(1)无缝嵌入操作系统。直接关系到操作系统内核的IP层加密和认证技术,分析和修改操作系统内核的源代码,将安全模块无缝地嵌入到操作系统,重构操作系统内核。
(2)VPN网关操作系统是基于Linux操作系统定制的专用微操作系统,具有良好的运行特性、精炼、体积小和运行速度快等优点。
(3)针对网关的特点,在IP层的基础上添加了防火墙模块和NAT模块,并将其无缝整合到网络内核,提高了网关的吞吐量和系统的安全性。
(4)该安全网关结合防火墙功能于一体,包过滤功能较强,既可以做到所有的IP包的允许和禁止,也可以实现ICM P包和传输层的TCP、UDP包的过滤,VPN功能实现了机密性、认证和完整性检查。
4 结束语
通过对传统实施方案的分析,本着高效、安全的原则提出了一个基于Linux的VPN安全网关的解决方案,即在IPSEC模块的基础上添加了防火墙模块和网络地址转换模块,集网关和防火墙于一体,提高了网关的吞吐量和系统的安全性。
参考文献
[1]Car lton R.Davis著,周永彬,冯登国,徐震,李德全等译.
I PSEC:V PN的安全实施[M].清华大学出版社,2002
[2]陈莉君著.Linux操作系统内核分析[M].人民邮电出
版社,2000
[3]戴宗坤,唐三平.V PN与网络安全[M].电子工业出版
社,2002
[4]Glean Herr in.Linux IP N etw orking-A Guide to the I m
plementation and M odificat ion of the L inux P rotocol Stack [M].2000,5
(上接第33页)
串联,这对仿真结果影响较大。
参考文献
[1]王正中.现代计算机仿真技术及其应用[M].北京:国
防工业出版社,1991
[2]Abraham I Pressman.Switching Power Supply Design
[M].N ew Yor k:M c Gr aw-Hill,1991
[3]王留芳.电流型双端反激式开关电源的研究[D].南
京:东南大学,1999
[4]Raymond S Ramshaw,Dereck C Schuurmann.P SP ICE
Simulation of Power Electrioncs Cir cuits[M].London: Chapman and Hall,1997