在描述不仅可以提供和管理网络间的链接,同时还能够控制网络间的数据流的机制时,防火墙可能是最常使用的术语。 严格地说,本节所述的机制应该叫做包过滤器。 包过滤器根据特定准则(如协议、端口和 IP 地址)来控制数据流。 这样您就可以根据包的地址来拦截不应该发送到您网络中的包。 举例来说,若允许对 Web 服务器进行公共访问,应明确打开相应的端口。 不过,包过滤器并不扫描有合法地址的包的内容(例如那些要发送到该 Web 服务器的包)。 例如,即使是在入站包想要破坏 Web 服务器上的 CGI 程序的情况下,包过滤器仍然允许它们通过。
一种更有效但同时也更复杂的机制是将多种系统结合起来使用,例如让包过滤器与应用程序网关或代理进行交互。 在这种情况下,包过滤器将拒绝所有发往禁用端口的包, 而只接受发往应用程序网关的包。 此网关或代理伪装成服务器的实际客户端。 从某种意义上说,可以将这种代理视为应用程序使用的协议级的伪装主机。 这种代理的一个示例就是 Squid(一种 HTTP 代理服务器)。 要使用 Squid,必须将浏览器配置为通过代理通讯。 代理缓存将提供请求的任何 HTTP 页,缓存中没有的页将由代理从因特网获取。 再以 SUSE proxy-suite (proxy-suite) 为例,该程序为 FTP 协议提供了代理。
下一节着重介绍 SUSE Linux Enterprise 附带的包过滤器。 有关包过滤和防火墙的详细信息,请阅读 howto 包中的 Firewall HOWTO(防火墙使用说明)。 如果已安装此包,请阅读 HOWTO,方法是使用
less /usr/share/doc/howto/en/txt/Firewall-HOWTO.gz