LINUX iptables防火牆規則的匹配條件

1、常規匹配
一、協議匹配
-p協議名
例:若要丟棄經過icmp協議訪問防火牆本機的數據包、容許轉發通過防火牆的除icmp協議的數據包
iptables -I INPUT -p icmp -j DROP
iptables -A FORWARD -P ! icmp -j ACCEPT
二、地址匹配
例:拒絕轉發源地址爲192.168.1.11的數據、容許轉發源地址位於192.168.7.0/24網段的數據
iptables -I FORWAED -s 192.168.1.11 -j REJECT
iptables -I FORWAED -s 192.168.7.0/24 -j ACCEPT
三、網絡接口匹配
例: 丟棄從外網接口(eth1)訪問防火牆本機且源地址爲私有地址的數據包
iptables -I INPUT -i eth1 -s 10.0.0.0/8 -j DROP
iptables -I INPUT -i eth1 -s 172.16.0.0/12 -j DROP
iptables -I INPUT -i eth1 -s 192.168.0.0/16 -j DROP
2、隱含匹配
一、端口匹配
例:容許爲網段192.168.4.0/24轉發DNS查詢數據包
iptables -A FORWAED -s 192.168.4.0/24 -p udp --dport 53 -j ACCEPT
iptables -A FORWAED -d 192.168.4.0/24 -p udp --sport 53 -j ACCEPT
例:構建Vsftpd服務器時,要開放20、21端口,以及用於被動模式的端口範圍24500~24600
iptabels -I INPUT -p tcp --dport 20:21 -j ACCEPT
iptabels -I INPUT -p tcp --dport 24500:24600 -j ACCEPT
二、ICMP類型匹配
代碼8爲請求  0爲回顯  3爲目標不可達
例:禁止其餘主機ping本機,可是容許本機ping其餘主機
iptables -A INPUT -p icmp --icmp-type 8 -j DROP
iptables -A INPUT -p icmp --icmp-type 0 -j ACCEPT
iptables -A INPUT -p icmp --icmp-type 3 -j ACCEPT
iptables -A INPUT -p icmp -j DROP
3、顯示匹配
一、多端口匹配
使用「-m multiport --dports 端口列表」、「-m multiport --sports 端口列表」的形式,來檢查數據包的源端口和目標端口,端口直接以逗號分隔。
例:容許本機開放2五、80、1十、143端口
iptables -I INPUT -p tcp -m multiport --dports 25,80,110,143 -j ACCEPT
二、ip範圍匹配
使用「-m iprange --src-range IP範圍」、「-m iprange --dst-range IP範圍」的形式,用來檢查數據包的源地址和目標地址。
例:禁止轉發源地址位於192.168.4.21與192.168.4.28之間的tcp數據包
iptables -A FORWAED -p tcp -m iprange --src-range 192.168.4.21-192.168.4.28 -j DROP
相關文章
相關標籤/搜索