Solución 1:
Esta es la forma correcta:
iptables -A INPUT -p tcp --match multiport --dports 1024:3000 -j ACCEPT
Como ejemplo. Fuente aquí.
Solución 2:
Lo que te han dicho está bien, aunque lo hayas escrito mal (has olvidado --dport
).
iptables -A INPUT -p tcp --dport 1000:2000
abrirá el tráfico entrante a los puertos TCP 1000 a 2000 inclusive.
-m multiport --dports
solo es necesario si el rango que desea abrir no es continuo, por ejemplo, -m multiport --dports 80,443
, que abrirá HTTP y HTTPS solo - no los que están en el medio.
Tenga en cuenta que el orden de las reglas es importante y (como Iain alude en su comentario en otra parte) es su trabajo asegurarse de que cualquier regla que agregue esté en un lugar donde sea efectiva.
Solución 3:
TL;DR pero...
Rango de puerto puro 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 multirango (sí, esto también es posible):iptables -A INPUT -p tcp -m multiport --dports 1000,1001,1002:1500,1501:2000 -j ACCEPT
... y 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
Diviértete.