Barra laterale

rete:transparent_proxing_con_squid

Transparent proxing con squid

Autore: Fabio Di Matteo
Ultima revisione: 23/11/2007

E' possibile ,grazie a squid, far usare un proxy ai client della nostra rete in maniera trasparente ovvero senza dover andare a configurare browser in giro per i client .

Ingredienti

  • Squid3 (si può fare anche con versioni precedenti)
  • Netfilter di linux

Installazione di squid

apt-get install squid3

Configuriamo squid

Editiamo /etc/squid3/squid.conf aggiungendo solo le seguenti regole, facendo attenzione che non si ripetano regole dello stesso tipo perchè in questo caso squid prenderebbe in considerazione solo la prima regola .

ipotizzando che il proxy ed il firewall siano sulla stessa macchina di indirizzo 192.168.1.2 ecco le righe da aggiungere ad /etc/squid3/squid.conf

#Regola per far navigare la nostra rete 
acl ipconsentiti src 192.168.1.0/24

#Abilito la regola precedentemente scritta
http_access allow ipconsentiti

#Abilito il trasparent proxing sul mio sever
http_port 127.0.0.1:3128  transparent
http_port 192.168.1.2:3128  transparent

Abilitiamo la condivisione del collegamento ad internet

echo 1 > /proc/sys/net/ipv4/ip_forward

E adesso il nat

Mandiamo tutti i pacchetti destinati alla porta 80 sulla porta di default di squid:

iptables -t nat -A PREROUTING -i eth2 -s 192.168.1.0/24 -p tcp --dport 80 -j REDIRECT --to-port 3128

eth2 è la scheda di rete del mio server.

potrebbe essere anche utile consentire il traffico tcp e udp in ingresso sul nostro proxy

iptables -A INPUT -i eth2 -p tcp --dport 3128 -j ACCEPT
iptables -A INPUT -i eth2 -p udp --dport 3128 -j ACCEPT

Avviamo squid

 /etc/init.d/squid3 start 

Analizzare i log

Per analizzare i log di squid sarebbe meglio attivare i log in stile web server cercando la direttiva emulate_httpd_log off/on e modificandola come segue:

 
emulate_httpd_log on

Oppure si può intervenire direttamente specificando il formato del log direttamente in /etc/squid/squid.conf aggiungendo:

logformat squid  %>a %ui %un [%tl] "%rm %ru HTTP/%rv" %Hs %<st %Ss:%Sh

Per la leggenda dei tag vi rimando al file /etc/squid/squid.conf basta cercare “Log” per trovarla

dopodiche basta un tail -f /var/log/squid3/access.log per vedere gli ultimi accessi al proxy.

Il gateway dei client

il gateway dei client deve essere il nostro server proxy, quindi in questo caso 192.168.1.2


rete/transparent_proxing_con_squid.txt · Ultima modifica: 18/04/2018 - 15:49 (modifica esterna)