筛选路由器 — 第一道防线 应当使用筛选路由器来保护任何面向 Internet 的防火墙。这种路由器只有两个接口:一个与 Internet 相连而另一个与外部防火墙(或必要时与负载平衡的防火墙群集)相连。所有攻击中,将近 90% 涉及到 IP 地址失窃,或改变源地址以使数据包看起来如同来自内部网络。传入数据包没有什么理由可以来自内部网络。另外,由于一个网络的安全性通常取决于所连接网络的安全性,因此最好能避免您的网络被用作假数据包的来源。筛选路由器是实现这些目的的理想方法。
应当将筛选路由器配置为“allow all except that which is specifically denied”(允许通过特别拒绝以外的所有通信)状态。这样,ACL 就执行下列操作:
定义一个进入筛选器,它拒绝任何源地址为内部网络地址的传入通信。 定义一个外出筛选器,它拒绝源地址非内部网络的传出通信。 拒绝 RFC 1918 中所确定的任何专用地址范围内源地址或目标地址的所有传入或传出通信。 允许所有其它的传入和传出通信。 这可阻止大多数攻击,因为窃取内部地址几乎是所有攻击的基本条件。将筛选路由器后面的防火墙配置为“deny all except that which is specifically allowed”(拒绝除特别允许之外的所有通信)状态。
(这部分信息的依据为 RFC 2267,“Network ingress filtering: Defeating denial of service attacks which employ IP source address spoofing”,1998 年 1 月。)
基于主机的防火墙保护。彻底防御应当是任何安全方案的设计目标。筛选路由器和传统的 DMZ 提供三层保护,它们通常足以保护大多数网络服务。对于高度安全的环境,基于主机的防火墙还可提供另一层的保护。基于主机的防火墙允许安全管理员确定详细周全的安全策略,以使服务器的 IP 栈只对该服务器上应用程序所要求的端口和协议开放。一些基于主机的防火墙还实施传出保护,以帮助确保某台遭到破坏的机器不会影响同一网络上的其它机器。当然,基于主机的防火墙确实增加了普通系统管理的负担。应考虑仅对那些包含至关重要数据的服务器增加基于主机的保护。
交换网络可以实际杜绝这种情况的发生。交换网络中任何机器的网络接口将只能看到特别发给该接口的那些帧。在这里混杂模式没有什么不同,因为 NIC 不识别其它任何网络通信。攻击者窥探交换网络的唯一已知方法是:攻击者破坏交换机本身并更改其操作,这样交换机至少在一个端口充斥了所有通信。破坏交换机很难,并且很快会被网络管理员发现。
交换网络还免去了使用双主机 DMZ 服务器的必要。双主机提供不了更多的附加保护;附加的 NIC 不能防止来自已破坏计算机的攻击。但是在需要高可用性或高性能情况下,使用两个 NIC 可能更加适合。
消除故障点。在需要高可用性的环境中有必要使用两个 NIC。一种切实可行的设计方案是在核心部分包括两台交换机,并在每台服务器中包括两个 NIC。一个 NIC 连接到一台交换机,另一个 NIC 连接到另一台交换机。