¿Por qué mi enrutador rechazaría los paquetes reenviados a sí mismo?

¿Por qué mi enrutador rechazaría los paquetes reenviados a sí mismo?

La primera regla de la cadena ADELANTE me resulta interesante. ¿Por qué sería esta una regla necesaria si la política es BAJAR?

root@tomato:/tmp/home/root# iptables -L --line-numbers
Chain INPUT (policy DROP)
num  target     prot opt source               destination
1    REJECT     tcp  --  anywhere             tomato               multiport dports www,https,ssh reject-with tcp-reset
2    REJECT     tcp  --  anywhere             tomato-lan1          multiport dports www,https,ssh reject-with tcp-reset
3    DROP       all  --  anywhere             anywhere             state INVALID
4    ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
5    shlimit    tcp  --  anywhere             anywhere             tcp dpt:ssh state NEW
6    ACCEPT     all  --  anywhere             anywhere
7    ACCEPT     all  --  anywhere             anywhere
8    ACCEPT     all  --  anywhere             anywhere

Chain FORWARD (policy DROP)
num  target     prot opt source               destination
1    REJECT     tcp  --  anywhere             tomato               multiport dports www,https,ssh reject-with tcp-reset
2    REJECT     tcp  --  anywhere             tomato-lan1          multiport dports www,https,ssh reject-with tcp-reset
3    ACCEPT     all  --  anywhere             anywhere
4    ACCEPT     all  --  anywhere             anywhere
5    DROP       all  --  anywhere             anywhere             state INVALID
6    ACCEPT     all  --  anywhere             anywhere             state RELATED,ESTABLISHED
7    DROP       all  --  anywhere             anywhere
8    DROP       all  --  anywhere             anywhere
9    wanin      all  --  anywhere             anywhere
10   wanout     all  --  anywhere             anywhere
11   ACCEPT     all  --  anywhere             anywhere
12   ACCEPT     all  --  anywhere             anywhere

Chain OUTPUT (policy ACCEPT)
num  target     prot opt source               destination

Chain shlimit (1 references)
num  target     prot opt source               destination
1               all  --  anywhere             anywhere             recent: SET name: shlimit side: source
2    DROP       all  --  anywhere             anywhere             recent: UPDATE seconds: 60 hit_count: 4 name: shlimit side: source

Chain wanin (1 references)
num  target     prot opt source               destination
1    ACCEPT     tcp  --  anywhere             oldtimer             tcp dpt:3300

Chain wanout (1 references)
num  target     prot opt source               destination

Respuesta1

1) Las reglas son generadas automáticamente por algún programa que toma una descripción de nivel superior. No asuma que una regla es "necesaria" sólo porque aparece allí.

2) Incluso si una regla no es estrictamente necesaria, puede ser una buena práctica incluirla, para indicar explícitamente que algo no está permitido.

3) Dicho esto, puede ser realmente necesario incluir esta regla, es decir, si hay otras reglas que aceptarían el paquete antes de que se alcance el final de la tabla y se aplique la política DROP predeterminada.

En particular, las reglas 11 y 12 en la cadena FORWARD parecen idénticas y parecen aceptar todo (por lo que probablemente tengan atributos que no están enumerados; intente -Sen lugar de -L), si ese es realmente el caso, es lo mismo que una política predeterminada de ACEPTAR, por lo que tendría que descartar todo lo que desee eliminar explícitamente.

información relacionada