IPtables tiene una lista de reglas y, para cada paquete, verifica la lista de reglas en orden. Una vez que se encuentra una regla que coincide con el paquete y especifica una política (ACEPTAR, RECHAZAR, BAJAR), se determina el destino del paquete coincidente; No se examinan más reglas.
Esto significa que el orden en el que ejecuta los comandos es importante. Cuando lo usa iptables -A
, agrega una regla al final de la lista de reglas, por lo que terminará con una lista de reglas similar a esta:
Chain FORWARD (policy ACCEPT)
target prot opt source destination
REJECT all -- anywhere anywhere reject-with icmp-host-prohibited
ACCEPT all -- anywhere anywhere
Dado que la REJECT
regla viene antes que la ACCEPT
regla, se activa primero y, por lo tanto, el reenvío no sucederá.
Por lo tanto, deberá eliminar la REJECT
regla en lugar de agregar una ACCEPT
regla. Para eliminar la regla RECHAZAR, ejecute
iptables -D FORWARD -j REJECT
Para obtener más información, lea la página de manual de iptables.
-A
, tal vez desee utilizar-P
para establecer la P olítica (acción por defecto cuando no hay otra regla de la cadena se aplica). Por ejemplo,iptables -P FORWARD DROP
(no puede serREJECT
).