max wrote:
mi hanno chiesto di fare un firewall trasparente che faccia anche NAT,
ovvero che non richieda nessuna riconfigurazione nella LAN.
Se fà NAT allora non è trasparente! :)
Il firewall trasparente ha le interfacce di rete senza IP address,
quindi non è lui che fà nat, al limite il NAT lo fà o il firewall
esterno o un router.
Per fare questo ho pensato di mettere su un firewall con 2 interfacce di
rete nello stesso rango di IP e collegarle tra il router adsl e la LAN.
Il problema è che non funziona (come mi aspettavo). Mi chiedevo se la
cosa fosse possibile con linux, e soprattutto se fosse sicura.
Hai le idee un pò confuse, il transparent firewall si frappone
*FISICAMENTE* tra il tuo GW e la tua LAN in modo che possa filtrare in
maniera *trasparente* tutto il traffico, uno schema ipotetico potrebbe
essere questo:
192.168.1.x 0.0.0.0 0.0.0.0 192.168.1.254 PUB
PC/Server<-->Switch<-->Transparent Firewall<-->Router/NAT<-->Internet
Per fare questo devi in prima istanza tirare su le interfacce Ethernet
senza assegnare alcun IP e poi devi configurare il bridging.
Fatto questo usi le IPTABLES specificando per ogni regola IP sorgente ed
IP destinazione es:
ifconfig eth0 0.0.0.0 <-Configuri eth0
ifconfig eth1 0.0.0.0 <-Configuri eth1
modprobe bridge <-Carichi il modulo di bridging
brctl addbr br0 <-Crei il tuo bridge
brctl addif br0 eth0 <-Inserisci le due interfacce
brctl addif br0 eth1 <-Ethernet che devi "bridggiare" ;)
brctl stp off <-Disabiliti lo Spanning Tree (a volte aiuta)
Da non dimenticare il forwarding dell'IP:
echo "0" > /proc/sys/net/ipv4/ip_forward
Fatto questo hai creato un bridge sulla tua lan, ora devi impostare le
IPTABLES per filtrare il traffico ad es:
iptables -I FORWARD -p tcp -s 0.0.0.0/0 -d 192.168.1.5 --dport 1433 -j DROP
Così dovrebbe poter funzionare, calcola che una cosa del genere l'ho
implementata un paio di anni fà e quindi se non sono stato preciso
perdonami, ma la memoria non è più quella di una volta!!!! :)
Ciao.
Fabio.
--
To UNSUBSCRIBE, email to [EMAIL PROTECTED]
with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]