Tecnicamente la riscrittura delle richieste HTTP può avvenire in due modi:
- l'url rewriter è invocato come sottoprocesso dal proxy stesso allo scopo di riscrivere l'URL: il proxy si limiterà quindi a puntare verso l'url rewriter, senza curarsi di altro;
- l'url rewriter riceve direttamente la richiesta dallo stack TCP/IP, la riscrive, se lo ritiene necessario, e in ogni caso passa l'URL originale, o quello riscritto, al proxy affinché sia inoltrato all'esterno
Un esempio di url rewriter del primo tipo è squidGuard, un eseguibile che viene invocato direttamente dal proxy Squid.
Un esempio di url rewriter del secondo tipo è invece DansGuardian, un servizio di rete che si frappone fra il browser e il proxy.
In questa guida la scelta ricadrà su DansGuardian perché ritenuto un sistema molto capillare e con la possibilità di essere pesantemente personalizzato dall'utente.
Prima di addentrarci nell'installazione e nella configurazione di DansGuardian è bene però modificare il numero di porta su cui si pone in ascolto il proxy server Squid. Apriamo quindi il suo file di configurazione /etc/squid/squid.conf e modifichiamo la riga:
http_port 127.0.0.1:8080 http_port 192.168.1.1:8080
in:
http_port 127.0.0.1:3128 http_port 192.168.1.1:3128
e la riga:
http_port 8080 transparent
in:
http_port 3128 transparent
Lo scopo di questa modifica è fare in modo che la regola di iptables impostata all'inizio dell'articolo indirizzi ora i pacchetti verso il nostro url rewriter DansGuardian (che porremo quindi in ascolto sulla porta 8080), lasciando poi a quest'ultimo il compito di reindirizzare i pacchetti filtrati verso il proxy server.
Ora possiamo procedere con l'installazione di DansGuardian:
# apt-get install dansguardian
Il file principale di configurazione è /etc/dansguardian/dansguardian.conf. Apportiamovi alcune piccole modifiche:
- impostiamo la lingua italiana:
language = 'italian'