您的当前位置:首页正文

分布式防火墙

2023-12-14 来源:步旅网


分布式防火墙

中文摘要:随着网络技术、信息技术的发展,越来越多的人正在关注防火墙技术,在考虑传统防火墙技术缺陷的基础上,提出了分布式防火墙技术。本文主要探讨分布式防火墙技术的原理、结构和应用。

Abstract:With the development of network technology and IT ,more and more people pay attention to the fire wall technology, and brought the distributed fire wall technology on the basis of defect about the tradition fire wall technology. The paper mainly discussed the principle structure and application of distributed fire wall technology.Keywords:distributed fire wall security management.

中文关键字:分布式 防火墙 网络安全

Keyword:Distributed Firewall Network security

引言

随着网络的发展和普及,特别是互联网应用的飞速发展和普及,网络安全越来越受到各级用户的普遍关注。人们在享受信息化带来的众多好处的同时,也面临着日益突出的信息安全问题。比如,网络环境中国家秘密和商业秘密的保护,特别是政府上网后对机密敏感信息的保护,网上各种行为者的身份确认与权责利的确认,高度网络化的各种业务(商务、政务、教务等)信息系统运行的正常和不被破坏,网络银行、电子商务、各类资金管理系统中的支付与结算的准确真实和金融机构数据保护与管理系统的不被欺诈,都将成为企业形象、商业利益、国家安全和社会稳定的焦点。

1

因为传统的防火墙设置在网络边界,在内部企业网和外部互联网之间构成一个屏障,进行网络存取控制,所以称为边界防火墙(Perimeter Firewall)。传统的防火墙分为包过滤型和代理型,他们都有各自的缺点与局限性。

包过滤防火墙的缺陷主要有:特洛伊木马使包过滤器失效;第0个分段中便过滤TCP;只能访问部分数据包的头信息;不能保存来自于通信和应用的状态信息;处理信息的能力有限;允许1024以上的端口通过。

应用网关防火墙也存在着许多缺陷:不能为UDP、RPC等协议族提供代理;可提供的服务数和伸缩性也有限;不能被设置为网络透明工作;容易消除阻断的URL;无法保护操作系统。

随着计算机安全技术的发展和用户对防火墙功能要求的提高,目前出现一种新型防火墙,那就是\"分布式防火墙\",英文名 为\"Distributed Firewalls\"。它是在目前传统的边界式防火墙基础上开发的。但目前主要是以软件形式出现的,也有一些国际著名网络设备开发商(如3COM、 CISCO等)开发生产了集成分布式防火墙技术的硬件分布式防火墙,做成嵌入式防火墙PCI卡或PCMCIA卡的形式,但负责集中管理的还是一个服务器软件。因为是将分布式防火墙技术集成在硬件上,所以通常称之为\"嵌入式防火墙\",其实其核心技术就是\"分布式防火墙\"技术。

分布式防火墙的定义与分类

分布式防火墙由安全策略管理服务器[Server]以及客户端防火墙[Client]组成.客户端防火墙工作在各个从服务器、工作站、个人计算机上,根据安全策略文件的内容,依靠包过滤、特洛伊木马过滤和脚本过滤的三层过滤检查,保护计算机在正常使用网络时不会受

2

到恶意的攻击,提高了网络安全性。而安全策略管理服务器则负责安全策略、用户、日志、审计等的管理。该服务器是集中管理控制中心,统一制定和分发安全策略,负责管理系统日志、多主机的统一管理,使终端用户“零”负担。

分布式防火墙不是只是位于网络边界,而是渗透于网络的每一台主机,对整个内部网络的主机实施保护。分布式防火墙通常是内核模式应用,它位于操作系统OSI栈的底部,直接面对网卡,它们对所有的信息流进行过滤与限制,无论是来自Internet,还是来自内部网络。

分布式防火墙分为广义分布式防火墙和狭义分布式防火墙。

