首页 理论教育防火墙体系结构及分类,计算机网络与信息安全书摘要

防火墙体系结构及分类,计算机网络与信息安全书摘要

【摘要】:防火墙的体系结构大致可以分为4种类型:堡垒主机体系结构、双宿主主机体系结构、屏蔽主机体系结构和屏蔽子网体系结构。目前,有关防火墙体系结构的名称还没有统一,但含义基本相同。但是在将一台双宿主主机安装到防火墙结构中时,首先要使双宿主主机的这种路由功能失效。

防火墙的体系结构大致可以分为4种类型:堡垒主机体系结构、双宿主主机体系结构、屏蔽主机体系结构和屏蔽子网体系结构。目前,有关防火墙体系结构的名称还没有统一,但含义基本相同。

(一)堡垒主机体系结构

堡垒主机体系结构在某些地方也称为筛选路由器体系结构。堡垒主机是内部网在Internet上的代表。堡垒主机是任何外来访问者都可以连接、访问的。通过该堡垒主机,防火墙内的系统可以对外操作,外部网用户也可以获取防火墙内的服务。

堡垒主机是一种被强化的可以防御攻击的计算机,被暴露于因特网之上,作为进入内部网络的一个检查点(checkpoint),帮助实现把整个网络的安全问题集中在某个主机上解决。正是由于这个原因,防火墙的建造者和防火墙的管理者应尽力给予其保护,特别是在防火墙的安装和初始化的过程中应予以仔细保护。

设计和建立堡垒主机的基本原则有两条:最简化原则和预防原则。

(1)最简化原则。堡垒主机越简单,对它进行保护就越方便。堡垒主机提供的任何网络服务都有可能因为软件存在缺陷或在配置上的错误,导致堡垒主机的安全保障出问题。在构建堡垒主机时,应该提供尽可能少的网络服务。因此在满足基本需求的条件下,在堡垒主机上配置的服务必须最少,同时对必须设置的服务给予尽可能低的权限。

(2)预防原则。尽管已对堡垒主机严加保护,但还有可能被入侵者破坏。只有对最坏的情况加以准备,并设计好对策,才可有备无患。对网络的其他部分施加保护时,也应考虑到“堡垒主机被攻破怎么办”。强调这一点的原因非常简单,就是因为堡垒主机是外部网最直接访问的机器。由于外部网与内部网无直接连接,因此堡垒主机是试图破坏内部系统的入侵者首先攻击到的机器。要尽量保障堡垒主机不被破坏,但同时又得时刻提防“它一旦被攻破怎么办”。

一旦堡垒主机被破坏,还得尽力让内部网仍处于安全保障之中。要做到这一点,必须让内部网只有在堡垒主机正常工作时才信任它。日常要仔细观察堡垒主机提供给内部网的服务,并依据这些服务的内容确定这些服务的可信度及拥有的权限。

另外,还有很多方法可用来加强内部网的安全性。例如,可以在内部网主机上操作控制机制(设置口令、鉴别设备等),或者在内部网与堡垒主机间设置包过滤。

(二)双宿主主机体系结构

双宿主主机的防火墙系统由一台装有两个网卡的堡垒主机构成。两个网卡分别与外部网及内部网相连。堡垒主机上运行防火墙软件,可以转发数据、提供服务等。堡垒主机将防止在外部网络和内部系统之间建立任何直接的连接,可以确保数据包不能直接从外部网络到达内部网络。

双宿主主机有两个接口,具有以下特点。

(1)两个端口之间不能进行直接的IP数据包的转发。

(2)防火墙内部的系统可以与双宿主主机进行通信,同时防火墙外部的系统也可以与双宿主主机进行通信,但二者之间不能直接进行通信。

这种体系结构的优点是结构非常简单,易于实现,并且具有高度的安全性,可以完全阻止内部网络与外部网络通信。

