[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

proxy trasparente



Salve a tutti!
Ho provato ad utilizzare squid come proxy trasparente. 

In pratica ho messo in /etc/squid/squid.conf 

http_port 3128 transparent

Poi ho provato a ridigere la porta 80 e la porta 443 sulla 3128 con il
comando (che ho trovato in alcuni threads)

iptables -t nat -A PREROUTING -m tcp -p tcp --dport 80:443 -j REDIRECT
--to-port 3128

Questo comando sembra non fare esattamente nulla. Tutte le richieste di
connessione http (che faccio dallo stesso computer che ha squid
installato) non sembrano passare per la catena PREROUTING di nat. Passa
solo qualche pacchetto udp (nessun tcp). 
Allora ho provato  a ridirigere i pacchetti della catena di OUTPUT con

iptables -t nat -A PREROUTING -m tcp -p tcp --dport 80:443 -j REDIRECT
--to-port 3128

Effettivamente i pacchetti vengono rediretti quando tento delle
connessioni http, e in /var/log/squid/access.log compaiono delle
richieste 
1237453357.368      0 80.181.71.95 TCP_DENIED/403 1390 GET
http://www.google.com/ - NONE/- text/html

Quindi la richiesta e' arrivata a squid che pero' l'ha negata, forse
perche' proviene da questo indirizzo 80.181.71.95 che e' l' indirizzo
dell' interfaccia ppp0. 
Allora ho aggiunto (per fare una prova) in /etc/squid/squid.conf
http_access allow all

e ho dato il comando: /etc/init.d/squid restart

Poi ho tentato la connessione e in /var/log/squid/access.log trovo:

1237453569.150      0 80.181.71.95 TCP_NEGATIVE_HIT/504 1856 GET
http://www.google.com/ - NONE/- text/html


Purtroppo la filosofia delle iptables non mi e' molto chiara, ne' quella
di squid. Ho trovato anche un thread in cui c'era un problema simile al
mio: il problema era un problema di dns. Io pero' ho aggiunto i dns come
era suggerito ma non ho notato nessuna differenza.

Grazie. Ciao
    Stefano




Reply to: