@ :~/blog/weekly-update-of-squidguard-database$
← cd ~/blog

less weekly-update-of-squidguard-database.md

SquidGuard DataBase: Weekly Update

#Bash#Debian & Sysadmin archivio

# archivio storico — scritto anni fa, conservato com'era. Alcune info sono datate.

Su alcuni dei miei server ho installato Squid3 insieme a SquidGuard. squidGuardQuesta necessità è nata dal fatto che ho realizzato un hotspot wi-fi. L’hotspot e la sua realizzazione sono un’altra storia che forse un giorno affronteremo. Quello che oggi però ci interessa è dare una risposta alla seguente domanda:

Avendo Squid3 è SquidGuard funzionanti, devo per forza aggiornare manualmente i DB della mia blacklist?

Risposta: “No, assolutamente possiamo automatizzare il processo e dimenticarcene 😉

Ecco cosa ho fatto partendo da alcuni presupposti:

  1. Squid3 è attivo e funzionate;
  2. Squid3 grazie a SquidGuard blocca l’accesso ad alcuni generi di siti web;
  3. SquidGuard per compiere il suo lavoro usa le Shalla’s Blacklists.

Ora ogni settimana il mio server si collega, scarica le blacklist aggiornate e si preoccupa di fare l’update di SquidGuard! Tutto questo attraverso un semplice script da porre nella cartella /etc/cron.weekly della vostro server Debian. Utilizzate il vostro editor preferito copiate salvate il testo qui sotto e ricordate di dare i permessi di esecuzione (a+x) al file, mi raccomando!!!

#!/bin/sh
LISTS="COPYRIGHT global_usage adv aggressive drugs hacking gamble porn redirector sex spyware violence warez"
SGDIRDB=/var/lib/squidguard/db/shalla/
echo downloading blacklist...
cd /var/tmp/
rm -rf BL
#wget -nv http://ftp.ost.eltele.no/pub/www/proxy/squidGuard/contrib/blacklists.tar.gz~
wget -nv "http://www.shallalist.de/Downloads/shallalist.tar.gz"
tar -zxf shallalist.tar.gz
cd BL
find . -perm 750 -exec chmod 2750 {} ;
chown -R proxy:proxy *
for dir in $LISTS; do cp -arf $dir $SGDIRDB; done
echo Updating SquidGuard
update-squidguard
echo Cleaning temp directory
rm -rf /var/tmp/BL
rm -rf /var/tmp/shallalist.tar.gz
echo Finished.

Ecco alcune spiegazioni:

  • La variabile $LISTS si occupa di identificare le categorie di domini e url da mettere in blacklist;
  • la variabile $SGDIRDB identifica la directory dove squidGuard andrà a cercare i suoi DB;
  • update-squidguard si occupa di aggiornare i DBs e ricaricare squidGuard.

…il resto dello script è davvero semplice e non credo occorra dare ulteriori chiarimenti.

Sono troppo ottimista?!