Introduzione
I server proxy trasparenti si trovano tra i client e Internet, intercettando tutte le richieste senza richiedere la configurazione sul lato client. Una soluzione software popolare per l'implementazione di un proxy trasparente è Squid. In questo articolo, esamineremo il processo di configurazione di Squid su sistemi Ubuntu e Debian.
Prerequisiti
- Un sistema che esegue Ubuntu o Debian.
- Accesso root o sudo.
Installazione
Aggiorna l'elenco dei pacchetti del tuo sistema.
sudo apt-get update
Installa Squid.
sudo apt-get install squid
Configurazione
Eseguire il backup del file di configurazione originale. Questa è sempre una buona pratica.
sudo cp /etc/squid/squid.conf /etc/squid/squid.conf.original
Modifica il file di configurazione.
sudo nano /etc/squid/squid.conf
Per configurare un proxy trasparente di base, apportare le seguenti modifiche nel file di configurazione:
Trova la riga http_port 3128 e modificala in:
http_port 3128 intercept
Consenti alla rete locale di accedere a Internet. Sostituisci YOUR_NETWORK con il CIDR della tua rete locale, ad esempio 192.168.1.0/24.
acl localnet src YOUR_NETWORK
http_access allow localnet
Salva il file ed esci dall'editor.
Reindirizzamento del traffico
Affinché il proxy funzioni come proxy trasparente, è necessario reindirizzare tutto il traffico Web per attraversarlo. Questo può essere fatto usando iptables.
Reindirizza il traffico HTTP (porta 80) a Squid.
sudo iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j DNAT --to 127.0.0.1:3128
Sostituisci eth0 con la tua interfaccia di rete se è diversa.
Assicurarsi che le regole di iptables persistano dopo un riavvio. Un modo per raggiungere questo obiettivo è installare iptables-persistent.
sudo apt-get install iptables-persistent
Durante l'installazione, ti verrà chiesto di salvare le regole correnti. Scegli "Sì" per entrambe le regole IPv4 e IPv6.
Avviare e testare
Riavvia Squid per applicare le modifiche.
sudo systemctl restart squid
Controlla lo stato di Squid.
sudo systemctl status squid
Testare la configurazione tentando di accedere a Internet da un computer client. Non dovrebbe essere necessario eseguire alcuna configurazione sul lato client se tutto è stato impostato correttamente.
Monitoraggio e registri
Per ottenere informazioni dettagliate sui siti Web a cui si accede, Squid fornisce i registri. Il registro degli accessi può essere verificato su:
cat /var/log/squid/access.log
Conclusione
Un proxy trasparente può essere vantaggioso per diversi motivi, come la gestione della larghezza di banda, il filtraggio dei contenuti o il monitoraggio. Squid offre una potente soluzione per questo scopo. Mentre i passaggi precedenti forniscono una configurazione di base, Squid offre numerose configurazioni e funzionalità avanzate che vale la pena esplorare per soddisfare esigenze specifiche.