Ho visto su molti blog l'utilizzo di questo comando per abilitare l'inoltro IP mentre si utilizzano molti strumenti di sicurezza/sniffing della rete su Linux
echo 1 > /proc/sys/net/ipv4/ip_forward
Qualcuno può spiegarmi in parole povere, cosa fa essenzialmente questo comando? Trasforma il tuo sistema in router?
Risposta accettata:
"Inoltro IP" è sinonimo di "routing". Si chiama "kernel IP forwarding" perché è una caratteristica del kernel Linux.
Un router ha più interfacce di rete. Se il traffico arriva su un'interfaccia che corrisponde a una sottorete di un'altra interfaccia di rete, un router inoltra quel traffico all'altra interfaccia di rete.
Quindi, supponiamo che tu abbia due NIC, una (NIC 1) è all'indirizzo 192.168.2.1/24 e l'altra (NIC 2) è 192.168.3.1/24. Se l'inoltro è abilitato e un pacchetto arriva sulla NIC 1 con un "indirizzo di destinazione" di 192.168.3.8, il router invierà nuovamente quel pacchetto dalla NIC 2.
È comune che i router che funzionano come gateway per Internet abbiano un percorso predefinito in base al quale tutto il traffico che non corrisponde a nessuna scheda di rete passerà attraverso la scheda di rete della rotta predefinita. Quindi, nell'esempio sopra, se hai una connessione Internet su NIC 2, imposteresti NIC 2 come percorso predefinito e quindi tutto il traffico proveniente da NIC 1 che non è destinato a qualcosa su 192.168.2.0/24 andrà tramite NIC 2. Si spera che ci siano altri router oltre NIC 2 che possono instradarlo ulteriormente (nel caso di Internet, l'hop successivo sarebbe il router del tuo ISP e quindi i loro provider router a monte, ecc.)
Abilitazione di ip_forward
dice al tuo sistema Linux di farlo. Affinché sia significativo, sono necessarie due interfacce di rete (qualsiasi 2 o più di schede NIC cablate, schede o chipset Wi-Fi, collegamenti PPP su un modem da 56k o seriale, ecc.).
Quando si esegue il routing, la sicurezza è importante ed è qui che il filtro dei pacchetti di Linux, iptables
, si fa coinvolgere. Quindi avrai bisogno di un iptables
configurazione coerente con le tue esigenze.
Tieni presente che abilitare l'inoltro con iptables
disabilitato e/o senza prendere in considerazione il firewall e la sicurezza potrebbe lasciarti esposto a vulnerabilità se una delle schede di rete si trova di fronte a Internet o a una sottorete su cui non hai il controllo.