iptables配置工具比较

iptables配置工具比较

简介

在过去几年中,Linux作为防火墙平台的应用显著增长。从早期1.2版内核的ipfwadm开始,Linux的防火墙代码也走过了很长一段路程了。在 2.4版的Linux内核中,使用了netfilter体系。在最新的2.4版中,Linux大大加强了安全性,例如:更好的加密支持和 netfilter体系的使用。netfilter具有完全的向后兼容性。

本文将对iptables的配置做一个综述并且重点介绍一些iptables的配置工具。本文的讨论将着眼于Linux内核的IP防火墙以及其各种界面的配置工具,比如:GUI或者脚本(shell、Perl或者特定的配置语言)。使用这些工具能够简化iptables的配置减少配置的错误。关于 iptables的知识请参考Rusty Russell写的Linux iptables HOWTO。

使用命令行配置iptables的困难

使用iptables的命令行接口来配置iptables防火墙对一个人来说是一个挑战,用户很难指定所有IP报文的行为。用户需要对 TCP/IP和应用层协议有较深的了解。象其前辈ipchains一样,iptables把IP过滤规则归并到链中,IP报文遍历规则链接受处理,还可以送到另外的链接受处理,或者最后由默认策略(ACCEPT、DROP、REJECT)处理。有些网络应用程序比其它一些程序更容易穿过防火墙,因此需要理解网络连接的建立和断开。

我们看一下POP3协议,这是最简单的协议之一。允许所有向内目标端口是110的报文通过通过无法解决所有的管理问题,因为这样只能使客户端向发出申请,而服务器却无法应答。另外,如果使用网络地址转换(NAT)和其它方式的报文转发,也存在许多问题。因为防火墙的配置将影响到整个企业的安全,所以应该特别小心。下面将大概地讨论iptables的配置,要获得更多细节请参考Linux iptables HOWTO

iptables的命令行选项

在进入这时的讨论之前,我们看一下iptables命令行选项的一个总结。

规则链维护选项

1.建立新的规则链(-N)
2.删除一个空的规则链(-X)
3.改变一个内置规则链的策略(-P)
4.列出一条规则链中的规则(-L)
5.擦写一条规则链中的规则(-F)

规则维护

1.在一条规则链中加入一条新的规则(-A)
2.删除一条规则链中某个位置的规则(-D)

iptables的优点

在讨论各种iptables配置工具之前,让我们看一下iptables的优点,尤其是netfilter比ipchains具有的优势。

iptables允许建立状态(stateful)防火墙,就是在内存中保存穿过防火墙的每条连接。这种模式对于有效地配置FTP和DNS以及其它网络服务是必要的。

iptables能够过滤TCP标志任意组合报文,还能够过滤MAC地址。

系统日志比ipchains更容易配置,扩展性也更好。

对于网络地址转换(Network Address Translation)和透明代理的支持,netfilter更为强大和易于使用。

iptable能够阻止某些DOS攻击,例如SYS洪泛攻击。

iptables配置工具

现在,我们看一下Linux iptables的一些配置工具。我主要关注每个工具的特征、弹性和易用性。我们将讨论以下的工具:

MonMotha’s …