广义分布式防火墙是一种全新的防火墙体系结构,包括网络防火墙、主机防火墙和中心管理三部分。网络防火墙部署于内部网与外部网之间以及内网子网之间。网络防火墙区别于边界防火墙的特征在于,网络防火墙需支持内部网可能有的IP和非IP协议,而边界防火墙并不需要。主机防火墙对网络中的服务器和桌面系统进行防护,主机的物理位置可能在企业网中,也可能在企业网外(如托管服务器或移动办公的 便携机)。由于边界防火墙只是网络中的单一设备,对其进行的管理也只能是局部管理。对于广义分布式防火墙来说,每个防火墙作为安全监测机制的组成部分,必须根据不同的安全要求被布置在网络中任何需要的位置上,对广义分布防火墙的管理必须是统一进行的,中心管理是分布式防火墙系统的核心和重要特征之一。安全策略的分发及日志的汇总都是中心管理具备的功能。

狭义分布式防火墙是指驻留在网络主机(如服务器或桌面机)并对主机系统提供安全防护的软件产品,驻留主机是这类防火墙的重要特征。这类防火墙将该驻留主机以外的其他网络都认作是不可信任的,并对驻留主机运行的应用和对外提供的服务设定针对性很强的安全策略。

3

分布式防火墙的原理

防火墙就是一种过滤塞,在网络的世界里,要由防火墙过滤的就是承载通信数据的通信包。

最简单的防火墙是以太网桥,但这种原始的防火墙不太管用,现在防火墙的形式多种多样:有的取代系统上已经装备的TCP/IP协议栈;有的在已有的协议栈上建立自己的软件模块;有的干脆就是独立的一套操作系统。还有一些基于硬件的防火墙产品其实应该归入安全路由器一类。这些防火墙的工作方式都是一样的:分析出入防火墙的数据包,决定放行还是把他们扔到一边。

所有的防火墙都具有IP地址过滤功能。这项任务要检查IP包头,根据其IP源地址和目标地址作出放行/丢弃决定。如图所示。

当PC客户机向UNIX计算机发起telnet请求时,PC的telnet客户程序就产生一个TCP包并把它传给本地的协议栈准备发送。接下来,协议栈将这个TCP包“塞”到一个IP包里,然后通过PC机的TCP/IP栈所定义的路径将它发送给UNIX计算机。

4

现在我们“命令”(用专业术语来说就是配制)防火墙把所有发给UNIX计算机的数据包都给拒了,完成这项工作以后,“心肠”比较好的防火墙还会通知客户程序一声呢!既然发向目标的IP数据没法转发,那么只有和UNIX计算机同在一个网段的用户才能访问UNIX计算机了。

还有一种情况,你可以命令防火墙专给那台可怜的PC机找茬,别人的数据包都让过就它不行。这正是防火墙最基本的功能:根据IP地址做转发判断。但要上了大场面这种小伎俩就玩不转了,由于黑客们可以采用IP地址欺骗技术,伪装成合法地址的计算机就可以穿越信任这个地址的防火墙了。不过根据地址的转发决策机制还是最基本和必需的。另外要注意的一点是,不要用DNS主机名建立过滤表,对DNS的伪造比IP地址欺骗要容易多了。

服务器TCP/UDP 端口过滤

仅仅依靠地址进行数据过滤在实际运用中是不可行的,还有个原因就是目标主机上往往运行着多种通信服务,比方说,我们不想让用户采用 telnet的方式连到系统,但这绝不

5

等于我们非得同时禁止他们使用SMTP/POP邮件服务器吧?所以说,在地址之外我们还要对服务器的TCP/ UDP端口进行过滤。

比如,默认的telnet服务连接端口号是23。假如我们不许PC客户机建立对UNIX计算机(在这时我们当它是服务器)的telnet连接,那么我们只需命令防火墙检查发送目标是UNIX服务器的数据包,把其中具有23目标端口号的包过滤就行了。这样,我们把IP地址和目标服务器TCP/UDP端口结合起来不就可以作为过滤标准来实现相当可靠的防火墙了吗?不,没这么简单。

客户机也有TCP/UDP端口

