Linux多個埠組合,iptables使用multiport 新增多個不連續埠

技术颜良發表於2024-06-25

使用multiport可以新增多個不連線的埠,最多可以新增15組,如下:

iptables -A INPUT -p tcp -m multiport --dports 21:25,135:139 -j DROP

iptables -A INPUT -p tcp -m multiport --dports 110,80,25,445,1863,5222 -j ACCEPT

iptables -A INPUT -i eth0 -p tcp -m multiport --dports 22,80,443 -m state --state NEW,ESTABLISHED -j ACCEPT

iptables -A OUTPUT -o eth0 -p tcp -m multiport --sports 22,80,443 -m state --state ESTABLISHED -j ACCEPT

如果不使用multiport引數,只能是新增連續的埠。

如:

iptables -A INPUT -p tcp –dport 21:25 -j DROP

而不能寫成21:25,135:139

擴充套件匹配條件總結

我們來總結一下今天認識的兩個擴充套件模組,以及其中的擴充套件條件(並非全部,只是這篇文章中介紹過的)

tcp擴充套件模組

常用的擴充套件匹配條件如下:

-p tcp -m tcp –sport 用於匹配tcp協議報文的源埠,可以使用冒號指定一個連續的埠範圍

-p tcp -m tcp –dport 用於匹配tcp協議報文的目標埠,可以使用冒號指定一個連續的埠範圍

#示例如下
iptables -t filter -I OUTPUT -d 192.168.1.146 -p tcp -m tcp --sport 22 -j REJECT
iptables -t filter -I INPUT -s 192.168.1.146 -p tcp -m tcp --dport 22:25 -j REJECT
iptables -t filter -I INPUT -s 192.168.1.146 -p tcp -m tcp --dport :22 -j REJECT
iptables -t filter -I INPUT -s 192.168.1.146 -p tcp -m tcp --dport 80: -j REJECT
iptables -t filter -I OUTPUT -d 192.168.1.146 -p tcp -m tcp ! --sport 22 -j ACCEPT

multiport擴充套件模組

常用的擴充套件匹配條件如下:

-p tcp -m multiport –sports 用於匹配報文的源埠,可以指定離散的多個埠號,埠之間用”逗號”隔開

-p udp -m multiport –dports 用於匹配報文的目標埠,可以指定離散的多個埠號,埠之間用”逗號”隔開

#示例如下
iptables -t filter -I OUTPUT -d 192.168.1.146 -p udp -m multiport --sports 137,138 -j REJECT
iptables -t filter -I INPUT -s 192.168.1.146 -p tcp -m multiport --dports 22,80 -j REJECT
iptables -t filter -I INPUT -s 192.168.1.146 -p tcp -m multiport ! --dports 22,80 -j REJECT
iptables -t filter -I INPUT -s 192.168.1.146 -p tcp -m multiport --dports 80:88 -j REJECT
iptables -t filter -I INPUT -s 192.168.1.146 -p tcp -m multiport --dports 22,80:88 -j REJECT

相關文章