手机站
网通分站
电信主站
密 码:
用户名:
当前位置 : 主页>网站运营>建站经验>列表

Iptables 指南 1.1.19(中文版)(四)

来源:互联网 作者:west263.com 时间:2008-04-16
西部数码-全国虚拟主机10强!40余项虚拟主机管理功能,全国领先!双线多线虚拟主机南北访问畅通无阻!免费赠送企业邮局,.CN域名,自助建站480元起,免费试用7天,满意再付款! P4主机租用799元/月.月付免压金!

8.7. rc.flush-iptables.txt

rc.flush-iptables.txt不应该被称作脚本,他只是重置并清空任何的表、链。他先把filter表的INPUTOUTPUT FORWARD链的策略设为缺省的ACCEPT,然后是nat表的PREROUTING POSTROUTINGOUTPUT链。我们这样做就不必为被关闭的连接和没有通过的包而操心。这个脚本就是为防火墙配置和除错用的,因此我们只关心打开任何的东西并恢复他们的缺省值就行了。

之后,我们清空filter表里任何的链,紧接着是NAT表的。这样,就不会有什么不应该存在的规则了。这个做完后就该删除filter表和NAT表里的自定义链了。这时,脚本的工作就应该完成了。当然,假如您用到了mangle表,能够在这个脚本里添加相应的清空规则。(译者注:其实作者已这样做了)

Note

最后再说明一下,有些人写信建议我把这个脚本放到rc.firewall脚本里面,而且是用Red Hat Linux脚本的语法,这样当rc.firewall启动时,这个脚本也能够启动。但我不会这样做的,因为这是个指南,主要是用来学习iptables的使用方法的,不应该有过多的shell脚本特有的语法。加入shell脚本特有的语法会使阅读的难度大大增加,这就远离了我的初衷。这个指南是按照易读的标准来写的,以后我会继续这样做。


8.8. Limit-match.txt

这个脚本是用来测试limit match的,也会让您明白limit match是如何工作的。装入这个脚本,再用不同的时间间隔发送ping数据包,能够看出哪个包能够通过,这些包又是以什么频率通过的。您应该能够看出,在limit的burst值再次到达之前,任何的echo replies都会被阻塞。


8.9. Pid-owner.txt

这个脚本说明了如何使用PID owner match。他其实什么都没做,但您能够运行一下,命令iptables -L -v的输出会说明他确实匹配了些东西。


8.10. Sid-owner.txt

说明SID owner match如何使用的一个例子。同样,他也是什么都没做,但您能够运行一下,命令iptables -L -v的输出会说明他确实匹配了些东西。


8.11. Ttl-inc.txt

一个小小的例子,说明了如何隐藏我们的防火墙或路由器,以使跟踪路由程式看不到,这样就能够对可能的攻击者隐藏很多信息。


8.12. Iptables-save ruleset

这只是个输出的例子,他在规则的保存和恢复里被用来说明 iptables-save命令是如何使用的。所以,他没有任何用处,只是个参考而已。


附录 A. 常用命令详解

A.1. 查看当前规则集的命令

查看当前正在使用的规则集是个十分常用的操作,使用iptables的什么命令还记得吗?我们可是在规则是如何练成的这一章里介绍过啊,虽然到时说得简单了点。再复习一下吧,命令语法如下:

iptables -L

这个命令会尽可能地以易读的形式显示当前正在使用的规则集。比如,他会尽量用文档/etc/services里相应的名字表示端口号,用相应的DNS记录表示IP地址。但后者可能会导致一些问题,例如,他想尽力把LAN的IP地址(如192.168.1.1)解析成相应的名字。但192.168.0.0/16这个网段是私有的,也就是说,他只能用在局域网里,而不能在Internet里使用,所以他不会被Internet上的DNS服务器解析。因此,当解析这个地址时,命令就似乎停在那儿了。为了避免这种情况的发生,我们就要使用选项:

iptables -L -n

假如您想看看每个策略或每条规则、每条链的简单流量统计,能够在上面的命令后再加一个verbose标志,如下:

iptables -L -n -v

不要忘了,iptables -L命令还能够查看nat表和mangle表的内容哦(更不要忘了,默认的表是filter),只需要使用-t选项,比如我们只想看nat表的规则,就用下面的命令:

iptables -L -t nat

/proc里,可能更有一些文档您会感兴趣。比如,您能够在连接跟踪记录表里看到当前有哪些连接。这个表包含了当前的任何连接,您还能够通过他了解到每个连接处于什么状态。要注意,这个表是不能编辑的,即使能够,也不应该更改他。能够用下面的命令查看这个表:

cat /proc/net/ip_conntrack | less

此命令会显示当前任何被跟踪的连接,但要读懂那些记录可是有些难度哦。


A.2. 修正和清空iptables的命令

即使您把iptables弄的一塌糊涂,我们也有很有效的命令来处理,而不必重新启动电脑。我接到过很多关于这个问题的询问,所以我想最好在这儿回答一下。假如您增加的规则有问题,要想删掉他,只要把命令中的-A改为-D即可。这样,iptables就会找到那个错误的规则并删掉他,但假如在您的规则里有好几条同样的规则,他只能删掉找到的第一条。假如您不想这样的事情发生,那就试试用序号来删除。如,您想删除INPUT链的第10条规则,能够使用 iptables -D INPUT 10

文章整理:西部数码--专业提供域名注册虚拟主机服务
http://www.west263.com
以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!