TCP/IP是一种端对端协议,每个网络节点都具有唯一的地址。网络节点的应用层也是这样,处于应用层的每个应用程序和服务都具有自己的对应“地址”,也就是端口号。地址和端口都具备了才能建立客户机和服务器的各种应用之间的有效通信联系。比如,telnet服务器在端口23侦听入站连接。同时telnet客户机也有一个端口号,否则客户机的IP栈

6

怎么知道某个数据包是属于哪个应用程序的呢?

由于历史的原因,几乎所有的TCP/IP客户程序都使用大于1023的随机分配端口号。只有UNIX计算机上的root用户才可以访问1024以下的端口,而这些端口还保留为服务器上的服务所用。所以,除非我们让所有具有大于1023端口号的数据包进入网络,否则各种网络连接都没法正常工作。

这对防火墙而言可就麻烦了,如果阻塞入站的全部端口,那么所有的客户机都没法使用网络资源。因为服务器发出响应外部连接请求的入站(就是进入防火墙的意思)数据包都没法经过防火墙的入站过滤。反过来,打开所有高于1023的端口就可行了吗?也不尽然。由于很多服务使用的端口都大于1023,比如X client、基于RPC的NFS服务以及为数众多的非UNIX IP产品等(NetWare/IP)就是这样的。那么让达到1023端口标准的数据包都进入网络的话网络还能说是安全的吗?连这些客户程序都不敢说自己是足够安全的。

7

双向过滤

我们给防火墙这样下命令:已知服务的数据包可以进来,其他的全部挡在防火墙之外。比如,如果你知道用户要访问Web服务器,那就只让具有源端口号80的数据包进入网络:

不过新问题又出现了。首先,你怎么知道你要访问的服务器具有哪些正在运行的端口号呢? 象HTTP这样的服务器本来就是可以任意配置的,所采用的端口也可以随意配置。如果你这样设置防火墙,你就没法访问哪些没采用标准端口号的的网络站点了!反过来,你也没法保证进入网络的数据包中具有端口号80的就一定来自Web服务器。有些黑客就是利用这一点制作自己的入侵工具,并让其运行在本机的80端口!

检查ACK位

源地址我们不相信,源端口也信不得了,这个不得不与黑客共舞的疯狂世界上还有什么值得我们信任呢?还好,事情还没到走投无路的地步。对策还是有的,不过这个办法只能用于TCP协议。

8

TCP是一种可靠的通信协议,“可靠”这个词意味着协议具有包括纠错机制在内的一些特殊性质。为了实现其可靠性,每个TCP连接都要先经过一个“握手”过程来交换连接参数。还有,每个发送出去的包在后续的其他包被发送出去之前必须获得一个确认响应。但并不是对每个TCP包都非要采用专门的ACK包来响应,实际上仅仅在TCP包头上设置一个专门的位就可以完成这个功能了。所以,只要产生了响应包就要设置ACK位。连接会话的第一个包不用于确认,所以它就没有设置ACK位,后续会话交换的TCP包就要设置ACK位了。

举个例子,PC向远端的Web服务器发起一个连接,它生成一个没有设置ACK位的连接请求包。当服务器响应该请求时,服务器就发回一个设置了ACK位的数据包,同时在包里标记从客户机所收到的字节数。然后客户机就用自己的响应包再响应该数据包,这个数据包也设置了ACK位并标记了从服务器收到的字节数。通过监视ACK位,我们就可以将进入网络的数据限制在响应包的范围之内。于是,远程系统根本无法发起TCP连接但却能响应收到的数据包了。

这套机制还不能算是无懈可击,简单地举个例子,假设我们有台内部Web服务器,那么端口80就不得不被打开以便外部请求可以进入网络。还有,对UDP包而言就没法监

9

视ACK位了,因为UDP包压根就没有ACK位。还有一些TCP应用程序,比如FTP,连接就必须由这些服务器程序自己发起。

FTP带来的困难

一般的Internet服务对所有的通信都只使用一对端口号,FTP程序在连接期间则使用两对端口号。第一对端口号用于FTP的“命令通道”提供登录和执行命令的通信链路,而另一对端口号则用于FTP的“数据通道”提供客户机和服务器之间的文件传送。

