Encontrei artigos que aconselham o seguinte:
iptables -A INPUT -p tcp 1000:2000 -j ACCEPT
E outros afirmando que o acima não funcionará e o iptables suporta apenas várias declarações de porta com a --multiport
opção.
Existe uma maneira correta de abrir muitas portas com iptables?
Esta é a forma correta:
iptables -A INPUT -p tcp --match multiport --dports 1024:3000 -j ACCEPT
Como um exemplo. Fonte aqui .
O que lhe foi dito está certo, embora você tenha escrito errado (você esqueceu
--dport
).iptables -A INPUT -p tcp --dport 1000:2000
irá abrir o tráfego de entrada para as portas TCP 1000 a 2000 inclusive.-m multiport --dports
só é necessário se o intervalo que você deseja abrir não for contínuo, por exemplo-m multiport --dports 80,443
, , que abrirá apenas HTTP e HTTPS - não os intermediários.Observe que a ordenação das regras é importante e (como Iain alude em seu comentário em outro lugar) é seu trabalho garantir que qualquer regra adicionada esteja em um local onde seja eficaz.
TL;DR mas...
Faixa de porta pura sem módulo multiporta:
iptables -A INPUT -p tcp --dport 1000:2000 -j ACCEPT
Exemplo multiporta equivalente:
iptables -A INPUT -p tcp -m multiport --dports 1000:2000 -j ACCEPT
...e variação sobre multiport com multi ranges (sim, isso também é possível):
iptables -A INPUT -p tcp -m multiport --dports 1000,1001,1002:1500,1501:2000 -j ACCEPT
...e exemplo multi-intervalo equivalente de várias portas com negação:
iptables -A INPUT -p tcp -m multiport ! --dports 0:999,2001:65535 -j ACCEPT
Tenha phun.
existe uma outra maneira de adicionar a entrada diretamente no arquivo Iptables. localização
/etc/sysconfig/iptables
depois disso reinicie o serviço iptable
De acordo com man iptables-extensions, você pode definir um intervalo de portas apenas usando a opção --dport.
tcp
Estas extensões podem ser usadas se `--protocol tcp' for especificado. Ele fornece as seguintes opções:
[!] --destination-port,--dport port[:port]
Especificação de porta ou intervalo de portas de destino . O sinalizador --dport é um alias conveniente para esta opção.
Portanto, isso também está especificando um intervalo de portas:
iptables -A INPUT -p tcp --dport 1000:2000 -j ACCEPT