<HTML>
Ciao Ragazzi,<br>
ho una macchina debian che fa da firewall (iptables +
squid 2.6) con due interfacce fisiche: eth0 (interfaccia pubblica) e
eth1(interfaccia interna LAN). Ho creato un alias eth1:1 in modo da
avere due sottoreti sulla stessa interfaccia fisica:<br>
cat /etc/network/interfaces<br>
<br>
iface eth0 inet static<br>
address 111.111.11.x11<br>
netmask 255.255.255.0<br>
gateway impostato con l'IP del router<br>
<br>
iface eth1 inet static<br>
address 172.16.2.1<br>
netmask 255.255.255.0<br>
<br>
auto eth1:1<br>
iface eth1 inet static<br>
address 172.16.3.1<br>
netmask 255.255.255.0<br>
<br>
Il mio intento è quello di nattare ogni sottorete interna della LAN con IP pubblico.<br>
Ho aggiunto quindi un alias eth0:1 con un altro IP pubblico 111.111.11.x12.<br>
<br>
Su iptables ho inserito la segueni regole:<br>
-A POSTROUTING -o eth0 -s 172.16.2.0/24 -j SNAT --to 111.111.11.x11<br>
-A POSTROUTING -o eth0 -s 172.16.3.0/24 -j SNAT --to 111.111.11.x12<br>
<br>
-A FORWARD -P DROP<br>
-A FORWARD -p tcp -m multiport -i eth1 -o eth0 -j ACCEPT --dports 80,443,25,110,21,995,465<br>
-A FORWARD -m state -i eth0 -o eth1 --state ESTABLISHED,RELATED -j ACCEPT<br>
<br>
Stoppando
il servizio del proxy con queste regole dichiarate su riesco ad avere
le due sottoreti nattate una con l'IP di eth0 e l'altra con l'ip di
eth0:1<br>
<br>
Appena abilito squid che sta in ascolto sulla porta 8080
in trasparent mode sulla stessa macchina con le seguenti regole su
iptables:<br>
-A PREROUTING -i eth1 -p tcp --dport 80 -j REDIRECT --to-port 8080<br>
<br>
-A INPUT -P DROP<br>
-A INPUT -p tcp -i eth1 -j ACCEPT --dport 8080<br>
<br>
-A FORWARD -P DROP<br>
-A
FORWARD -p tcp -m multiport -i eth1 -o eth0 -j ACCEPT --dports
443,25,110,21,995,465 (da questa regola specificata in precedenza ho
tolto la porta 80 visto che squid è settato in modo trasparente)<br>
-A FORWARD -m state -i eth0 -o eth1 --state ESTABLISHED,RELATED -j ACCEPT<br>
<br>
-A OUTPUT -P DROP<br>
-A OUTPUT -p tcp -j ACCEPT --sport 8080<br>
<br>
Configurazione di squid (cat /etc/squid/squid.conf):<br>
http_port 8080 transparent<br>
visible_hostname proxy<br>
cache_mem 256 MB<br>
cache_swap_low 90<br>
cache_swap_high 95<br>
maximum_object_size 2024 KB<br>
cache_effective_user proxy<br>
cache_effective_group proxy<br>
coredump_dir /var/spool/squid<br>
access_log /var/log/squid/access.log squid<br>
<br>
acl lan src 172.16.0.0/16 (ho settato in /16 per permettere alle 2 sottoreti di passare da squid)<br>
acl all src 0.0.0.0/0.0.0.0<br>
<br>
http_access allow lan<br>
http_access deny all<br>
<br>
Dal
file di log vedo che entrambe le sottoreti vengono dirottate sul proxy
trasparente ma ho notato che adesso le due sottoretie escono entrambe
con l'IP di eth0 e non più come prima ognuna con il proprio ip pubblico.<br>
<br>
Cosa dovrei fare per risolvere tale situazione?<br>
<br>
Grazie e buona estate a tutti
                     <BR><hr>Nuova grafica e nuove funzionalità! Crea subito Gratis la tua nuova Casella di Posta <a href="http://www.katamail.kataweb.it/?ref=mail"> Katamail</a></HTML>