在通常的FTP会话过程中,客户机首先向服务器的端口21(命令通道)发送一个TCP连接请求,然后执行LOGIN、DIR等各种命令。一旦用户请求服务器发送数据,FTP服务器就用其20端口 (数据通道)向客户的数据端口发起连接。问题来了,如果服务器向客户机发起传送数据的连接,那么它就会发送没有设置ACK位的数据包,防火墙则按照刚才的规则拒绝该数据包同时也就意味着数据传送没戏了。通常只有高级的、也就是够聪明的防火墙才能看出客户机刚才告诉服务器的端口,然后才许可对该端口的入站连接。

UDP端口过滤

现在我们回过头来看看怎么解决UDP问题。刚才说了,UDP包没有ACK位所以不能进行ACK位过滤。UDP 是发出去不管的“不可靠”通信,这种类型的服务通常用于广播、路由、多媒体等广播形式的通信任务。NFS、DNS、WINS、NetBIOS-over-TCP/IP和 NetWare/IP都使用UDP。

看来最简单的可行办法就是不允许建立入站UDP连接。防火墙设置为只许转发来自内部接口的UDP包,来自外部接口的UDP包则不转发。现在的问题是,比方说,DNS名称

10

解析请求就使用UDP,如果你提供DNS服务,至少得允许一些内部请求穿越防火墙。还有IRC这样的客户程序也使用UDP,如果要让你的用户使用它,就同样要让他们的UDP包进入网络。我们能做的就是对那些从本地到可信任站点之间的连接进行限制。但是,什么叫可信任!如果黑客采取地址欺骗的方法不又回到老路上去了吗?

有些新型路由器可以通过“记忆”出站UDP包来解决这个问题:如果入站UDP包匹配最近出站UDP包的目标地址和端口号就让它进来。如果在内存中找不到匹配的UDP包就只好拒绝它了!但是,我们如何确信产生数据包的外部主机就是内部客户机希望通信的服务器呢?如果黑客诈称DNS服务器的地址,那么他在理论上当然可以从附着DNS的UDP端口发起攻击。只要你允许DNS查询和反馈包进入网络这个问题就必然存在。办法是采用代理服务器。

所谓代理服务器,顾名思义就是代表你的网络和外界打交道的服务器。代理服务器不允许存在任何网络内外的直接连接。它本身就提供公共和专用的DNS、邮件服务器等多种功能。代理服务器重写数据包而不是简单地将其转发了事。给人的感觉就是网络内部的主机都站在了网络的边缘,但实际上他们都躲在代理的后面,露面的不过是代理这个假面具。

分布式防火墙的功能

在新的安全体系结构下,分布式防火墙代表新一代防火墙技术的潮流,它可以在网络的任何交界和节点处设置屏障,从而形成了一个多层次、多协议,内外皆防的全方位安全体系。它的主要优势有以下三个:

(1)增强的系统安全性:增加了针对主机的入侵检测和防护功能,加强了对来自内部攻击防范,可以实施全方位的安全策略。

11

在传统边界式防火墙应用中,企业内部网络非常容易受到有目的的攻击,一旦已经接入了企业局域网的某台计算机,并获得这台计算机的控制权,他们便可以利用这台机器作为入侵其他系统的跳板。而最新的分布式防火墙将防火墙功能分布到网络的各个子网、桌面系统、笔记本计算机以及服务器PC上。分布于整个公司内的分布式防火墙使用户可以方便地访问信息,而不会将网络的其他部分暴露在潜在非法入侵者面前。凭借这种端到端的安全性能,用户通过内部网、外联网、虚拟专用网还是远程访问所实现与企业的互联不再有任何区别。分布式防火墙还可以使企业避免发生由于某一台端点系统的入侵而导致向整个网络蔓延的情况发生,同时也使通过公共帐号登录网络的用户无法进入那些限制访问的计算机系统。

(2)提高了系统性能:消除了结构性瓶颈问题,提高了系统性能。

分布式防火墙可以针对各个服务器及终端计算机的不同需要,对防火墙进行最佳配置,配置时能够充分考虑到这些主机上运行的应用,如此便可在保障网络安全的前提下大大提高网络运转效率。

