文章详情

  • 游戏榜单
  • 软件榜单
关闭导航
热搜榜
热门下载
热门标签
php爱好者> php文档>Netfilter 扩展模块使用方法

Netfilter 扩展模块使用方法

时间:2005-11-08  来源:junglegq

翻译:http://www.netfilter.org/documentation/HOWTO//netfilter-extensions-HOWTO-3.html

Netfilter 扩展模块使用方法

翻译:http://www.netfilter.org/documentation/HOWTO//netfilter-extensions-HOWTO-3.html

 

常用的帮助信息:

# iptables -m the_match_you_want –help

 

1.  ah-esp patch

匹配ah/esp 隧道

格式:--ahspi [!] spi[:spi]

举例:# iptables -A INPUT -p 50 -m esp --espspi 500 -j DROP

不要忘记添加适当的协议(-p 50 or –p 51)

 

2.  Condition patch

格式:--condition [!] conditionfile

当指定的条件文件为“1”时,匹配成立。常用于临时性的过滤。匹配文件被放在`/proc/net/ipt_condition/` 目录下

举例:

# iptables -A FORWARD -p tcp -d 192.168.1.10 --dport http -m condition --condition webdown -j REJECT --reject-with tcp-reset




# echo 1 > /proc/net/ipt_condition/webdown

 

3.  Conntrack patch

???

 

4.  Fuzzy patch

格式:--upper-limit n         --lower-limit n

动态调整性能,当低于lower-limit时,不作限速;当高于upper-limit时,100%限速

举例:

iptables -A INPUT -m fuzzy --lower-limit 100 --upper-limit 1000 -j REJECT

当包在100pps以上,开始限速,最高1000pps

 

5.  iplimit patch

限制同一个ip或主机的并行连接tcp数

格式:

[!] --iplimit-above n

--iplimit-mask n

举例:

# iptables -A INPUT -p tcp --syn --dport http -m iplimit --iplimit-above 4 -j REJECT

 

 

6.  Ipv4options patch

匹配ipv4的带“option”字段的数据包

举例:

# iptables -A INPUT -m ipv4options --rr -j DROP

# iptables -A INPUT -m ipv4options --tr -j DROP

 

7.  Length patch

长度匹配

格式:[!] --length length[:length]

举例:

# iptables -A INPUT -p icmp --icmp-type echo-request -m length --length 86:0xffff -j DROP

       (匹配超过85字节的包)

隐含的默认最小值为0,最大值为65535

 

8.  Mport patch

多端口匹配

举例:

# iptables -A INPUT -p tcp -m mport --ports 20:23,80 -j DROP

 

9.  Nth patch

匹配第n个包

举例:

# iptables -A INPUT -p icmp --icmp-type echo-request -m nth --every 2 -j DROP

可以进行负载平衡,具体配置如下:

# iptables -t nat -A POSTROUTING -o eth0 -m nth --counter 7 --every 3 --packet 0 -j SNAT --to-source 10.0.0.5

# iptables -t nat -A POSTROUTING -o eth0 -m nth --counter 7 --every 3 --packet 1 -j SNAT --to-source 10.0.0.6

# iptables -t nat -A POSTROUTING -o eth0 -m nth --counter 7 --every 3 --packet 2 -j SNAT --to-source 10.0.0.7

格式:

--every Nth

[--counter] num

[--start] num

[--packet] num

       num范围:0-(nth-1)

???If `--packet' is used for a counter, then there must be Nth number of --packet rules, covering all values between 0 and (Nth-1) inclusively.

 

10.Pkttype patch

包类型匹配

举例:# iptables -A INPUT -m pkttype --pkt-type broadcast -j DROP

格式:--pkt-type [!] packettype

 

11.Pool patch

正在重写

 

12.Psd patch  ???

发现端口扫描

举例:# iptables -A INPUT -m psd -j DROP

格式:

[--psd-weight-threshold threshold]

[--psd-delay-threshold delay]

[--psd-lo-ports-weight lo]

[--psd-hi-ports-weight hi]

 

13.Quota patch

限制收取的字节数

举例:# iptables -A INPUT -p tcp --dport 80 -m quota --quota 52428800 -j ACCEPT

       (限制80端口的数据总数是5Mbyte)

 

14.Random patch

随机匹配(给定或然率)

举例:

# iptables -A INPUT -p icmp --icmp-type echo-request -m random --average 50 -j DROP

格式:[--average percent]

默认值:50%      取值范围:1-99%

 

15.Realm patch

匹配路由的realm值

举例:# iptables -A OUTPUT -m realm --realm 10 -j LOG

 

16.Recent patch

动态调整一个配置文件中的ip列表

格式:

--name <filename>

--set        #添加源ip到文件中,如果源ip已存在,则更新条目,

--rcheck         #仅查看条目

--update         #查看条目,如果已存在该源ip,则更新条目,不会添加条目

--remove        #查看条目,如果存在,则删除,返回“true”;不存在,则返回“false”

--seconds second   #必须和“rcheck”或“update”连用。仅匹配在second秒内的条目

--hitcounts hits       #必须和“rcheck”或“update”连用。匹配超过hits的连接数

--rttl                      #必须和“rcheck”或“update”连用。匹配—set选项设定的ttl值,防止DOS攻击

举例:

# iptables -A FORWARD -m recent --name badguy --rcheck --seconds 60 -j DROP

# iptables -A FORWARD -p tcp -i eth0 --dport 139 -m recent --name badguy --set -j DROP

 

17.Record-rpc patch

???

 

18.String patch

匹配ip包中的任意字符串

格式:--string [!] string

举例:

# iptables -A INPUT -m string --string 'cmd.exe' -j QUEUE

 

19.Time patch

匹配特定时间段

举例:

# iptables -A INPUT -m time --timestart 8:00 --timestop 18:00 --days Mon,Tue,Wed,Thu,Fri -j ACCEPT

 

20.Ttl patch

匹配ttl

格式:

--ttl-lt value

--ttl-eq value

--ttl-gt value

举例:

iptables -A INPUT -m ttl --ttl-lt 5 -j LOG

 

21.U32 patch

???

相关阅读 更多 +
排行榜 更多 +
打螺丝高手

打螺丝高手

模拟经营 下载
解救火柴人计划安卓版

解救火柴人计划安卓版

体育竞技 下载
鸡生化精英安卓版

鸡生化精英安卓版

飞行射击 下载