很不错的iptables帮助指南,值得学习和收藏

转from http://iptables-tutorial.frozentux.net/cn/iptables-tutorial-cn-1.1.19.html

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

6.4.2.3. ICMP matches

ICMP协议也是无连接协议,ICMP包更是短命鬼,比UDP的还短。ICMP协议不是IP协议的下属协议,而是他的辅助者,其主要作用是报告错误和连接控制。ICMP包的头和IP的很相似,但又有很多不同。这个协议最主要的特点是他有很多类型,以应对不同的情况。比如,我们想访问一个无法访问的地址,就会收到一个ICMP host unreachable信息,他的意思是主机无法到达。在附录ICMP类型里有完整的ICMP类型列表。虽然有这么多类型,但只有一个 ICMP matche,这就足够对付他们了。这个matche是在指定--protocol ICMP时自动装入的。注意任何的通用匹配都能够使用,这样我们就能够匹配ICMP包的源、目地址。

Table 6-7. ICMP matches

Match--icmp-type
Exampleiptables -A INPUT -p icmp --icmp-type 8
Explanation根据ICMP类型匹配包,类型的指定能够使用十进制数值或相应的名字,数值在RFC792中有定义,名字能够用iptables --protocol icmp --help 查看,或在附录ICMP类型中查找。这个匹配也可用英文感叹号取反,如:--icmp-type ! 8就表示匹配除类型8之外的任何ICMP包。要注意有些ICMP 类型已废弃不用了,更有一些可能会对无防护的主机带来“危险”,因为他们可能把包重定向到错误的地方。

6.4.3. 显式匹配

显式匹配必须用-m--match装载,比如要使用状态匹配就必须使用-m state。有些匹配还需要指定协议,有些就无需,比如连接状态就不要。这些状态是NEW(还未建立好的连接的第一个包), ESTABLISHED(已建立的连接,也就是已在内核里注册过的),RELATED(由已存在的、处于已建立状态的连接生成的新连接),等等。有些匹配还处在研发阶段,或还只是为了说明iptables的强大能力。这说明不是任何的匹配一开始就是实用的,但以后您可能会用到他。随着iptables 新版本的发布,会有一些新的匹配可用。隐含匹配和显式匹配最大的区别就是个是跟随协议匹配自动装载的,一个是显式装载的。


6.4.3.1. Limit match

这个匹配操作必须由-m limit明确指定才能使用。有了他的帮助,就能够对指定的规则的日志数量加以限制,以免您被信息的洪流淹没哦。比如,您能够事先设定一个限定值,当符合条件的包的数量不超过他时,就记录;超过了,就不记录了。我们能够控制某条规则在一段时间内的匹配次数(也就是能够匹配的包的数量),这样就能够减少DoS syn flood攻击的影响。这是他的主要作用,当然,更有很多其他作用(译者注:比如,对于某些不常用的服务能够限制连接数量,以免影响其他服务)。limit match也能够用英文感叹号取反,如:-m limit ! --limit 5/s表示在数量超过限定值后,任何的包都会被匹配。

(译者注:为了更好地理解这个匹配操作,我们通过一个比喻来解释一下。原文也做了类似地比喻,但我觉得对于初学者不易理解,故未采用。)limit match的工作方式就像一个单位大门口的保安,当有人要进入时,需要找他办理通行证。早上上班时,保安手里有一定数量的通行证,来一个人,就签发一个,当通行证用完后,再来人就进不去了,但他们不会等,而是到别的地方去(在iptables里,这相当于一个包不符合某条规则,就会由后面的规则来处理,假如都不符合,就由缺省的策略处理)。但有个规定,每隔一段时间保安就要签发一个新的通行证。这样,后面来的人假如恰巧赶上,也就能够进去了。假如没有人来,那通行证就保留下来,以备来的人用。假如一直没人来,可用的通行证的数量就增加了,但不是无限增大的,最多也就是刚开始时保安手里有的那个数量。也就是说,刚开始时,通行证的数量是有限的,但每隔一段时间就有新的通行证可用。limit match有两个参数就对应这种情况,--limit-burst指定刚开始时有多少通行证可用,--limit指定要隔多长时间才能签发一个新的通行证。要注意的是,我这里强调的是“签发一个新的通行证”,这是以iptables的角度考虑的。在您自己写规则时,就要从这个角度考虑。比如,您指定了--limit 3/minute --limit-burst 5 ,意思是开始时有5个通行证,用完之后每20秒增加一个(这就是从iptables的角度看的,要是以用户的角度看,说法就是每一分钟增加三个或每分钟只能过三个)。您要是想每20分钟过一个,只能写成--limit 3/hour --limit-burst 5,也就是说您要把时间单位凑成整的。

Table 6-8. Limit match options

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

Match
Google