(3)系统的扩展性:分布式防火墙随系统扩充提供了安全防护无限扩充的能力。

因为分布式防火墙分布在整个企业的网络或服务器中,所以它具有无限制的扩展能力。随着网络的增长,它们的处理负荷也在网络中进一步分布,因此它们的高性能可以持续保持住。而不会象边界式防火墙一样随着网络规模的增大而不堪重负。

那么,分布式防火墙具备哪些功能呢?因为采用了软件形式(有的采用了软件+硬件形式),所以功能配置更加灵活,具备充分的智能管理能力,总的来说可以体现在以下几个方面:

12

(1)Internet访问控制

依据工作站名称、设备指纹等属性,使用\"Internet访问规则\",控制该工作站或工作站组在指定的时间段内是否允许/禁止访问模板或网址列表中所规定的Internet Web服务器,某个用户可否基于某工作站访问www服务器,同时当某个工作站/用户达到规定流量后确定是否断网。

(2)应用访问控制

通过对网络通讯从链路层、网络层、传输层、应用层基于源地址、目标地址、端口、协议的逐层包过滤与入侵监测,控制来自局域网/Internet的应用服务请求,如SQL数据库访问、IPX协议访问等。

(3)网络状态监控

实时动态报告当前网络中所有的用户登陆、Internet访问、内网访问、网络入侵事件等信息。

(4)黑客攻击的防御

抵御包括Smurf拒绝服务攻击、ARP欺骗式攻击、Ping攻击、Trojan木马攻击等在内的近百种来自网络内部以及来自Internet的黑客攻击手段。

(5)日志管理

对工作站协议规则日志、用户登陆事件日志、用户Internet访问日志、指纹验证规则

13

日志、入侵检测规则日志的记录与查询分析。

(6)系统工具

包括系统层参数的设定、规则等配置信息的备份与恢复、流量统计、模板设置、工作站管理等。

分布式防火墙的特点

由于分布式防火墙个人防火墙是单纯的直接面向个人用户的,而桌面应用的主机防火墙是面向企业级客户的,它与分布式防火墙其他产品共同构成一个企业级应用方案!形成一个安全策略中心统一管理,所以它在一定程度上也面对整个网络。 它是整个安全防护系统中不可分割的一部分!整个系统的安全检查机制分散布置在整个分布式防火墙体系中。 网络防火墙(Network Firewall)、 主机防火墙(Host Firewall)和中心管理(central management)几个部分。下边我来分析一下分布式防火墙的特点。

分布式防火墙的主要涂特点可以概括为:

1.主机驻留。分布式防火墙是一种主机驻留式的安全系统,驻留在被保护的主机上!该主机以外的网络不管是处在网络内部还是网络外部都认为是不可信任的,因此可以针对该主机上运行的具体应用和对外提供的服务设定针对性很强的安全策略, 使安全策略不仅仅停留在网络与网络之间,而是把安全策略推广延伸到每个网络末端,因此分布式防火墙可以用

来保护企业网络中的关键结点服务器、数据及工作站免受非法入侵的破坏。

2.嵌入操作系统内核。由于操作系统自身存在许多安全漏洞,纯软件式防火墙无一不

14

受到威胁。 而分布式防火墙是主机运行机制,主机防火墙的安全监测核心引擎要以嵌入操作系统内核的形态运行,直接接管网卡,再把所有数据包进行检查后再提交操作系统。 为此,实现了自身的安全和彻底堵住操作系统的漏洞。

3.有别于个人防火墙。虽然分布式防火墙和个人防火墙有相似之处,如它们都对应个人系统。但又有着本质性的差别。一方面是管理方式迥然不同。个人防火墙的安全策略由系统使用者自己设置!目标是防外部攻击,而针对桌面应用的主机防火墙的安全策略由整个系统的管理员统一安排和设置,除了对该桌面机起到保护作用外,也可以对该桌面机的对外访问加以控制,并且这种安全机制是桌面机的使用者不可见和不可改动的。另一方面,个人防火墙是单纯的直接面向个人用户的,而桌面应用的主机防火墙是面向企业级客户的,它与分布式防火墙其他产品共同构成一个企业级应用方案,形成一个安全策略中心统一管理,所以它在一定程度上也面对整个网络。它是整个安全防护系统中不可分割的一部分,整个系统的安全检查机制分散布置在整个分布式防火墙体系。

