Solution 1 :
C'est la bonne méthode :
iptables -A INPUT -p tcp --match multiport --dports 1024:3000 -j ACCEPT
Par exemple. Source ici.
Solution 2 :
Ce qu'on vous a dit est vrai, même si vous l'avez mal écrit (vous avez oublié --dport
).
iptables -A INPUT -p tcp --dport 1000:2000
ouvrira le trafic entrant vers les ports TCP 1000 à 2000 inclus.
-m multiport --dports
n'est nécessaire que si la plage que vous souhaitez ouvrir n'est pas continue, par exemple -m multiport --dports 80,443
, qui ouvrira HTTP et HTTPS uniquement - pas ceux entre les deux.
Notez que l'ordre des règles est important, et (comme Iain y fait allusion dans son commentaire ailleurs) c'est votre travail de vous assurer que toute règle que vous ajoutez est à un endroit où elle sera efficace.
Solution 3 :
TL;DR mais...
Plage de ports purs sans module multiport :iptables -A INPUT -p tcp --dport 1000:2000 -j ACCEPT
Exemple multiport équivalent :iptables -A INPUT -p tcp -m multiport --dports 1000:2000 -j ACCEPT
...et variation sur multiport avec multigammes (oui, c'est aussi possible) :iptables -A INPUT -p tcp -m multiport --dports 1000,1001,1002:1500,1501:2000 -j ACCEPT
...et exemple équivalent multi-port multi-gamme avec négation :iptables -A INPUT -p tcp -m multiport ! --dports 0:999,2001:65535 -j ACCEPT
Avoir phun.