J'ai trouvé des articles sur les sujets suivants:
iptables -A INPUT -p tcp 1000:2000 -j ACCEPT
Et d'autres déclarant que ce qui précède ne fonctionnera pas et qu'iptables ne supporte que plusieurs déclarations de port avec l' --multiport
option.
Existe-t-il un moyen correct d'ouvrir de nombreux ports avec iptables?
linux
iptables
linux-networking
Paul Whalley
la source
la source
Réponses:
C'est la bonne façon:
iptables -A INPUT -p tcp --match multiport --dports 1024:3000 -j ACCEPT
Par exemple. Source ici .
la source
-I
c’est un peu plus sûr que-A
.-A INPUT -j REJECT --reject-with icmp-host-prohibited
à la fin de INPUT et d'autres tables. Utiliser-A
ajoute la règle à la fin de la table, après la règle finale, pour que cela ne soit jamais considéré comme un netfilter qui fonctionne dès le premier match. L'utilisation-I
insère la règle au début de la table et sera considérée comme telle.-I
n'est pas toujours plus sûr si vous ne connaissez pas le jeu de règles.Ce qui vous a été dit est juste, même si vous l’avez mal écrit (vous l’avez oublié
--dport
).iptables -A INPUT -p tcp --dport 1000:2000
ouvrira le trafic entrant sur 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
, ce qui ouvrira uniquement HTTP et HTTPS - pas ceux entre les deux.Notez que l'ordre des règles est important et (comme Iain le mentionne ailleurs dans son commentaire), il vous incombe de vous assurer que toute règle que vous ajoutez est à un endroit où elle sera efficace.
la source
TL; DR mais ...
Plage de ports pure 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 à propos du multi-port avec plusieurs gammes (oui, cela est également possible):
iptables -A INPUT -p tcp -m multiport --dports 1000,1001,1002:1500,1501:2000 -j ACCEPT
... et exemple multi-plages multi-ports équivalentes avec négation:
iptables -A INPUT -p tcp -m multiport ! --dports 0:999,2001:65535 -j ACCEPT
Avez-Phun.
la source
Selon man iptables-extensions, vous pouvez définir une plage de ports en utilisant simplement le commutateur --dport.
tcp
Ces extensions peuvent être utilisées si `--protocol tcp 'est spécifié. Il fournit les options suivantes:
[!] --Destination-port, - dport port [: port]
Spécification du port de destination ou de la plage de ports . Le drapeau --dport est un alias pratique pour cette option.
Donc, cela spécifie également une plage de ports:
iptables -A INPUT -p tcp 1000:2000 -j ACCEPT
la source