1multiport扩展:以离散方式定义多个端口,最多15

#iptables -I OUTPUT -s 192.168.10.204 -p tcp -m multiport –sports 22:23,80 -m iprange –dst-range 192.168.10.0-192.168.10.255 -j ACCEPT

2iprange扩展:指明连续ip(一般不能扩展整个网络)

#iptables -I INPUT -d 192.168.10.204 -p tcp –m multiport –dports 22:23,80 -m iprange –src-range 192.168.10.0-192.168.10.255 -j ACCEPT

3string扩展:检查报文中的字符串进行匹配

#vim /www/htdocs/bad.html

movie

# iptables -I OUTPUT -m string –algo bm –string 'movie' -j  REJECT

blob.png

4time扩展:根据报文到达的时间与指定的时间范围做匹配

[root@system-4 ~]# iptables -I INPUT -d 192.168.10.204 -p tcp –dport 80 -m time –timestart 18:51 –timestop 18:52 -j REJECT

5connlimit扩展:根据每客户端ip做并发连接数做匹配

[root@system-1 ~]# iptables -I INPUT -p tcp –dport 22 -m connlimit –connlimit-above 3 -j REJECT

6limit扩展:基于收发报文的速率做匹配

[root@system-4 ~]# iptables -A INPUT -d 192.168.10.204 -p icmp –icmp-type 8 -m limit –limit-burst 5 –limit 30/minute -j ACCEPT

[root@system-4 ~]# iptables -A OUTPUT -s 192.168.10.204 -p icmp –icmp-type 0 -j ACCEPT

7state扩展:根据连接追踪机制检查连接的状态

调整连接追踪功能所能够容纳的最大连接数:

/proc/sys/net/ nf_conntrack_max

可追踪到并记录下的连接:/proc/net/ nf_conntrack

连接状态:

NEW:新发出的请求,连接追踪模版中不存在此连接条目。因此,将其识别为第一次发出的请求。

ESTABLISHEDNEW状态之后,连接追踪模版为其建立的条目失效之前期间内所进行的通信的状态。

RELATED:相关的连接

INVALIED:无法识别的连接。

iptables -I INPUT -d 192.168.10.204 -p tcp –dport 22 -m state –state NEW,ESTABLISHED -j ACCEPT

iptables -I OUTPUT -s 192.168.10.204 -p tcp –sport 22 -m state –state ESTABLISHED -j ACCEPT

blob.png

[root@system-4 ~]# iptables -A INPUT -d 192.168.10.204 -p icmp –icmp-type 8 -m state –state NEW,ESTABLISHED -j ACCEPT

[root@system-4 ~]# iptables -A OUTPUT -s 192.168.10.204 -p icmp –icmp-type 0 -m state –state ESTABLISHED -j ACCEPT

[root@system-4 ~]# iptables -I OUTPUT -m state –state ESTABLISHED -j ACCEPT

blob.png

分类: Linux服务架构