In questo documento, dopo una breve descrizione riguardante la necessità di filtrare le pagine Web non idonee ai minori, si elencano le possibili soluzioni di controllo parentale e ci si sofferma sull’implementazione di un proxy web trasparente che, oltre al controllo antivirus, utilizzi DansGuardian per analizzare e bloccare le pagine web inadatte in determinati ambienti quali la scuola e la famiglia. Vedremo che tale soluzione può utilizzare hardware di modesta capacità, che sostituisca il router (wireless e non) di accesso a Internet e che pertanto è efficace indipendentemente dalla configurazione delle postazioni di accesso (PC, laptop, palmari) i cui controlli possono essere più facilmente bypassati. Questo documento è suddiviso nei seguenti paragrafi:
- Introduzione al problema del controllo dei contenuti dei siti web
- Alcune possibili soluzioni
- Platform for Internet Content Selection (PICS)
- Le blacklist di siti proibiti
- Filtri sui contenuti delle pagine web
- Dove applicare i web content filter
- DansGuardian sul router di accesso a Internet
- Installare DansGuardian su Zeroshell
- Configurare DansGuardian
- Bloccare il trasferimento di file di Windows Live Messenger
- DansGuardian su Access Point Wireless Multi SSID
Introduzione al problema del controllo dei contenuti dei siti web
Gli
ipertesti del WWW, con il passare del tempo, diventano una risorsa di
informazione e conoscenza sempre più insostituibile. Ne vengono messi in
rete, giornalmente, una quantità incredibilmente grande. D’altra parte,
i motori di ricerca, grazie alle loro potenti farm distribuite di
spider, indicizzano i contenuti ad una velocità impressionante e con
algoritmi di catalogazione automatica che ne valutano la qualità e
l’attinenza. Nella maggior parte dei casi, tutto ciò avviene senza la
supervisione umana. In tal caso, si dice che il motore di ricerca è un
crawler (Google), mentre quando la catalogazione finale di un documento è
affidata all’uomo, si parla di directory (dmoz). È evidente, che i
primi hanno il vantaggio di indicizzare velocemente un numero maggiore
di siti, mentre i secondi quello di catalogarne e controllarne con
maggiore cura il contenuto.
Questa facilità con cui il Web, con
l’ausilio dei motori di ricerca, permette di accedere alle informazioni,
ha cambiato il modo in cui nelle famiglie si garantisce l’accesso dei
bambini e degli adolescenti all’informazione. Un tempo i genitori erano
costretti all’acquisto di voluminose enciclopedie cartacee, il cui costo
poteva essere eccessivo e che in pochi anni, divenivano obsolete. Si
diffusero poi le enciclopedie in formato elettronico (su CD da caricare
sull’Hard Disk del PC), ma anche queste richiedono un costante
aggiornamento che, benché facilitato, ha comunque dei costi aggiuntivi.
Al giorno d’oggi invece, il diffondersi di
connessioni a banda larga come per esempio l’ADSL, consente alle
famiglie di dotarsi facilmente di un punto di accesso a Internet pagando
un canone mensile relativamente basso. Il web diventa pertanto un mezzo
privilegiato e facilmente accessibile per i ragazzi, in cui cercare
informazioni di ogni tipo costantemente aggiornate. Le stesse scuole
investono sempre più nella realizzazione di laboratori multimediali con
una connessione a Internet, che affianchino le tradizionali biblioteche
nella funzione di luogo di ricerca di informazioni.
Purtroppo però, Internet ed in particolare
il World Wide Web è anche ricco di siti con contenuti pericolosi e poco
adatti ai minori. Si pensi a quelle pagine che trattano di pornografia o
che incitano alla violenza e al razzismo. D’altra parte, la legittima
curiosità dei ragazzi verso la sessualità, spesso li spinge ad usare i
motori di ricerca con delle parole chiave che quasi mai conducono su
siti che trattano di sana educazione sessuale. Da qui deriva l’esigenza,
sempre più sentita da parte dei genitori e delle organizzazioni
scolastiche, di agevolare l’accesso a Internet dei minori quale
strumento tecnologico di apprendimento e formazione, ma di proteggerli
dalle insidie nascoste applicando opportuni filtri sulle pagine web
effetivamente consultabili.
Elenchiamo di seguito alcune possibili
soluzioni, soffermandoci poi su quella che vede DansGuardian come filtro
http del transparent proxy di Zeroshell.
Alcune possibili soluzioni
Le tecniche di controllo dei contenuti web per i minori ricadono in due categorie. Una molta restrittiva perché censura la totalià del World Wide Web tranne un numero limitato di siti scelti dai genitori. L’altra, opposta, cerca di bloccare solo le pagine contenenti materiale inadatto, lasciando passare il resto. È chiaro che le soluzioni appartenenti alla prima categoria, attuabili con delle whitelist in cui si dichiarano i siti accessibili, offrono maggiori garanzie, ma si dimostrano troppo rigide e necessitano di continui interventi di aggiornamento delle liste di accesso. Possono essere adatte per i bambini della scuola elementare, ma lo sono meno per i ragazzi della scuola media inferiore, che dovrebbero poter sfruttare al meglio i link ipertestuali per navigare da un sito all’altro. Per questo motivo analizziamo solo le soluzioni appartenenti alla seconda categoria, cioè che prevedono il blocco solo degli ipertesti ritenuti non adatti.
Platform for Internet Content Selection (PICS)
Il consorzio W3C ha standardizzato un insieme di metatag da inserire nelle pagine web per classificarne il contenuto. Tale standard prende il nome di PICS (Platform for Internet Content Selection). I browser web o altri strumenti di filtraggio possono essere impostati per accettare o respingere le pagine che contegono determinati valori di tali metatag. Purtroppo però, per essere efficace, questa tecnica richiederebbe che chi immette in Internet pagine web le classifichi usando lo standard PICS. Non sempre ciò è vero (per non dire che non lo è quasi mai). Si intuisce perciò, che questa tecnica non può essere usata da sola, ma va affiancata ad altre per migliorarne l’efficacia.
Le blacklist di siti proibiti
Uno dei metodi utilizzati per impedire che vengano visualizzate delle prederminate pagine web è quello di compilare delle Blacklist. In altre parole, si inseriscono gli URL vietati in una lista che un proxy in maniera centralizzata per un’intera LAN oppure un software locale al personal computer di accesso a Internet si impegnerà a far rispettare. Il punto critico di questo metodo consiste nella capacità di ottenere una blacklist quanto più aggiornata possibile. Purtroppo, il continuo espandersi del web con il conseguente proliferare di siti non adatti ai giovani, rende quest’impresa ardua. È ovvio, che la compilazione e l’aggiornamento delle blacklist, non può per quanto detto essere affrontata da singoli, ma, così come avviene per le signature degli antivirus, esistono delle organizzazioni di persone che svolgono tale lavoro. Nella maggior parte dei casi sarà dunque necessario pagare un canone per ottenere l’aggiornamento della lista dei siti proibiti.
Filtri sui contenuti delle pagine web
Piuttosto
che avere una lista statica aggiornabile periodicamente di URL da
bloccare è molto più efficace utilizzare dei filtri, che valutino
dinamicamente il contenuto delle pagine web, bloccando ciò che ritengono
inopportuno. È evidente, che a fronte delle maggiori garanzie che
questa soluzione propone, essa risulta più complessa dal punto di vista
implementativo. Le tecniche utilizzate nell’analisi del linguaggio delle
frasi contenute in un ipertesto http, che sono alla base di questi
filtri, sono molto simili a quelle utilizzate dai sistemi antispam ed in
analogia a questi si presenta il problema dei falsi positivi,
ovvero di siti che contenendo determinate parole vengono classificati
ingiustamente come inadatti ai minori. Tipici esempi sono le pagine di
educazione sessuale che spesso vengono scambiate per pornografiche. In
tal caso, bisognerà ricorrere alle whitelist per sbloccare i falsi
positivi.
Un ulteriore vantaggio dei web content filter è
che la soglia di intervento è tarabile. In altre parole, ad ogni pagina
valutata viene assegnato dinamicamente un punteggio che risulta tanto
più alto quanto maggiore è la probabilità che essa abbia un contenuto da
bloccare. I genitori potranno regolare il punteggio minimo per il quale
debba scattare il blocco. È naturale che si possa personalizzare tale
valore in base all’età dei minori a cui il servizio è rivolto.
Dove applicare i web content filter
I filtri che riguardano il protocollo http possono essere applicati essenzialmente in due punti:
- direttamente sul PC su cui avviene la navigazione in rete;
- sul router di accesso a Internet tramite proxy trasparente.
Nel primo
caso si installa un software di filtraggio che, intercettando le
richieste fatte con il web browser, filtra le risposte provenienti dai
web server prima che vengano visualizzate. Peraltro, i sistemi operativi
più recenti supportano nativamente la navigazione sicura senza
l’ausilio di software esterno. Tuttavia, sia che si tratti di
applicativi esterni che di supporto nativo, bisogna verificare con cura
che i minori non riescano a disattivare la protezione per esempio
indovinando la password di amministratore di sistema. E ancora, la
diffusione di sistemi Live CD sia Linux che Windows potrebbe permettere
ai ragazzi di far partire il PC con un sistema diverso da quello
installato, eludendone così i controlli. Il rimedio è quello di agire
sul BIOS della macchina ed impostare l’hard disk come prima periferica
di boot ed una password per evitare che si possa variare tale sequenza.
La seconda soluzione, cioè quella che
prevede la configurazione di un proxy trasparente sul router di accesso a
Internet e che sarà descritta in dettaglio nel seguito, presenta
l’indubbio vantaggio di essere a tutela dell’intera LAN senza richiedere
l’installazione o quantomeno la configurazione di ogni singolo PC o
notebook da cui i minori potrebbero avere accesso. Peraltro, disattivare
le protezioni su di un router è un’operazione ben più complicata che
non su di un PC e che difficilmente passarebbe inosservata.
DansGuardian sul router di accesso a Internet
DansGuardian – true web content filtering for all è
un software Open Source che appoggiandosi su di un server proxy
(generalmente viene usato Squid) effettua il controllo delle pagine Web.
La forza di questo software, rispetto ad altri, è nella sua capacità di
interpretare il contenuto dei documenti in base alla presenza di
determinate frasi o parole per ogni occorrenza delle quali viene
incrementato il punteggio. Quando quest’ultimo raggiunge la soglia
minima configurabile la pagina viene bloccata. DansGuardian oltre a
questo metodo che è quello privilegiato data la sua efficacia, può
filtrare anche in base ai metatag PICS e a delle Blacklist e Whitelist.
Zeroshell integra DansGuardian come
pacchetto esterno e lo fa cooperare con il sistema di proxying
trasparente HAVP con controllo antivirus da parte di ClamAV. Poiché il
proxy di Zeroshell è configurato in modo da lavorare in modalità
trasparente, esso intercetta automaticamentele le richieste http senza
la necessità di configurare i web browser per utilizzare il proxy.
Questo è un enorme vantaggio, poiché la configurazione del proxy su di
un browser come Firefox o Explorer sarebbe facilmente disattivabile dai
ragazzi con un minimo di conoscenza informatica. D’altra parte, un
processo di proxying trasparente necessita di agire su di una macchina
da cui transita tutto il traffico diretto e proveniente da Internet.
Conviene pertanto, sostituire il proprio router di accesso ad Internet
con un pc embedded in grado di far funzionare Zeroshell. Lo scanning
delle pagine web sia da parte dell’antivirus ClamAV che di DansGuardian è
nel complesso un’attività abbastanza pesante soprattutto in termini di
memoria RAM. Si raccomanda, pertanto, di utilizzare un dispositivo o PC
con almeno 256MB di RAM. Per esempio un router ALIX 2C2 con processore AMD Geode LX800 e 256MB di RAM è stato testato con risultati soddisfacenti.
Interfaccia web del proxy antivirus con DansGuardian
Installare DansGuardian su Zeroshell
DansGuardian per Zeroshell è distribuito nella forma di update (http://www.zeroshell.net/patch-details#AA00). Per installarlo basta eseguire le seguenti operazioni direttamente dalla console o tramite una sessione SSH:
cd /Database wget http://www.zeroshell.net/listing/AA00-DansGuardian-Web-Content-Filter-2.8.0.6-1.0.beta9.tar.bz2 tar xvfj AA00-DansGuardian-Web-Content-Filter-2.8.0.6-1.0.beta9.tar.bz2 cd AA00 ./install.sh
Alla fine dell’installazione il servizio
di proxy viene automaticamente riavviato senza la necessità di
effettuare il reboot del sistema. Se DansGuardian risulta installato
correttamente, nell’interfaccia web di configurazione del proxy compare
il bottone [Content Filer Log] premendo il quale può essere monitorata
la sua attività di blocco delle pagine.
Si noti peraltro, che poiché DansGuardian
coopera strettamente con il servizio di proxy http, quest’ultimo deve
essere configurato e attivato. In particolare bisogna aggiungere le
cosiddette HTTP Capturing Rules che definiscono quale traffico
http deve essere sottoposto all’azione del transparent proxy. Per
maggiori dettagli sulla configurazione del proxy trasparente consultare
l’URL http://www.zeroshell.net/proxy-antivirus.
Configurare DansGuardian
Attualmente
Zeroshell non dispone di un’interfaccia web per la gestione di
DansGuardian. Dalla sezione [HTTP Proxy] dell’interfaccia (vedi figura
sopra) è possibile solo consultare i log di DansGuardian e impostare la
WhiteList che coincide con quella del servizio proxy. L’uso del
whitelisting è molto utile nel caso si verifichino dei falsi positivi.
In tal caso, basta aggiungere il sito nella whitelist per evitare che
DansGuardian lo blocchi, ma bisogna essere consapevoli che in tal caso
il sito sfugge anche al controllo antivirus. È scontato inoltre che
attivando e disattivando il servizio proxy con l’apposito flag
[Enabled], si attiva e disattiva contemporaneamente DansGuardian.
La configurazione di default con cui il
pacchetto DansGuardian viene installato, corrisponde ad un livello di
protezione caratterizzato da una soglia di intervento (parametro
naughtynesslimit) pari a 100. Se si verificano troppi falsi positivi, si
deve aumentare tale valore, mentre in presenza di bambini più piccoli
si dovrevve ridurre ridurlo. Per tarare quindi la sensibilità di
DansGuardian, bisogna editare il file
/etc/dansguardian/dansguardianf1.conf, modificando il parametro naughtynesslimit come mostrato sotto:
# Naughtyness limit # This the limit over which the page will be blocked. Each weighted phrase is given # a value either positive or negative and the values added up. Phrases to do with # good subjects will have negative values, and bad subjects will have positive # values. See the weightedphraselist file for examples. # As a guide: # 50 is for young children, 100 for old children, 160 for young adults. naughtynesslimit = 100
Per far ripartire i daemon dansguardian in maniera che si rileggano la configurazione ci sono due metodi: si può disabilitare e poi riabilitare il servizio proxy dall’interfaccia web oppure, eseguire lo script /root/kerbynet.cgi/scripts/dg_start dalla console. L’ultimo metodo è molto più veloce poiché rilancia solo DansGuardian che riparte in pochi secondi a differenza dell’intero sistema di proxy HAVP che, dovendo decomprimere in RAM le signature dei virus, può impiegare anche alcuni minuti.
Bloccare il trasferimento di file di Windows Live Messenger
Il web non è l’unico modo con cui i minori possono venire a contatto con materiale non adatto alla loro età. Uno degli strumenti oggi più utilizzato per comunicare in tempo reale è MSN Messenger evolutosi nel Windows Live Messenger che è, appunto, un software di messaggistica istantanea con funzionalità avanzate come l’integrazione con una webcam e la possibilità di scambio file. L’utilità di questo strumento di chat non può essere messa in discussione. Tuttavia, esiste il pericolo che degli sconosciuti possano entrare in contatto con i ragazzi inviando loro film o immagini con contenuti discutibili. Per evitare ciò, si può bloccare completamente il Live Messenger sul router di accesso a Internet o meno drasticamente bloccare lo scambio di file. Con i router tradizionali, che hanno un firewall che filtra basandosi soltanto sulle porte TCP e UDP, è difficile far ciò poiché il Live Messenger, se non riesce a comunicare sulla porta 1863 TCP automaticamente usa le porte 80 (http) e 443 (https) che, essendo quelle usate dai web server, nessuno bloccherebbe mai. La soluzione è quella di usare i filtri Layer 7 che guardando all’interno dei pacchetti riescono a identificare il traffico Live Messenger indipendentemente dalla porta usata. In figura viene mostrata una regola del firewall di Zeroshell che blocca il trasferimento di file con il Windows Live Messenger (ma si potrebbe bloccare l’intero funzionamento del Messenger) con l’uso degli L7-Filter.
Filtro Firewall per Windows Live Messenger
DansGuardian su Access Point Wireless Multi SSID
Una delle caratteristiche di Zeroshell è quella di poter realizzare un Access Point Wi-Fi con supporto per il Multi SSID. In altre parole, tale access point può distribuire su di uno stesso canale radio più Wireless LAN, ognuna indipendente dall’altra e con il proprio metodo di autenticazione ed eventuale cifratura del traffico (Captive Portal, WPA/WPA2, WEP o Plain-text). Si può pertanto pensare di applicare il servizio proxy e quindi DansGuardian soltanto ad un SSID destinato alla navigazione dei minori, mentre un altro SSID, opportunamente protetto in modo che questi ultimi non vi possano accedere, agli adulti.