Utilizzare Squid come HTTP proxy per bloccare l’accesso in LAN ad alcuni siti web

Squid è tra i più diffusi caching proxy. Può essere facilmente utilizzato come HTTP proxy per bloccare l’accesso ad una lista di siti.

I passi che seguono sono stati seguiti su un’istanza di Linux Debian 7.8 fresca d’installazione.

Procediamo all’installazione di squid:

apt-get update
apt-get install squid

Creiamo il file con i siti non permessi:

sudo nano /etc/squid/blocked_sites.squid

Inseriamo all’interno del file blocked_sites.squid i siti da bloccare, ad esempio:

.salvatorecordiano.it
.facebook.com

Modifichiamo, poi il file di configurazione di squid che si trova nel percorso /etc/squid/squid.conf com segue:

1) In coda alle regole ACL aggiungiamo

acl blocked_sites dstdomain "/etc/squid/blocked_sites.squid"

2) Aggiungiamo, invece, prima della prima regola http_access le seguenti due righe:

http_access allow localnet
http_access deny blocked_sites

Ho supposto l’esistenza di una regola ACL che definisca la LAN locale (localnet) come segue

acl localnet src 192.168.0.0/16

Riavviamo squid col seguente comando sudo service squid restart

A questo punto non ci rimane che configurare sui client il server proxy. La porta di default usata da squid è 3128.

Questions?

Have a question about this post or anything else? Ask away on Twitter or in my AMA repo.

Leave a Reply

Your email address will not be published. Required fields are marked *