Linux tips and tricks/Transparent proxy: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Nimrod (discussione | contributi)
mNessun oggetto della modifica
Nimrod (discussione | contributi)
Nessun oggetto della modifica
Riga 16:
* il supporto Netfilter nel kernel, necessario alla utility iptables, almeno per quanto riguarda una serie di funzionalità
 
Il sistema può sembrare complesso, ma tutto si riduce a qualche configurazione. Nel seguito sarà illustrata prima una soluzione basata su squid e squidGuard, rispettivamente come proxy e come url rewriter, e poi una soluzione alquanto diversa, basata su tiniproxy e DansGuardian, nella quale i ruoli dei due software sono invertiti rispetto alla prima soluzione, ma per il resto le differenze sono minime.
Il sistema può sembrare complesso, ma tutto si riduce a qualche configurazione.
 
== Le blacklist ==
Riga 55:
 
# squidGuard -C all
 
Un altro software analogo, DansGuardian, illustrato più avanti, richiede invece, almeno su Debian, la riconfigurazione del pacchetto, col comando
 
# dpkg-reconfigure dansguardian
 
Naturalmente, se le blacklist vengono modificate per sbloccare dei siti o per bloccarne di nuovi, il comando va eseguito nuovamente. Ma questo di solito si fa solo quando si installa una versione aggiornata delle blacklist.
Line 150 ⟶ 154:
 
La prima segnala che è necessario caricare il modulo ''owner'' del kernel, in modo da permette l'utilizzo di alcune ulteriori opzioni di iptables, fra cui proprio ''--uid-owner''. Così come riportata nella regola sopra, questa opzione aggiunge una condizione particolare per selezionare i pacchetti HTTP in uscita: essi '''non''' devono essere stati prodotti dall'utente ''proxy''. Se, come avviene nella configurazione di squid per Debian Lenny, ''proxy'' è proprio l'utente che esegue squid, in questo modo ai pacchetti prodotti da squid non sarà applicato il target della regola, e quindi, se non intervengono altre regole a bloccarli, usciranno regolarmente permettendo all'utente di navigare tranquillamente.
 
== Tinyproxy e DansGuardian ==
 
Viene ora illustrata una seconda soluzione, basata su due software alquanto diversi dalla coppia presentata sopra.
 
Tinyproxy si presenta da solo. Il fatto che sia ''tiny'' dovrebbe significare da un lato prestazioni superiori, dall'altro qualche limitazione. In effetti tinyproxy non è in grado, come fa squid, di appoggiarsi ad un url-rewriter, e quindi questa seconda soluzione non può che prevedere l'intervento di tinyproxy dopo quello del software di filtraggio, che invece interviene per primo.
 
In poche parole, il traffico web va dirottato con una regola iptables verso DansGuardian, il quale analizza la richiesta HTTP e decide se bloccarla subito o se passarla a tinyproxy perché provveda a trasmettere la richiesta all'esterno.
 
=== Configurazione di DansGuardian ===
 
Per configurare DansGuardian basta aggiungere le tre righe seguenti in fondo al file '''/etc/dansguardian/dansguardian.conf''':
 
# the port that DansGuardian listens to.
filterport = 8080
# the ip of the proxy (default is the loopback - i.e. this server)
proxyip = 127.0.0.1
# the port DansGuardian connects to proxy on
proxyport = 3129
 
La prima porta è quella su cui DansGuardian si mette in ascolto, e ovviamente sarà necessario dirottare il traffico web verso questa porta con un'opportuna regola NetFilter...
 
[[Categoria:Linux tips and tricks|Transparent proxy]]