建立防火墙规则集
高阳
建立一个可靠的规则集对实现成功的、安全的防火墙来说是非常关键的一步。
在安全审计中,经常能看到一个巨资购入的防火墙由于规则配置的错误而将机构暴露于巨大的危险中。
本文以高阳信安的DS2000防火墙为例介绍如何设计、建立和维护一个可靠、安全的防火墙规则集。
不管你用的是哪种类型的防火墙,设计规则集的基本原理都相同。
成功的关键
首先需要强调的是一个简单的规则集是建立安全的防火墙关键所在。
你的网络的头号敌人是错误配置。
为什么当你意外地将消息访问协议(IMAP)公开时,那些坏家伙会试图悄悄携带欺骗性的信息包通过你的防火墙?保持防火墙规则集简洁和简短,就会减少错误配置的可能性,并使理解和维护更容易,同时,只分析少数的规则,还能提高性能。
一个好的准则是规则不要超过30条。
有30条规则,理解将要发生什么相对简单。
规则在30条至50条之间,事情就变得混乱起来,错误配置的概率以指数级递增。
那么,我们如何建立一个安全的规则集呢?我们从一个虚构企业的安全策略开始设计开发防火墙规则集。
安全策略
管理层规定实施什么样的安全策略,防火墙是策略得以实施的技术工具。
所以,在建立规则集之前,我们必须理解安全策略。
本文以一个简单的安全策略为例来说明如何建立规则集,管理层将该策略描述如下:
∙内部雇员访问Internet不受限制;
∙规定Internet有权使用公司的Web 服务器和Internet E mail;
∙任何进入公用内部网络的通话必须经过安全认证和加密。
安全体系结构
作为管理员,我们的第一步是将安全策略转化为安全体系结构。
现在,我们来讨论把每一项安全策略核心转化为技术实现。
∙第一项很容易。
内部网络的任何东西都允许输出到Internet。
∙第二项安全策略核心很微妙。
我们要为公司建立Web和E-mail服务器。
我们通过把它们放入一个DMZ来实现该项策略核心。
DMZ(Demilitarized Zone)是一个孤立的网络,你把不信任的系统放在那里。
既然任何人都能访问我们的Web和E-mail服务器,我们不能信任它们。
∙唯一的从Internet到内部网络的通话是远程管理。
我们必须让系统管理员能远程地访问他们的系统,实现的方式是只允许加密服务进入内部网络。
∙我们必须要添加DNS。
作为安全管理员,要实现Split DNS。
Split DNS是指在两台不同的服务器上分离DNS的功能,我们通过使用外部DNS服务器和内部用户使用的映射内部网络信息的内部DNS服务器来实现。
可以将外部DNS服务器与Web和E-mail服务器一起放在有保护的DMZ 中。
内部DNS服务器放在内部网络中,防止Internet危及内部DNS的安全。
规则次序
在建立规则集之前,必须要确定规则次序。
你很快会认识到哪条规则放在哪个之上是非常关键的。
同样的规则,以不同的次序放置,可能完全改变防火墙的运转情况。
很多防火墙以顺序方式检查信息包。
当它发现一条匹配规则时,就停止检查并应用该规则。
理解第一个、而不是最好的匹配规则适用于信息包是关键。
在此基础上,较特殊的规则在前,较普通的规则在后,防止在找到一个特殊规则之前与普通规则相匹配,这将使你的防火墙避免配置错误。
规则集
配置防火墙时,按照以下步骤设计规则集可以满足前面的安全策略,我们简要概述一下每条规则、为什么选择这条规则和它的重要性。
∙默认性能:这是防火墙时产品出厂时的设置,用户设计规则集之前,首先应该要切断默认性能以清除原有规则,配置新规则。
∙内部出网:第一条规则是允许内部网络的任何人出网。
∙锁定:添加锁定规则,阻塞对防火墙的任何访问。
除了防火墙管理员,任何人都不能访问防火墙。
∙管理员访问:没有人能连接防火墙,包括管理员。
必须创立一条规则允许管理员访问防火墙。
∙丢弃全部:在默认情况下,丢弃所有不能与任何规则匹配的信息包。
∙不记录:通常,网络上大量被防火墙丢弃并记录的通信通话会很快将日志填满,创立一条规则丢弃/拒绝这种通话但不记录它。
∙DNS 访问:允许Internet用户访问DNS服务器。
∙邮件访问:希望Internet和内部用户通过SMTP访问邮件服务器,内部用户通过POP访问邮件服务器。
∙Web 访问:我们希望Internet和内部用户通过HTTP访问Web服务器。
∙阻塞DMZ:必须阻止内部用户公开访问我们的DMZ。
∙DMZ的规则:DMZ应该从不启动与内部网络的连接。
只要有从DMZ到内部用户的通话,它就会拒绝、记录并发出警告。
∙管理员访问内部网络:我们允许管理员(受限于特殊的资源IP)以加密方式访问内部网络。
∙性能:把最常用的规则移到规则集的顶端,以提高性能。
∙入侵检测功能:有助于那些喜欢扫描检测的人。
∙附加规则:可以添加一些附加规则,例如:阻塞任何来自广告商基于IP地址的连接,这可节省用户时间并提高性能。
更新规则
在组织好规则之后,建议应在规则后写上注释并经常更新。
注释帮助你明白哪条规则做什么。
对规则理解得越好,错误配置的可能性就越小。
对那些有多重防火墙的大机构来说,建议当规则被修改时,把规则更改者的名字、规则变更的日期/时间以及规则变更的原因等信息加入注释中,这将帮助跟踪谁修改了哪条规则以及修改的原因。