PDA

View Full Version : [iptables] default FORWARD policy DROP


nik_1990
03-08-2015, 10:15
Ciao a tutti, vi spiego il mio problema.

Ho un FW (iptables) con due interfacce di rete, eth0 e eth1.
eth0 e' collegata al router di casa, su eth1 e' collegato un host.

IL FW tramite eth0 comunica tranquillamente su internet.

Ora, l'host collegato su eth1 deve passare per il FW prima di andare su internet.

Eseguo una regola di mascheramento degli indirizzi sulla tabella nat, ed eseguo:


iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE


In questo modo usando una politica di tipo default accept sulle catene della tabella filter, in questo modo:

iptables -P INPUT ACCEPT
iptables -P FORWARD ACCEPT
iptables -P OUTPUT ACCEPT

Come del resto e' la politica predefinita, senza aggiungere nessun altra regola l'host, passando per il fw riesce a comunicare su internet.

Il problema sorge quando voglio adottare una politica di tipo default dany sulla catena forward, e quindi

iptables -P FORWARD DROP


In questo modo di default, tutto il traffico viene droppato se non trovo nessuna regola nella catena che mi soddisfa la condizione, aggiungendo quindi una regola del tipo:

iptables -A FORWARD -i eth1 -j ACCEPT

Dove dico praticamente di accettare tutto il traffico proveniente da eth1 (la porta dove l'host e' collegato) comunque sia l'host non naviga.

Come mai? La condizione non viene soddisfatta? Cosa sbaglio?

Grazie mille a tutti

Ciao

Nicola

Supr3mo
03-08-2015, 17:47
ciao, credo che la rule corretta sia

iptables -A FORWARD -i eth1 -o eth0 -j ACCEPT


cmq su alcune distro l'ip forwarding di default è disabilitato e bisogna abilitarlo.
es. echo 1 > /proc/sys/net/ipv4/ip_forward

Non penso sia il tuo caso, visto che con la default policy su accept ti funziona.


con iptables -L -v -n non vedi passare nulla nella chain?

pigi2pigi
04-08-2015, 23:19
Ma il traffico da eth0 a eth1 dove è abilitato ?

HexDEF6
10-08-2015, 15:42
ti manca qualcosa del genere:

iptables -A FORWARD -m state --state RELATED,ESTABLISHED -j ACCEPT