这种主机还可以充当与这台相连的若干网络之间的路由器。它能将一个网络的IP数据包在无安全控制下传递给另外一个网络。但是在将一台双宿主主机安装到防火墙结构中时,首先要使双宿主主机的这种路由功能失效。从一个外部网络(如Internet)来的数据包不能无条件地传递给另外一个网络(如内部网络)。双宿主主机的内外网络均可与双宿主主机实施通信,但内外网络之间不可直接通信,内外部网络之间的IP数据流被双宿主主机完全切断。

双宿主主机可以提供很严格的网络控制机制。如果安全规则不允许数据包在内外部网之间直传,而又发现内部网有一个对应的外部数据源,这就说明系统的安全机制有问题了。在有些情况下,如果一个申请者的数据类型与外部网提供的某种服务不相符合时,双宿主主机可以否决申请者要求的与外部网络的连接。同样情况下,用包过滤系统要做到这种控制是非常困难的。

双宿主主机的实现方案有以下两种。

(1)应用层数据共享。用户直接登录到双宿主主机。

(2)应用层代理服务。在双宿主主机上运行代理服务器

双宿主主机只有用代理服务的方式,或者让用户直接注册到双宿主主机上才能提供安全控制服务,但在堡垒主机上设置用户账户会产生很大的安全问题。因为用户的行为是不可预知的,如双宿主主机上有很多用户账户,这会给入侵检测带来很大的麻烦。另外,这种结构要求用户每次都必须在双宿主主机上注册,这样会使用户感到使用不方便。采用代理服务的方式安全性较好,可以将被保护的网络内部结构屏蔽起来,堡垒主机还能维护系统日志或远程日志。但是应用级网关需要针对每一个特定的Internet服务安装相应的代理服务软件,用户不能使用未被服务器支持的服务,以免导致某些网络服务无法找到代理,或不能完全按照要求提供全部安全服务。同时堡垒主机是入侵者致力攻击的目标,一旦被攻破,防火墙就完全失效了。

(三)屏蔽主机体系结构

双宿主主机体系结构是由一台同时连接在内外部网络之间的双宿主主机提供安全保障的,而屏蔽主机体系结构则不同,为屏蔽主机体系结构提供安全保护的主机仅仅与内部网相连。另外,主机过滤还有一台单独的过滤路由器。包过滤路由器应避免用户直接与代理服务器相连。

这种结构的堡垒主机位于内部网络,而过滤路由器按以下规则过滤数据包:任何外部网(如Internet)的主机都只能与内部网的堡垒主机建立连接,甚至只有提供某些类型服务的外部网主机才被允许与堡垒主机建立连接。任何外部系统对内部网络的操作都必须经过堡垒主机,同时堡垒主机本身就要求有较全面的安全维护。包过滤系统也允许堡垒主机与外部网进行一些“可以接受(即符合站点的安全规则)”的连接。屏蔽主机防火墙转发数据包的过程如下。

过滤路由器可按以下规则之一进行配置。

(1)允许其他内部主机(非堡垒主机)为某些类型的服务请求与外部网建立直接连接。

(2)不允许所有来自内部主机的直接连接。

当然,可以对不同的服务请求混合使用这些配置,有些服务请求可以被允许直接进行包过滤,而有些则必须在代理后才能进行包过滤,这主要是由所需要的安全规则确定的。

例如,对于入站连接,根据安全策略,屏蔽路由器可以允许某种服务的数据包先到达堡垒主机,然后与内部主机连接;也可以直接禁止某种服务的数据包入站连接。对于出站连接,根据安全策略,对于一些服务(如Telnet),可以允许它直接通过屏蔽路由器连接到外部网络,而不通过堡垒主机,至于其他服务(如WWW和SMTP等),必须经过堡垒主机才能连接到Internet,并在堡垒主机上运行该服务的代理服务器。

