¿Cuál es la forma correcta de abrir una variedad de puertos en iptables?

¿Cuál es la forma correcta de abrir una variedad de puertos en iptables?

Me he encontrado con artículos que aconsejan lo siguiente:

iptables -A INPUT -p tcp 1000:2000 -j ACCEPT

Y otros afirman que lo anterior no funcionará y que iptables solo admite múltiples declaraciones de puertos con la --multiportopción.

¿Existe una forma correcta de abrir muchos puertos con iptables?

Respuesta1

Esta es la forma correcta:

iptables -A INPUT -p tcp --match multiport --dports 1024:3000 -j ACCEPT

Como ejemplo. Fuenteaquí.

Respuesta2

Lo que te han dicho es correcto, aunque lo hayas escrito mal (lo hayas olvidado --dport).

iptables -A INPUT -p tcp --dport 1000:2000abrirá el tráfico entrante a los puertos TCP 1000 a 2000 inclusive.

-m multiport --dportssolo es necesario si el rango que desea abrir no es continuo, por ejemplo -m multiport --dports 80,443, lo que abrirá HTTP y HTTPSsolo- no los que están en el medio.

Tenga en cuenta que el orden de las reglas es importante y (como alude Iain en su comentario en otra parte) es su trabajo asegurarse de que cualquier regla que agregue esté en un lugar donde sea efectiva.

Respuesta3

TL;DR pero...

Gama de puertos puros sin módulo multipuerto: iptables -A INPUT -p tcp --dport 1000:2000 -j ACCEPT

Ejemplo multipuerto equivalente: iptables -A INPUT -p tcp -m multiport --dports 1000:2000 -j ACCEPT

...y variación sobre multipuerto con múltiples rangos (sí, esto también es posible): iptables -A INPUT -p tcp -m multiport --dports 1000,1001,1002:1500,1501:2000 -j ACCEPT

...y un ejemplo equivalente de múltiples puertos y múltiples rangos con negación: iptables -A INPUT -p tcp -m multiport ! --dports 0:999,2001:65535 -j ACCEPT

Hazlo.

Respuesta4

Hay otra forma de agregar la entrada directamente en el archivo Iptables. ubicación/etc/sysconfig/iptables

-A INPUT -p tcp -m multiport --dports 1024:3000 -m state --state NEW -j ACCEPT

después de eso reinicie el servicio iptable

información relacionada