Translation(s): English - Italiano
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.
"Nota: i listati di comandi in questa pagina wiki sono stati ottenuti usando un server Sarge."
Installazione
Diventare root, poi eseguire:
apt-get install squidguard
Configurazione
Scaricare una blacklist di base da:
http://squidguard.mesd.k12.or.us/blacklists.tgz
Copiare quella blacklist nella directory di squid:
cp blacklist.tgz /var/lib/squidguard/db/
Spostarsi nella directory dei database di squidGuard:
cd /var/lib/squidguard/db
Scompattare la blacklist con:
tar xvzf blacklists.tgz
Modificare il proprio file di configurazione:
/etc/squid/squidGuard.conf
un esempio di squid.conf per la blacklist appena installata può essere trovato in SquidGuardConf
Impostare il proprietario adeguato per il database di squidGuard:
chown proxy:proxy -R /var/lib/squidguard/db/*
e i permessi (tutti i file 644, tutte le directory 755):
find /var/lib/squidguard/db -type f | xargs chmod 644 find /var/lib/squidguard/db -type d | xargs chmod 755
Inizializzare il database:
sudo -u proxy squidGuard -C all
Se si guarda all'interno delle directory che contengono i file domains e urls si potrà vedere che sono stati creati file addizionali: domains.db e urls.db.
Se non si ha sudo sarà nuovamente necessario cambiare il proprietario.
Dire a squid di usare squidGuard, per questo andrà inserita la seguente riga:
url_rewrite_program /usr/bin/squidGuard
al file di configurazione di squid
/etc/squid/squid.conf
Impostare il messaggio che sarà restituito per gli URL bloccati:
/var/www/block.html
Si può usare BlockHtml, che è una bella pagina in rosso e nero con un collegamento 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 sia visualizzato. Sul sito di squidGuard c'è una maniera molto carina per controllare se funziona: verificare la configurazione di 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
Collegamenti
TODO
- More about blacklists in different languages.
- Logging blacklist violations, and messaging someone email jabber (??).
- LDAP Based control (??)
- Automatic Updates.
- translate into German, and add to my German wiki
- Webmin Module - I tried to install this and make it work at DebianEdu/HowTo/SquidGuard/webmin, however the module din't really work too well, and so this idea has been abandoned as webmin and sarge are bothe deprecated
Commenti riguardanti questa pagina
Si possono aggiungere in questa sezione, preferibilmente nella versione originale inglese della pagina, i propri commenti insieme al proprio nome Wiki.
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
inserirlo nel crontab di root:
sudo crontab -e
e aggiungere la seguente riga:
00 5 * * * sh /root/bin/squid_blacklist_update.sh