4.便于服务器托管。 我们都清楚!当前服务器托管服务是互联网数据中心(IDC)主要业务之一。对服务器托管用户而言,该服务器逻辑上是其企业网的一部分,只不过物理上不在企业内部,对于这种应用,边界防火墙解决方案就显得比较牵强附会,而针对服务器的主机防火墙解决方案则是其一个典型应用。对于纯软件式的分布式防火墙!用户只需在该服务器上安装主机防火墙软件,并根据该服务器的应用设置安全策略即可,并可以利用中心管理软件对该服务器进行远程监控,不需任何额外租用新的空间放置边界防火墙。这对于广大服务器托管的企业来说显然就更加实惠了。

5.提高效率,降低成本。从人力成本上来讲,分布式防火墙使整个企业只要培训一名高水平的系统管理员就可以轻松地处理好全网的安全,其使用成本较单机产品明显降低。

15

分布式防火墙技术的发展

随着分布式防火墙技术的不断发展,未来分布式防火墙技术将主要向两个方向发展:分布式主动型防火墙技术和分布式智能型防火墙技术。

随着分布式防火墙技术的不断发展,未来分布式防火墙技术将向分布式主动型防火墙技术发展。不是被动地防止攻击,而是将内部的攻击拒绝在攻击者处。有效防止来自内部的拒绝服务攻击,使服务器能正常提供服务,从而克服分布式防火墙在防止拒绝服务器攻击上的不足。

分布式智能型防火墙是未来分布式防火墙发展的另一个方向。它具有以下几个特点:

(1)明流量分担技术

保证了防火墙能够加大带宽,同时又起到双机设备的作用,显著提高防火墙的可用性。其巨大的吞吐能力,保证了客户网络巨大数据流的来往,并且不会影网络速度和性能。

(2)内核集成IPS模块

分布式智能型防火墙将IPS作为一个模块集成到里面,直接在主干上直接监测并且阻断供给,更高效更安全。并且,如果单独放置IPS,那么这些DOS攻击以及防扫描的工作就被提到了应用空间去完成,显然没有集成之后的IPS直接在防火墙的内核处理的效率和稳定性高。

(3)预置防IP欺骗策略

16

智能型分布式防火墙的\"防黒客\"功能,能够对IP欺骗,碎片攻击,源路由攻击,DOS攻击等各种黑客攻击进行有效的抵抗和防御。

小结

纵观防火墙技术的发展历史,分布式防火墙技术无疑是一座里程碑。它不但弥补了传统边界式防火墙的不足,而且把防火墙的安全防护系统延伸到网络中各台主 机,一方面有效地保证了用户的投资不会很高,另一方面给网络带来全面的安全防护。分布式防火墙分布在整个企业的网络或服务器中,具有无限制的扩展能力,随 着网络的增长,它们的处理负荷也在网络中进一步分布,进而持续保持高性能。然而当前黑客入侵系统技术的不断进步以及网络病毒朝智能化和多样化发展,对分布 式防火墙技术提出了更高的要求。分布式防火墙技术只有不断向主动型和智能型等方向发展,才能满足人们对防火墙技术日益增长的需求。

参考文献:

[1 ] 韩晓璞 1用分布式防火墙堵住内部网的漏洞[ EB/ OL ]

1ht tp :/ / www. pcworld. com1

[2 ] Derek Athins.网络安全专业参考手册[M]1 北京:机械

工业出版社 ,1998.

[3 ] Steven M Bellovin. Distributed Firewalls [ M ] . Login :

17

November ,1999. 39 - 47.

[4 ] Kent S. RFC2401 Security Architecture for Internet Pro2

tocol[M] . IETF ,Nov. 1998.

18

因篇幅问题不能全部显示,请点此查看更多更全内容