由于屏蔽主机体系结构允许数据包从外部网络直接传给内部网,因此这种结构的安全性能看起来似乎比双宿主主机体系结构差。而在双宿主主机体系结构中,外部的数据包理论上不可能直接抵达内部网。但实际上,双宿主主机体系结构也会出错,而让外部网的数据包直接抵达内部网(这种错误的产生是随机的,故无法在预先确定的安全规则中加以防范)。另外,在一台路由器上施加保护比在一台主机上施加保护容易得多。一般来讲,屏蔽主机体系结构比双宿主主机体系结构能提供更好的安全保护,同时也更具可操作性。(www.chuimin.cn)

当然,同其他体系结构相比,这种体系结构的防火墙也有一些缺点。一个主要的缺点是,只要入侵者设法通过了堡垒主机,那么对入侵者来讲,整个内部网与堡垒主机之间就再也没有任何保护了。路由器的保护也会有类似的缺陷,即若入侵者闯过路由器,那么整个内部网便会完全暴露在入侵者面前,正因为如此,屏蔽子网体系结构的防火墙更受到青睐。

(四)屏蔽子网体系结构

屏蔽子网体系结构也称为屏蔽子网网关体系结构,就是在屏蔽主机体系结构中的内部网和外部网之间再增加一个被隔离的子网,这个子网由堡垒主机、应用级网关等公用服务器组成,习惯上将这个子网称为“非军事区”。在屏蔽主机体系结构中,堡垒主机最易受到攻击,尽管可以对它提供最大限度的保护,但因其为入侵者首先能攻击到的机器,所以它仍然是整个系统最容易出问题的环节。

用边界网络来隔离堡垒主机与内部网,能减轻入侵者在攻破堡垒主机后带给内部网的压力。入侵者即使攻破堡垒主机也不可能对内部网进行任意操作,而只可能进行部分操作。

在最简单的屏蔽子网体系结构中,有两台都与边界网络相连的过滤路由器,一台位于边界网络与内部网络之间,而另一台位于边界网络与外部网络之间。在这种结构下,入侵者要攻击到内部网必须通过两台路由器的安全控制,即使入侵者通过了堡垒主机,它还必须通过内部路由器才能抵达内部网,因此整个网络安全机制就不会因一个站点攻破而全部瘫痪。

有些站点还可用多层边界网络加以保护,低可靠性的保护由外层边界网络提供,高可靠性的保护由内层边界网络提供。在这种结构下,入侵者攻破了外层边界网络后,必须再破坏更为精致的内部边界网络才可到达内部网。下面讨论这个结构中的各个组成部分。

1.边界网络

边界网络(周边网络),也称为“停火区”或“非军事区”,如果入侵者成功地闯过外层保护网到达防火墙,边界网络就能在入侵者与内部网之间再提供一层保护。

在许多诸如Ethernet、令牌网、FDDI等网络结构中,网络上的任意一台机器都可以观察到其他机器的信息出入情况,监听者仍能通过监听用户使用的Telnet、FTP等操作成功地窃取口令。即使口令不被泄露,监听者仍能得到用户操作的敏感文件的内容。

如果入侵者仅仅侵入到边界网络的堡垒主机,他只能偷看到这层网络的信息流,却看不到内部网的信息,而这层网络的信息流仅从边界网络往来于外部网,或者从边界网络往来于堡垒主机。因为没有内部主机间互传的重要和敏感的信息在边界网络中流动,所以即使堡垒主机受到损害也不会让入侵者损害到内部网的信息流。

显而易见,往来于堡垒主机和外部网的信息流还是可见的,因此在设计防火墙时就是要确保上述信息流的暴露不会牵连到整个内部网络的安全。

2.堡垒主机

在屏蔽子网结构中,将堡垒主机与边界网络相连,而这台主机是外部网服务于内部网的主要节点。它为内部网服务的主要功能有以下几方面。

(1)接收外来的电子邮件(SMTP),再分发给相应的站点。

(2)接收外来的FTP,并将它连到内部网络匿名FTP服务器。

(3)接收外来的有关内部网站点的域名服务。

这台主机向外的服务功能可用以下方法来实施。

(1)在内、外部路由器上建立包过滤,以便内部网的用户可以直接操作外部服务器。

