User Tools

Site Tools


doc:appunti:linux:sa:dansguardian

Dansguardian su Debian Stretch

Si vuole fare l'installazione di una singola macchina client che effettui il filtraggio dei contenuti web. Tutto il software sarà in esecuzione sul client, senza filtraggi da parte del firewall.

Installati i pacchetti:

  • dansguardian
  • clamav
  • squid

Per attivare il servizio Dansguardian si deve configurare il file /etc/dansguardian/dansguardian.conf, almeno commentando la riga che contiene UNCONFIGURED. Una volta avviato il servizio con systemctl start dansguardian.service, il demone resta in ascolto sulla port 8080/TCP.

A sua volta il cache proxy Squid è in ascolto sulla porta 3128/TCP.

Per attivare il proxy http ogni browser utilizza sistemi diversi, ad esmepio con Chromium si può aggiungere una opzione sulla riga di comando:

chromium --proxy-server="http://127.0.0.1:8080"

In altri casi può essere sufficiente impostare una variabile di ambiente (ma alcuni desktop come KDE e Gnome potrebbero avere il sopravvento):

export http_proxy="http://127.0.0.1:8080"
export https_proxy="http://127.0.0.1:8080"

Se il browser accede tramite il proxy Dansguardian, si vedono le relative righe nel file /var/log/dansguardian/access.log, a sua volta Dansguardian si rivolge a Squid e quindi si trovano le righe di log in /var/log/squid/access.log.

FIXME Come aggiungere regole iptables per bloccare la navigazione diretta senza proxy?

Aggiunta Blacklist Siti

Con l'impostazione predefinita Dansguardian non applica molti filtri, vogliamo almeno aggiungere dei filtri che bloccano siti per adulti.

Esiste un plugin per Squid chiamato SquidGuard, che implementga delle blacklist per Squid; non installaremo tale plugin, perché Dansguardian può utilizzare direttamente le stesse blacklist. Scarichiamone una apposita:

ftp://ftp.univ-tlse1.fr/pub/reseau/cache/squidguard_contrib/adult.tar.gz

scompattiamo il contenuto in modo che i file siano in /usr/local/lib/squidguard/db/adult/ e creiamo un link simbolico nella directory di Dansguardian:

ln -s /usr/local/lib/squidguard/db/adult /etc/dansguardian/lists/blacklists/

e includiamo l'elenco dei siti bannati in /etc/dansguardian/lists/bannedsitelist scommentando la riga:

.Include</etc/dansguardian/lists/blacklists/adult/domains>

Dopo aver riavviato il servizio con systemctl restart dansguardian.service sarà impossibile navigare sui siti bannati, nel file di log /var/log/dansguardian/access.log si troveranno righe del tipo:

2018.3.1 11:07:15 - 127.0.0.1 https://www.youporn.com:443 *DENIED*
    Banned site: youporn.com CONNECT 0 0  1 403 -   -

Aggiunta Scansione Antivirus

Dopo aver installato il pacchetto clamav-daemon verificare che il processo clamd sia in esecuzione che sia presente il socket /var/run/clamav/clamd.ctl. Scommentare la riga nel file di configurazione /etc/dansguardian/dansguardian.conf:

contentscanner = '/etc/dansguardian/contentscanners/clamdscan.conf'

FIXME: Non funziona perché i file creati da Dansguardian in /tmp non possono essere letti dal processo clamd:

/var/log/dansguardian/access.log:

2018.3.1 11:26:00 - 127.0.0.1 http://www.rigacci.org/eicar_antivirus_test.com *INFECTED*
    *DENIED* /tmp/tfuCDk1C: Access denied. ERROR GET 337 0 Content scanning 1 403 -   -

in /var/log/syslog

dansguardian[27754]: ClamD error: /tmp/tfxGwbT5: Access denied. ERROR

FIXME: Soluzione non funzionante:

mkdir -p /var/tmp/dansguardian
chown dansguardian.dansguardian /var/tmp/dansguardian
chmod 777 /var/tmp/dansguardian
adduser clamav dansguardian
filecachedir = '/var/tmp/dansguardian'

Riferimenti Web

doc/appunti/linux/sa/dansguardian.txt · Last modified: 2018/03/01 12:15 by niccolo