扫一扫
分享文章到微信
扫一扫
关注官方公众号
至顶头条
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 Firewall 2.3.5 作者:MonMotha
Firewallscript (iptables 4.4c-3 devel) 作者:Patrik Hildingsson
Ferm-0.0.18 作者:Auke Kok
AGT-0.83 作者:Andy Gilligan
Knetfilter-1.2.4 作者:Luigi Genoni
gShield-2.0.2 作者:R. Gregory
MonMotha的Firewall 2.3.5
MonMotha写的Firewall 2.3.5是一个大约30K的shell脚本。目前,主要适用于基于主机的保护,因为一些基于网络的选项正在开发中。这个脚本的界面(例如:给 iptables传递配置选项的方法)有点混乱。不过,它不需要配置文件而且安装容易,直接复制到任何地方都可以。默认情况下,它根本不做什么,实际上根本就不执行,也缺少文档。这个脚本对于拨号用户可能有点用处。
Firewallscript
Firewallscript(IFS 4.4d)也是一个bash脚本,大约有85K。这个脚本可以用于基于主机和网络的防护。首次运行时,它会直接产生一个配置文件。不过,在默认情况下,这个文件不起什么作用,只有测试作用。这个脚本可以配置NAT和地址伪装。这个脚本非常复杂,但是缺少文档,因此最好能够仔细阅读它的代码,使用 iptables -L命令哪个链已经生效,什么被允许/拒绝。这个脚本的IP报文追踪功能还可以为你提供娱乐。此外,它还会自动探测、加载iptables需要的内核模块。这个脚本和上一个脚本还具有取消(undo)功能,能够恢复iptables原来的配置文件。
Ferm
Ferm是一个Perl脚本,使用一种类C语言写成的配置文件。这种语言非常容易阅读和理解。这个脚本有很好的文档和丰富的示例作为参考。
这是一个例子:
-----------------------------------------------------------------------------
# simple workstation example for ferm
chain input {
if ppp0 # put your outside interface here
{
proto tcp goto fw_tcp;
proto udp goto fw_udp;
proto icmp goto fw_icmp;
}
}
chain fw_tcp proto tcp {
dport ssh ACCEPT;
syn DENY log;
dport domain ACCEPT;
dport 0:1023 DENY log;
}
如果您非常迫切的想了解IT领域最新产品与技术信息,那么订阅至顶网技术邮件将是您的最佳途径之一。