Differences between revisions 3 and 4
Revision 3 as of 2010-10-28 12:14:38
Size: 4996
Editor: PaoloAlberti
Comment:
Revision 4 as of 2010-10-28 21:57:15
Size: 4733
Editor: PaoloAlberti
Comment: aggiunto header, modificati links,
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= Filtro web rudimentale con squidGuard =

Recentemente abbiamo avuto delle lamentele nella nostra scuola riguardanti l'assenza di filtri internet. Così ho configurato squidGuard. Mi ci sono volute un paio di ore dal momento di venire a sapere dell'esistenza di squidGuard al farlo funzionare in maniera semplice. Per settaggi più avanzati guardare in fondo a questa pagina.

"Nota: i listati presenti sono stati realizzati usando un server Sarge."
#language it
##TRANSLATION-HEADER-START
||<tablewidth="100%"style="border: 0px hidden ;">~-[[DebianWiki/EditorGuide#translation|Translation(s)]]: [[DebianEdu/HowTo/SquidGuard|English]] - Italiano-~ ||<style="border: 0px hidden ; text-align: right;"> (!) [[/Discussion]] ||
##TRANSLATION-HEADER-END
<<BR>>
----
Questa pagina è relativa all'impostazione di un sistema rudimentale di filtraggio web dei contenuti per mezzo di squidGuard e delle blacklist
----

== Filtro web rudimentale con squidGuard ==

Quella che segue è la descrizione delle operazioni da compiere per impostare squidGuard in maniera semplice. Per configurazioni più avanzate guardare in fondo a questa pagina.
Line 47: Line 54:
un esempio di {{{squid.conf}}} per la blacklist appena installata può essere trovato in /SquidGuardConf un esempio di {{{squid.conf}}} per la blacklist appena installata può essere trovato in [[DebianEdu/HowTo/SquidGuard/SquidGuardConf|SquidGuardConf]]
Line 102: Line 109:
Io ho usato /BlockHtml, che è una bella pagina in bianco e nero con un link a skolelinux.de. Si può usare [[DebianEdu/HowTo/SquidGuard/BlockHtml|BlockHtml]], che è una bella pagina in bianco e nero con un link a skolelinux.de.
Line 113: Line 120:
== verificare l'installazione == === Verificare l'installazione ===
Line 124: Line 131:
== se si modificano le blacklist == === Se si modificano le blacklist ===
Line 132: Line 139:
E riconfigurare squid con: e riconfigurare squid con:
Line 142: Line 149:

== TODO ==

 * Documentazione riguardante le blacklist in differenti lingue.
 * Logging delle violazioni alle blacklist e relativa notifica (email, jabber?).
 * controllo basato su LDAP (??)
 * Aggiornamenti automatici.
 * Tradurre in tedesco e aggiungere al mio wiki
 * Modulo Webmin - Ho cercato di installarlo e di farlo funzionare: DebianEdu/HowTo/SquidGuard/webmin, però in realtà il modulo non funziona benissimo e quindi questa idea è stata abbandonata poichè webmin e sarge sono entrambi deprecati.

== Commenti su questa pagina ==

Aggiungi i commenti qui, grazie.

Translation(s): English - Italiano

(!) ?/Discussion



Questa pagina è relativa all'impostazione di un sistema rudimentale di filtraggio web dei contenuti per mezzo di squidGuard e delle blacklist


Filtro web rudimentale con squidGuard

Quella che segue è la descrizione delle operazioni da compiere per impostare squidGuard in maniera semplice. Per configurazioni più avanzate guardare in fondo a questa pagina.

Installazione

da root:

apt-get install squidguard

Configurazione

download di una blacklist di base da:

http://squidguard.mesd.k12.or.us/blacklists.tgz

copia di quella blacklist nella directory di squid:

cp blacklist.tgz /var/lib/squidguard/db/

sempre come root, spostarsi nella directory dei database di squidGuard:

cd /var/lib/squidguard/db

scompattare la blacklists con:

tar xvzf blacklists.tgz

Adesso è possibile editare il proprio file di configurazione:

/etc/squid/squidGuard.conf

un esempio di squid.conf per la blacklist appena installata può essere trovato in SquidGuardConf

Si dovranno settare le ownership adeguate per il database di squidGuard:

chown proxy:proxy -R /var/lib/squidguard/db/*

e i permessi (tutti i files 644, tutte le directories 755):

find /var/lib/squidguard/db -type f | xargs chmod 644
find /var/lib/squidguard/db -type d | xargs chmod 755

Poi si inizializzerà il database:

sudo -u proxy squidGuard -C all

Se si guarda all'interno delle directories che contengono i files domains e urls si potrà vedere che sono stati creati files addizionali: domains.db e urls.db.

Adesso bisognerà dire a squid di usare squidGuard, per questo bisognerà inserire la seguente riga

redirect_program /usr/bin/squidGuard

al file di configurazione di squid

/etc/squid/squid.conf

preferibilmente dove dice:

#  TAG: redirect_program

approssimativamente alla riga 1023

Impostare il messaggio che sarà restituito per gli URL bloccati

/var/www/block.html

Si può usare BlockHtml, che è una bella pagina in bianco e nero con un link a skolelinux.de.

Adesso riavviare squid con:

squid -k reconfigure

Verificare l'installazione

Il modo più semplice è quello di visitare qualche sito che dovrebbe risultare bloccato e anche qualche sito che non si trova nella blacklist per controllare che questo sia consentito. Sul sito di squidGuard c'è una maniera molto carina di controllare che funzioni: verifying squidGuard

Per debian-edu si può usare il seguente comando:

echo "http://www.rotten.com / - - GET" | squidGuard -d 

Se si modificano le blacklist

Si dovrà aggiornare il database di squidGuard con:

sudo -u proxy squidGuard -C all

e riconfigurare squid con:

squid -k reconfigure

Aggiornamenti automatici

Salvare il seguente script come /root/bin/squid_blacklists_updates.sh:

TARGET=/var/lib/squidguard/db/blacklists

cd $TARGET || exit

# only run if squidGuard is active!
[ "`ps auxw | grep squid[G]uard`" ] || exit

rsync -az squidguard.mesd.k12.or.us::filtering $TARGET

for DIR in `ls $TARGET`
do
        if [ -f $DIR/domains.include ]
        then
                TMP=$RANDOM
                cat $DIR/domains $DIR/domains.include | sort | uniq > $DIR/domains.$TMP
                mv -f $DIR/domains.$TMP $DIR/domains
        fi
        if [ -f $DIR/urls.include ]
        then
                TMP=$RANDOM
                cat $DIR/urls $DIR/urls.include | sort | uniq > $DIR/urls.$TMP
                mv -f $DIR/urls.$TMP $DIR/urls
        fi
done

/usr/bin/squidGuard -c /etc/squid/squidGuard.conf  -C all
# /usr/sbin/squidGuard -c /etc/squid/squidGuard.conf  -u

chown -R proxy:proxy $TARGET
chown -R proxy:proxy /var/log/squid/squidGuard.log

sleep 5s

/usr/bin/killall -HUP squid

e inserirlo nel crontab di root:

sudo crontab -e

aggiungere la seguente riga:

00 5 * * * sh /root/bin/squid_blacklist_update.sh