Linux tips and tricks/Transparent proxy: differenze tra le versioni
Contenuto cancellato Contenuto aggiunto
mNessun oggetto della modifica |
|||
Riga 9:
Per realizzare obiettivi simili è necessario dirottare tutte le richieste HTTP in uscita verso un software che, in base a determinati criteri, stabilisce se il sito destinazione può essere raggiunto o se la richiesta debba essere bloccata. Naturalmente questo dirottamento ha senso solo se è coercitivo: se l'utente di cui si vuole limitare l'attività di navigazione in questo modo dispone di credenziali amministrative, potrebbe disattivare senza problemi il sistema di filtraggio sulla sua postazione.
In questo wikibook sono illustrate le nozioni teoriche di base e due diverse soluzioni concrete per realizzare facilmente simili obiettivi.
Gli ingredienti che permettono di realizzare tutto questo sono, in definitiva:▼
== Nozioni preliminari ==▼
▲Gli ingredienti che permettono di realizzare
* un insieme di blacklist che elenchino i siti e le URL da bloccare o meno, ma anche frasi che, trovate in una pagina, facciano sì che essa sia bloccata
Line 17 ⟶ 21:
* il supporto Netfilter nel kernel, necessario alla utility iptables, almeno per quanto riguarda una serie di funzionalità
Nelle sezioni seguenti vengono illustrati più dettagliatamente tutti questi elementi.
▲== Nozioni preliminari ==
=== Le blacklist ===
Line 55 ⟶ 57:
Bloccare il dominio ''amazon.com'' sarebbe assurdo, vista la sua importanza. Ma siccome Amazon consente ai suoi utenti iscritti di pubblicare materiale pornografico, con un elenco di URL è possibile bloccare l'accesso a questo materiale senza bloccare l'accesso ad Amazon.
Le dimensioni notevoli delle liste obbligano i software di rewriting a gestirle in forma indicizzata. I due software discussi nel seguito
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.
Un tipo di blacklist alquanto diverso
Un ulteriore tipo di liste
Infine,
Naturalmente non tutti i software di url rewriting offrono l'intero ventaglio di potenzialità, ma a seconda di quello che si vuole fare ci si può limitare a funzioni molto elementari, o ricorrere a soluzioni più complesse.
=== L'url rewriter ===
▲Un ulteriore tipo di liste offerte solo da DansGuardian sono le greylist, che permettono di bloccare solo alcune parti di un sito o di una URL, anche se in maniera piuttosto complicata.
Questo software si occupa di ''riscrivere'' una URL, sostituendola con un'altra opportuna. Il risultato è in pratica il ''dirottamento'' di certe richieste verso una o più pagine predefinite. Tipicamente, l'utente viene deviato su una pagina recante un messaggio del tipo ''spiacente, il sito che volevi raggiungere non sembra collegato agli interessi dell'Azienda'', o qualcosa del genere.
▲Infine, DansGuardian permette di definire liste di URL o domini in base a delle espressioni regolari, offrendo così uno strumento molto fine per il blocco dinamico di certe pagine.
*
*
In ogni caso il proxy prende per buona la URL ricevuta dall'url rewriter, sia che il proxy stesso abbia invocato l'url rewriter come sottoprocesso, sia che il proxy riceva direttamente via rete dall'url rewriter la URL riscritta.
▲Il filtraggio delle richieste HTTP può avvenire in due modi:
Un esempio relativo al primo caso è ''squidGuard'': esso non è un servizio di rete, bensì un eseguibile che, tipicamente, viene invocato dal proxy squid col quale si integra molto bene.
▲* il software filtratore è invocato come sottoprocesso dal proxy stesso allo scopo di ''riscrivere'' la URL: il proxy si limiterà a puntare a questa nuova URL, senza curarsi di altro
▲* il software filtratore riceve direttamente la richiesta dallo stack TCP/IP (tipicamente grazie ad una regola Netfilter), la riscrive se lo ritiene necessario, e in ogni caso passa la URL originale o quella riscritta al proxy perché sia inoltrata all'esterno
Un esempio relativo al secondo caso è invece ''DansGuardian'': esso è un servizio di rete che si frappone in sostanza fra il browser e il proxy.
=== Il
I proxy sono una categoria di software molto ampia, per cui in questo contesto saranno necessarie alcune grossolane semplificazioni per non divagare troppo. Basterà pensare al proxy come a uno strato software che si interpone, in modo appunto trasparente, fra il browser e la rete. Ma non è un semplice passa-carte, perché prima di inoltrare nella rete le richieste che ha ricevuto dal browser, può decidere di fare diverse cose con queste richieste. Potrebbe essere egli stesso a riscrivere le URL, ma si tratta di un compito estremamente particolare che richiede un software specifico, e quindi i proxy sono di solito una parte di un'architettura in cui un'altra componente si occupa del rewriting.
|