(2)在主机上建立代理服务,在内部网的用户与外部网的服务器之间建立间接的连接。也可以在设置包过滤后,允许内部网的用户与主机的代理服务器进行交互,但禁止内部网用户与外部网用户直接通信。

堡垒主机在哪种类型的服务请求下,包过滤才允许它主动连接到外部网或允许外部网申请连接到它上面,则完全由安全机制确定。不管它是在为某些协议(如FTP或HTTP)运行特定的代理服务软件,还是为代理协议(如SMTP)运行标准服务软件,堡垒主机所做的主要工作还是为内外部服务请求进行代理。

3.内部路由器

内部路由器的主要功能是保护内部网络免受来自外部网与参数网络的侵扰。内部路由器完成防火墙的大部分包过滤工作,它允许某些站点的包过滤系统认为符合安全规则的服务在内外部网之间的互传(各站点对各类服务的安全确认规则是不同的)。根据各站点的需要和安全规则,可允许的服务是以下这些外向服务中的若干种,如Telnet、FTP、WAIS、Gopher或其他服务。

内部路由器可以这样设定:使边界网络上的堡垒主机与内部网之间传递的各种服务和内部网与外部网之间传递的各种服务不完全相同。限制一些服务在内部网与堡垒主机之间互传的目的是减少在堡垒主机被侵入后而受到入侵的内部网主机的数目,如SMTP、DNS等。还能对这些服务做进一步的限定,限定它们只能在提供某些服务的主机与内部网的站点之间互传。例如,对于SMTP就可以限定站点只能与堡垒主机或内部网的邮件服务器通信。对其余可以从堡垒主机上申请连接的主机就更得仔细保护,因为这些主机将是入侵者撞开堡垒主机的保护后首先能攻击到的机器。

4.外部路由器

理论上,外部路由器既保护边界网络又保护内部网络。实际上,在外部路由器上仅做一小部分包过滤,它几乎让所有边界网络的外向请求通过。而外部路由器与内部路由器的包过滤规则基本上是相同的。也就是说,如果安全规则上存在问题,那些入侵者可用同样的方法通过内、外部路由器。

由于外部路由器一般是由外界(如ISP)提供,因此对外部路由器可做的操作是受限制的。ISP一般仅会在该路由器上设置一些普通的包过滤,而不会专门设置特别的包过滤,或者更换包过滤系统,因此,对于安全保障而言,不能像依赖于内部路由器一样依赖外部路由器,有时ISP甚至会因更换外部路由器而忘记再设置包过滤。

外部路由器的包过滤主要是对边界网络上的主机提供保护。然而,一般情况下,因为边界网络上主机的安全主要通过主机安全机制加以保障,所以由外部路由器提供的很多保护并非必要。另外,还能将内部路由器的安全准则加到外部路由器的安全规则中,这些规则可以防止不安全的信息流在内部网的主机与外部网之间互传。为了支持代理服务,只要是内部站点与堡垒主机间的交互协议,内部路由器就准许通过。同样,只要协议来自堡垒主机,外部路由器就准许它通过并抵达外部网。虽然外部路由器的这些规则相当于另加了一层安全机制,但这一层安全机制能阻断的数据包在理论上并不存在,因为它们早已被内部路由器阻断了。如若存在这样的数据包,则说明不是内部路由器出了故障就是已有未知的主机侵入了边界网络。因此,外部路由器真正有效的安全保护任务之一就是阻断来自外部网络并具有伪源地址的内向数据包。为此,数据包的特征显示出它是内部网,而其实它来自外部网络。

虽然内部路由器也具有上述功能,但它不能识别声称来自边界网络的数据包是否是伪装的数据包。虽然边界网络上的数据不是完全可靠的,但它比来自外部网的数据仍要可靠得多。将数据包伪装成来自边界网络是入侵者攻击堡垒主机常用的伎俩,内部路由器不能防止网络上的系统免受伪数据包的侵扰。