互联网防火墙技术与应用
1 引言
随着internet的飞速发展,电子商务、电子政务的推出,越来越多网络与internet联网,在网上设置提供公众服务的主机系统,如:web server、email、server、ftp server等。同时,越来越多的用户利用web获取、发布信息,使internet上的信息量迅速增长,一些非法侵入他人系统、窃取他人机密、破坏他人系统等恶性行为也悄然而至,严重的还可危及国家的安全。内部网与internet网相连时,如果简单将这些主机只用路由直接联上internet网络,无疑是让黑客有机可乘,其可能会想尽办法破坏你的主机。如果不采取必要的安全措施加以自我保护,后果不堪设想。
人们采用了许多安全技术来提高网络的安全性,最具代表性的安全技术有:数据加密、容错技术、端口保护与主体验证及防火墙(firewall)技术。其中,防火墙技术是近年来提出并推广的一项网络安全技术。
2 防火墙的概念与基本类型
防火墙是网络的一种保护措施。它将提供给外部使用的服务器通过一定技术和设备隔离开来,让那些设备形成一个保护区,我们一般称之为防火区。它隔离内部网与外部网,并提供存取控制与保密服务,使内部网有选择的与外部网进行信息交换,防火墙增强了内部网络的安全性,用户可以安全地使用网络,更好地利用网络的资源,而不必担心受到黑客的袭击。
其次,通过设立防火区,我们可以有效地对内部网络访问internet进行控制 ,包括统计流量、控制访问等方面,有效对费用和访问内容根据需要进行把关。
另外通过防火区,使内部网络与internet的网段得到隔离,内部网络的ip地址范围就不会受到internet的ip地址的影响,保证了内部网络的独立性和可扩展性。
防火墙是一种安全有效的防范技术,是访问控制机制、安全策略和防入侵措施。从狭义上来讲,防火墙是指安装了防火墙软件的主机或路由器系统;从广义上讲,防火墙还包括了整个网络的安全策略和安全行为。它是通过在网络边界上建立起来的相应网络安全监测系统来隔离内部和外部网络,以确定哪些内部服务允许外部访问,以及允许哪些外部服务访问内部服务,阻挡外部网络的入侵。
实际上,防火墙的概念是借用了建筑学上的一个术语。在建筑学中的防火墙是用来防止大火从建筑物的一部分蔓延到另一部分而设置的阻挡机构。计算机网络的防火墙是用来防止互联网的损坏,如黑客攻击、病毒破坏、资源被盗用或文件被篡改等波及到内部网络的危害。它是内部网络与外部网络之间的一种安全防范措施系统。internet上的防火墙如图1所示。
|
|
从技术上看,防火墙有4种基本类型:包过滤型、代理服务器型、电路层网关、混合型。它们之间各有所长,具体使用哪一种或是否混合使用,要看具体需要。
2.1 包过滤型防火墙(packet filter firewall)
包过滤器安装在路由器上,当然pc机上也可以安装包过滤软件。它工作在网络层(ip),因此也称为网络防火墙。它基于单个包实施网络控制,根据所收到的数据包的源地址、目的地址、tcp/udp、源端口号及目的端口号、包出入接口、协议类型和数据包中的各种标志位等参数,与用户预定的访问控制表进行比较,决定数据是否符合预先制定的安全策略,决定数据包的转发或丢弃,即实施信息过滤。它实际上是控制内部网络上的主机直接访问外部网络,而外部网络上的主机对内部网络的访问则要受到限制。这种防火墙的优点是简单、方便、速度快、透明性好,对网络性能影响不大,但它缺乏用户日志(log)和审计信息(audit),缺乏用户认证机制,不具备登录和报告性能,不能进行审核管理,且过滤规则的完备性难以得到检验,复杂过滤规则的管理很困难,因此安全性较差。
2.2 代理服务器型防火墙(proxy service firewall)
代理服务器型防火墙通过在主机上运行代理的服务程序,直接对特定的应用层进行服务,因此也称为应用型防火墙。其核心是运行于防火墙主机上的代理服务器进程。代理网络用户完成tcp/ip功能,实际上是为特定网络应用而连接2个网络的网关。对每种不同的应用层(如e-mail、ftp、telnet、www等)都应用一个相应的代理。外部网络与内部网络之间想要建立连接,首先必须通过代理服务器的中间转换,内部网络只接收代理服务器提出的要求,拒绝外部网络的直接请求。代理服务可以实现用户认证、详细日志、审计跟踪和数据加密等功能,并实现对具体协议及应用的过滤,如阻塞java或java script。这种防火墙能完全控制网络信息的交换,控制会话过程,具有灵活性和安全性,但可能影响网络的性能,对用户不透明,且对每一种服务器都要设计一个代理模块,建立对应的网关层,实现起来比较复杂。
2.3 电路层网关(circuit gateway)
电路层网关在网络的传输层上实施访问策略,是在内、外网络主机之间建立一个虚拟电路,进行通信,相当于在防火墙上直接开了个口子进行传输,不像应用层防火墙那样能严密地控制应用层的信息。
2.4 混合型防火墙(hybrid firewall)
混合型防火墙把过滤和代理服务等功能结合起来,形成新的防火墙,所用主机称为堡垒主机,负责代理服务。各种类型的防火墙各有其优缺点。当前的防火墙产品已不是单一的包过滤型或代理服务器型防火墙,而是将各种安全技术结合起来,形成一个混合的多级防火墙,以提高防火墙的灵活性和安全性。一般采用以下几种技术:动态包过滤;内核透明技术;用户认证机制;内容和策略感知能力;内部信息隐藏;智能日志、审计和实时报警;防火墙的交互操作性等。
3 防火墙的主要技术
防火墙得益于internet的发展,这几年,防火墙产品异军突起,产品很快经历了基于路由器的防火墙、用户化的防火墙工具套、建立在通用操作系统上的防火墙、具有安全操作系统的防火墙四个阶段。
3.1 现阶段的防火墙主要采用的技术
①包过滤技术,其原理在于监视并过滤网络上流入流出的包,拒绝发送那些可疑的包。由于包过滤技术无法有效地区分同一ip地址的不同用户,它的安全性相对较差。
②代理服务技术,其原理在于在应用网关上运行应用代理程序,一方面代替原来的客户建立连接,另一方面代替原来的客户程序,与服务器建立连接,使得用户可以通过应用网关安全地使用internet服务,而对于非法用户的请求将不予理睬。
③多级的过滤技术。
防火墙采用了分组、应用网关和电路网关的三级过滤措施。在分组过滤一级,能过滤掉所有的源路由分组和假冒的ip源地址;在应用网关一级,能利用fip、smtp等各种网关,控制和监测internet提供的所有通用服务;在电路网关一级,实现内部主机与外部站点的透明连接,并对服务的执行严格的控制。
④网络地址转换技术。
防火墙利用nat技术,就如我们使用的电话总机,当不同的内部网络向外连接时使用相同的ip地址(总机号码);而内部网络互相通讯时则使用内部ip地址(分机号码)。这样,两个ip地址就不会发生冲突,内部网络对外部网络来说是透明的,防火墙能详尽记录每一个主机的通信,确保每个分组送往正确的地址。
⑤internet网关技术。
由于防火墙是直接串接在网络之中,它必须支持用户在interne互连的所有服务,同时还要防止与internet服务有关的安全漏洞。故它要能以多种安全的应用服务器(包括ftp、news、www等)来实现网关功能。
⑥安全服务器网络(ssn)。
为适应越来越多的用户向internet上提供服务时对服务器保护的需要,防火墙采用分别保护的策略保护对外服务器。它利用一张网卡将对外服务器作为一个独立网关完全隔离。这就是安全服务网络(ssn)技术,对ssn上的主机既可单独管理,也可设置成通过ftp、telnet等方式从内部网上管理。ssn与外部网之间有防火墙保护,ssn与内部网之间也有防火墙保护,一旦ssn受破坏,内部网络仍会处于防火墙的保护之下。
⑦用户鉴别与加密。
为了降低在telnet、ftp等服务和远程管理上的风险,防火墙采用一次性使用的口令字系统作为用户的鉴别手段,并实现了对邮件的加密。
⑧审计和告警。
现在的防火墙产品的审计和告警功能已十分完善,都包含日志文件,详细记录网络通信信息。告警功能会按每一个tcp或udp探寻,并发出邮件、声响等多种方式报警。
3.2 防火墙的缺点
防火墙最大的问题在于由内部网络访问外界网络的困难。基本上,防火墙利用拨号帐号来减少对于internet的使用,必须选登录到防火墙才能做其他对internet的access动作。因此一些需要直接连接internet程序(如netscape)便无法在防火墙后方顺利动作,解决的办法是使用proxy serer。
3.3 防火墙的安全性
目前的防火墙还不够完善,因为它还敞着大门等别人来攻击。在防火墙建设过程中,应取消所有不需要的功能,例如netstat、systat、tftp、bootp、finger。甚至你可以关掉telnet,只允许rlogin或vica-versa。此外,防火墙采用滤波技术,滤波通常使网络的性能降低50%以上,如果为了改善网络性能而购置高速路由器,又会大大提高经济预算,而一个高速路由器的价格可能很高,这使滤波器无法广泛应用。而且,只装有滤波器往往还不足以保证安全,尤其无法防止防火墙内侧的攻击。因此,防火墙技术往往只作为辅助安全策略。
4 防火墙的配置
防火墙配置有三种:dual-homed方式、screened-host方式和screened-subnet方式。 dual-homed方式最简单。dual-homed gateway放置在两个网络之间,这个dual-homed gateway又称为bastionhost。这种结构成本低,但是它有单点失败的问题。这种结构没有增加网络安全的自我防卫能力,而它往往是受黑客攻击的首选目标,它自己一旦被攻破,整个网络也就暴露了。
screened-host方式中的screeningrouter为保护bastionhost 的安全建立了一道屏障。它将所有进入的信息先送往bastionhost,并且只接受来自bastionhost的数据作为出去的数据。这种结构依赖screeningrouter和bastionhost,只要有一个失败,整个网络就暴露了。
screened-subnet包含两个screeningrouter和两个bastionhost。在公共网络和私有网络之间构成了一个隔离网,称之为"停火区"(dmz,即demilitarizedzone),bastionhost放置在"停火区"内。这种结构安全性好,只有当两个安全单元被破坏后,网络才被暴露,但是成本也很昂贵。
5 几种防火墙常用产品
5.1 pix
美国cisco系统公司是世界上占领先地位的网间网互联技术和产品的公司,近年来,它的pix防火墙系列作为一种理想的解决网络安全的产品,
pix防火墙的内核采用的是基于适用的安全策略(adaptive security algorithm)的保护机制,asa把内部网络与未经认证的用户完全隔绝。每当一个内部网络的用户访问internet,pix防火墙从用户的ip数据包中卸下ip地址,用一个存储在pix防火墙内已登记的有效ip地址代替它,把真正的ip地址隐藏起来。pix防火墙还具有审计日志功能,并支持snmp协议,用户可以利用防火墙系统的包含实时报警功能的网络浏览器,产生报警报告。
pix防火墙通过一个cut-through代理要求用户最初类似一个代理服务器,在应用层工作,但是用户一旦被认证,pix防火墙切换会话流和所有的通信流量,保持会话状态的双方就会快速和直接地进行通信。因此,pix防火墙获得了极高的性能。cut-through处理速度比代理服务器快得多。pix防火墙采用了增强的多媒体适用安全策略。应用了pix防火墙的网络,就不需再作特殊的客户设置。
5.2 checkpoint firewall
check point是美国一家大型软件公司,曾经率先提出安全企业连接开放平台(opsec)概念,为计算机提供了第一个企业级安全结构。目前的最新产品是check point firewall-1 v4.1防火墙。checkpoint firewall-1是一个老牌的软件防火墙产品,它是软件防火墙领域中名声很好的一款产品,在世界范围内的软件防火墙中销售量排名第一。
新版本的firewall-1主要增强的功能是在安全区域支持entrust技术的数位证明(digital certificate)解决方案;以公用秘钥为基础,使用x.509的认证机制ike。firewall-1支持ldap目录管理,可帮助使用者定义包罗广泛的安全政策。
firewall-1提供顾客包含远端的使用者使用多种安全的认证机制,以存取企业资源。在通信被允许进行之前,firewall-1认证服务可安全地确认他们身份的有效性,而不需要修改本地客户端应用软件。认证服务是完全地被集成到企业整体的安全政策内,并能经由firewall-1图形使用者界面集中管理。所有的认证都能经由防火墙日志浏览(log viewer)来监视和追踪。目前该产品支持的平台有windows nt、win9x/2000、sun solaris、ibm aix、hp-ux等。
5.3 nai gauntlet
这是一种基于软件的防火墙,支持nt和unix系统,目前的最新版本是gauntlet firewall 2.1 for nt/unix。作为基于应用层网关的gauntlet防火墙,集成了nt的性能管理和易用性;应用层安全按照安全策略检查双向的通讯。具有用户透明、集成管理、强力加密和内容安全、高吞吐量的特性。可应用于internet、企业内部网和远程访问。gauntlet防火墙具有友好的管理界面,其基于java或nt环境,可以运行在web浏览器中,支持远程管理和配置,可从网络管理平台上监控和配置,如nt server和hp openview。gauntlet还支持通过服务器、企业内部网、internet来存取和管理snmp设备。gauntlet防火墙支持流行的多媒体实时服务,如real audio/video、microsoft netshow、vdolive。
5.4 sonicwall
sonicwall系列防火墙是sonic system公司针对中小企业需求开发的产品,有着很高的性能和极具竞争力的价格,适合中小企业用户采用,它是一款硬件防火墙。其主要的功能是阻止未授权用户访问防火墙内网络;阻止拒绝服务攻击,并可完成internet 内容过滤;实现ip地址管理,网络地址转换(nat);制定网络访问规则,规定对某些网站访问的限制等。 该系列防火墙价格便宜,性能价格比很好,适合中小企业及soho办公环境采用。
5.5 netscreen
netscreen公司的netscreen防火墙产品是一种新型的网络安全硬件产品,目前其发展状况非常好,可以说是硬件防火墙领域内的新贵。netscreen的产品完全基于硬件asic芯片,它就像个盒子一样安装使用起来很简单。同时它还是一种集防火墙、vpn、流量控制三种功能于一体的网络产品。
netscreen把多种安全功能集成在一个asic芯片上,将防火墙、虚拟专用网(vpn)、网络流量控制和宽带接入这些功能全部集成在专有的一体硬件中,该项技术能有效消除传统防火墙实现数据加密时的性能瓶颈,能实现最高级别的ipsec。 netscreen防火墙的配置可在网络上任何一台带有浏览器的机器上完成,netscreen的优势之一是采用了新的体系结构,可以有效地消除传统防火墙实现数据加盟时的性能瓶颈,能实现最高级别的ip安全保护。
6 防火墙软件
单纯的防火墙除了linux核心及基本网络套装软件(inetd,telnetd和telnet,ftpd和ftp)外,不需外加任何软件。所以有些软件可以使你的防火墙更有用,这里简单介绍以下软件。
6.1 is firewall toolkit
tis中有一套程序用来进行firewalling,这些程序和socks基本上相同,但采用了不同的设计策略。socks是用一个程序来完成所有的internet动作,tis则用不同的功能发展不同的程序。
以www和telnet作例子,在socks中,设定一个config文件和一个daemon,透过这个文件及daemon,telnet及www可以正常使用,就宛如你没把它们关掉前一样。而在tis toolkit中,须为www and telnet各设一个daemon及config文件。完成之后,其他的internet access仍被禁止,直到你完成其设定为止。如果某一特定功能没有daemon(如talk),你可以使用“plug-in”的daemon,只是不像其他的工具那样有弹性且不易使用罢了。
socks易于安装、易于complie且具有较大的弹性。如果你想严格控制网络内的使用者,则tis toolkit的安全性较佳。但二者都提供了对外的绝对保护。
6.2 tcp wrapper
tcp wrapper不是一个firewalling工具,但它提供了许多相同的效果。通过tcp wrapper,你可以控制谁有权access你的机器和access那些服务,同时可能追踪连线的记录,而且它还提供了一个基本的侦测伪装功能。tcp wrapper基于一些理由,并未广泛的运用。
6.3 ipfw和ipfw admin
这是国内使用最多的防火墙软件之一,它使用和安装都比较简单,可以提供转向功能。缺点是需要unix核心的支持,有时会导致要求重新编译unix核心,这对于某些网管人员会是一个不小的问题。
6.4 proxy server
proxy server需要额外的软件,你可以从互联网上下载所需软件。在sock-conf下同时有一个config文件范例。
socks的程序需要两个configuration文件。一个说明那些access是被允许的,另一个则是把请求route到适当的proxy server。access文件必须设在server上。而routing文件则要装在每部unix机器上。
防火墙内的dns,在防火墙内安装dns是很简单的事,只要在防火墙的机器上装个dns,并且将防火墙内的机器dns设定改成它就行了。
proxyserver的缺点,无法处理udp封包是proxyservers的致命伤。
7 防火墙的选购策略
7.1 认真制定安全政策
选购防火墙前,要制定一个周密计划。安全政策是规定什么人或什么事允许连接到哪些人或哪些事。也就是说,事先要考虑把防火墙放在网络系统的哪一个位置上,才能满足自己的需求,才能确定欲购的防火墙所能接受的风险水平。
7.2 要了解防火墙的最基本性能
防火墙一般应具备如下性能:
①防火墙除包含先进的鉴别措施,还应采用如包过滤技术、加密技术、可信的信息技术等尽量多的技术。同时需要配备身份识别及验证、信息的保密性保护、信息的完整性校验、系统的访问控制机制、授权管理等。
②防火墙过滤语言应该是友好灵活的,同时应具备若干诸如源和目的ip地址、协议类型、源和目的tcp/udp端口及入出接口等过滤属性。
③防火墙应该忠实地支持自己的安全性策略,并能灵活地容纳新的服务和机构,改变所需的安全策略。防火墙应包含集中化的smtp访问能力,以简化本地与远程系统的smtp连接,实现本地e-mail集中处理。
④若防火墙需unix之类的操作系统,该系统的版本安全本身就是一个需要考虑的重要问题,应该作为防火墙的一部分,当用其他安全工具时,要保证防火墙主机的完整性,而且该系统应能整体安装。防火墙及操作系统应该可更新,并能用简易的方法解决系统故障等。
⑤防火墙是否具有可扩展、可升级性,用户的网络不是一成不变的,现在可能主要是在单位内部网和外部网之间做过滤,随着业务的发展,单位内部可能具有不同安全级别的子网,这就需要在这些子网之间做过滤。有些防火墙设计成只支持三个接口的,不具有扩展性。随着网络技术的发展和变化,防火墙也必须支持软件升级。
7.3 费用问题
安全性越高,实现越复杂,设备费用也相应的越高,反之费用较低。这就需要对网络中需保护的信息和数据进行详细的经济性评估。
8 防火墙的设计
8.1 防火墙的安全要求
从网络的安全角度看,防火墙必须满足以下要求:
①防火墙应由多个构件组成,形成一个有一定冗余度的安全系统,避免成为网络的“单失效点”。若这一点被突破,则网络无安全可言。
②防火墙应能抵抗网络“黑客”的攻击,并可对网络通信进行监控和审计。这样的网络节点,被称为“阻塞点”。
③防火墙一旦失效、重启动或崩溃,则应完全阻断内、外部网络站点的连接,以免闯入者进入。这种安全模式的控制方法,是由防火墙安全机制来控制网络接口的启动。这种防火墙的失效模式被称为“失效—安全”模式。
④防火墙应提供强认证服务,外部网络站点对内部网络的访问应经过防火墙的认证检查,包括对网络用户和数据源的认证。应支持e-mail、ftp、telnet和www等应用。
⑤防火墙对内部网络应起到屏蔽作用,即隐藏内部网站的地址和内部网络的拓朴结构。
8.2 防火墙拓朴设计的基本原则
①决定防火墙的类型和拓朴结构
针对防火墙所保护的系统的安全级别作出定性和定量的评估,从系统的成本、安全保护实现的难易程度以及升级、改造和维护的难易程度,决定该防火墙的类型和拓朴结构。
②制定安全策略
在实现过程中,没有允许的服务是被禁止的,没有被禁止的服务都是允许的,因此网络安全的第一条策略是拒绝一切未许可的服务。防火墙封锁所有信息流,逐一完成每一项许可的服务;第二条策略是允许一切没有被禁止的服务,防火墙转发所有的信息,逐项删除被禁止的服务。在此策略的指导下,再针对系统制定各项具体策略。
③确定包过滤规则
一般以处理ip数据包包头信息为基础,包括过滤规则序号、过滤方式、源和目的端口号及协议类型等。它决定算法执行时的顺序,因此正确的排列至关重要。过滤方式包括允许和禁止。另外还有源端口号、目的端口号、ip地址、目的端口是否设置ack位、协议类型等内容。
④设计代理服务
代理服务器接受外部网络节点提出的服务请求,如果服务请求被接受,代理服务器再建立与实服务器的连接。由于它作用于应用层,故可利用各种安全技术,如身份验证、日志登录、审计跟踪、密码技术等,来加强网络安全性,解决包过滤所不能解决的问题。
⑤严格定义功能模块,分散实现
防火墙由各种功能模块组成,如包过滤器、代理服务器、认证服务器、域名服务器、通信监控器等。这些功能模块最好由路由器和单独的主机实现。功能分散减少了实现的难度,增加了可靠程度。
⑥防火墙维护和管理方案的考虑
防火墙的日常维护是对访问记录进行审计,发现入侵和非法访问情况。据此对防火墙的安全性进行评价,需要时进行适当改进,管理工作要根据网络拓朴结构的改变或安全策略的变化,对防火墙进行硬件和软件的修改和升级。通过维护和管理进一步优化其性能,以保证网络及其信息的安全性。
9 结束语
internet的发展,伴随而来的是网络的安全问题,目前的系统设计上,不能完全阻挡有经验的黑客袭击,特别是内部黑客的袭击。服务器使用的是red hat的linux,系统本身不会受到常见病毒的感染,但其不能对病毒进行过滤,工作站受病毒侵袭的可能依然存在。近几年来,防火墙的技术日新月异,它的产品也不断地更新换代,人们在不停地寻求高效、低价的产品。研制新的网络安全技术,将成为今后互联网络发展的一个重要课题。所以今后网络安全在技术和管理上还有待于进一步发展。
- 上一篇文章:SOPHOS评出02年9月十大电脑病毒
- 下一篇文章:新地址路由迷路记

