我目前正在运行ISA 2004,并将很快运行一个Untangle框。 我一直觉得把这些更高级的软件防火墙放在笨重的硬件防火墙(比如中级消费者路由器)后面会更安全一些。 所以基本上我会根据需要从硬件防火墙到软件防火墙做端口转发,当然这个软件防火墙的configuration比较复杂。
按照我的想法,这至less可以防止我在软件防火墙上意外打开某些东西,并且可能会从软件防火墙中产生故障。 但是,它确实只能帮助我阻止边缘端口(好吧,比这好一点,但不是很多)。 另外它使得configuration更加复杂,并且更难以独立地testing每个系统。
我应该丢弃廉价的路由器/防火墙盒?
就个人而言,这只是我的看法,我并没有看到这么做的逻辑。 如果你在一个防火墙上犯了一个错误,你可能会犯两个错误。 如果一个人狡猾,两个人可能会狡猾。 那么为什么不是三,四,五呢?
我宁愿实施一个单一的企业级防火墙,这个防火墙拥有一个值得信赖的,可靠的logging,并且有一个独立的,经验丰富的,无偏见的方面来validation它的configuration和操作,并为我执行入侵testing。
这有点像古老的谚语:如果一个药片对我有好处,那么两个一定要好起来,对吧?
从安全angular度来看,您必须权衡环境的风险。 链接设备可能更安全(只要它们是不同的技术),但是,正如你所知道的那样,创build(更多)更多的维护开销。
就个人而言,如果你不是一个大目标和/或没有看到大量的stream量,那么我不认为安全的好处大于维护开销的成本。 不过,这又取决于你所要保护的是什么,如果发生什么事情,你需要重build多长时间。 这是只有你可以计算的东西。
从性能angular度来看,你在看什么样的负载? 我在防火墙解决scheme中链接设备时遇到的最大问题之一是硬件处理瓶颈,即一个较小的设备窒息整个事件,因为它不能足够快地处理事情。
最大的原因是有多重保护的障碍。 一个系统的function通常不会出现在另一个系统中,所以它为攻击者提供了一个更多的variables来应对。 然而,它开始南下,而且在考虑诸如针对极端边缘设备的DoS攻击之类的事情时,只会略微有益。 当发生这种情况时,你会被搞砸,直到你解决这个攻击。
在我自己的networking上,我使用了多层方法。 这通常归结为一个外部的边界防火墙,当你接近各种机器,更多的层,包括大多数主机的防火墙。
所以,虽然我会说有多个参数是有用的,我不相信在这些参数的每一个有多个层是更安全的。
你更有可能会打开链接configuration错误的端口。 通常当有防火墙问题时,pipe理员开始打开端口直到它工作,然后找出要closures的东西。 有了多个configuration多个防火墙的configuration操作,很容易错过任何东西。
便宜并不一定意味着讨厌。 例如,运行OpenWRT和Shorewall的RouterStation Pro是一款function非常强大的防火墙…,价格为79美元,不包括机箱和电源注入器。 关键是,它有一个企业级的操作系统,并有足够的内存和CPU,它不可能瓶颈您的networking。 使用其中之一是有道理的,而运行其默认固件的消费级设备则不然。