PDA

View Full Version : Iptables e problema con IPv6 chain INPUT e OUTPUT Debian 12


OUTATIME
17-01-2024, 20:32
Ciao a tutti.
Sto iniziando ad addentrarmi nel mondo IPv6, nel dettaglio stavo provando a configurare un nodo Tor su OVH con Debian 12 e IPv4 e IPv6. Premetto che sono anni che configuro Iptables su Ipv4, ma su IPv6 sto avendo dei problemi a mio avviso curiosi. Ma veniamo a noi. Vorrei partire da una configurazione base del tutto chiusa, del tipo:
*filter
:INPUT DROP [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -m conntrack --ctstate INVALID -j DROP
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
COMMIT

Per poi aprire solo le porte necessarie ai vari servizi, ma già qui iniziano i problemi. Se io faccio un semplice ping, ho come risultato Destination unreachable: Address unreachable, MA se io cambio semplicemente la chain di input:

*filter
:INPUT ACCEPT [0:0]
:FORWARD DROP [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -i lo -j ACCEPT
-A INPUT -m conntrack --ctstate INVALID -j DROP
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
COMMIT


tutto magicamente funziona. Ora per le mie tutt'altro che complete conoscenze di Iptables, se alla chain di INPUT, con default DROP, aggiungo la regola di accettare le RELATED,ESTABLISHED, dovrebbe accettare i pacchetti di ritorno dal ping, infatti in IPv4 tutto funziona con le regole base che ho scritto sopra. Non mi spiego che cosa ci sia di sbagliato nella configurazione tutto chiuso che ho fatto.
Ovviamente di questo problema mi sono accorto in quanto dai log di Tor avevo un errore di IPv6 unreachable, che con le regole modificate invece funziona correttamente, ma non voglio tenere tutto aperto. In IPv4 invece gestisco le regole senza alcun problema.

Grazie

Cosmo
17-01-2024, 21:26
ipv6 non usa piu arp ma ndp. Devi far passare non mi ricordo quali pacchetti icmpv6

OUTATIME
17-01-2024, 21:32
ipv6 non usa piu arp ma ndp. Devi far passare non mi ricordo quali pacchetti icmpv6
Ma io ho la regola la risposta a qualsiasi connessione già stabilita deve passare. E' il concetto che sta alla base del tutto chiuso in ingresso. E comunque non funzionano neppure i servizi con porte aperte.

OUTATIME
18-01-2024, 07:26
Aggiornamento:
ora il ping funziona aggiungendo la regola:
-A INPUT -p ipv6-icmp -j ACCEPT

Anche se non ne capisco il motivo, visto che dovrebbe bastare la regola:
-A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT