DansGuardian
DansGuardian
Description
DansGuardian est un système de filtrage qui s'interface avec Squid ou oops. Squid écoute sur le port 3128 par défaut et DansGuardian sur le port 8080 par défaut. DansGuardian s'intercale entre le navigateur et Squid. Ainsi, les requêtes du navigateur sont transmises à DansGuardian qui les analyse avant de les retransmettre à Squid, qui ira chercher le contenu sur Internet.
A la différence de SquidGuard qui se base sur une liste de sites interdits, à mettre à jour régulièrement, DansGuardian analyse quant à lui le contenu de la page pour déterminer si elle doit être affichée ou bloquée.
Installation
Pré-requis
L'installation préalable de squid (à partir des packages ou des sources) est nécessaire. Par ailleurs, si vous installez dansguardian à partir des sources, vous aurez besoin du paquet pkg-config.
# apt-get install squid3 squid3-common pkg-config
Création des fichiers et répertoires
La commande qui suit permet de vérifier que l'utilisateur dansguardian n'existe pas encore.
# id dansguardian id: dansguardian: usager inexistant.
Si la commande précédente remonte l'existence de l'utilisateur dansguardian, les commandes qui suivent (création du groupe et de l'utilisateur) ne sont pas nécessaires.
# groupadd dansguardian # useradd -g dansguardian dansguardian
Création du système de fichiers et affectation des droits appropriés
# mkdir /var/log/dansguardian/ # cd /var/log/dansguardian/ # touch access.log # touch stats # chown -R dansguardian:dansguardian /var/log/dansguardian/
Installation à partir des sources
Bien qu'il existe une version packagée (apt-get install dansguardian), il est préférable d'installer dansguardian à partir des sources afin d'obtenir la dernière version.
# cd /usr/local/src/ # wget http://dansguardian.org/downloads/2/Stable/dansguardian-2.10.0.2.tar.gz # tar xzvf dansguardian-2.10.0.2.tar.gz # cd dansguardian-2.10.0.2/
Les options de compilation les plus utilisées sont :
--enable-clamav Assure le support antivirus ClamAV --enable-fancydm[=yes] Assure le support du "fancy download manager" --enable-trickledm[=no] Assure le support du "trickle download manager" --with-proxyuser=dansguardian Nom d'utilisateur pour le proxy --with-proxygroup=dansguardian Nom du groupe pour le proxy --with-piddir=var/run Chemin du répertoire pour le PID --with-logdir=var/log/dansguardian Chemin du répertoire des logs dansguardian
Compilation et installation
# ./configure \ --enable-clamav \ --enable-trickledm=yes \ --with-proxyuser=dansguardian \ --with-proxygroup=dansguardian # make # make install
Installation de la blacklist
- Aller sur le site http://urlblacklist.com/?sec=download
- et télécharger le fichier bigblacklist.tar.gz
- Le décompresser dans le répertoire /usr/local/etc/dansguardian/lists/blacklists/
Désinstallation de DansGuardian
# cd /usr/local/src/dansguardian-2.10.0.2/ # make uninstall
Paramétrage
Modification du fichier de configuration
Modifications de base
Le paramétrage est situé principalement dans le fichier dansguardian.conf
# cd /usr/local/etc/dansguardian/ # cp dansguardian.conf dansguardian.conf.orig # vim dansguardian.conf
Puis modifiez le fichier comme suit :
--- Remplacez language = 'ukenglish' par language = 'french' --- Remplacez #loglocation = '/usr/local/var/log/dansguardian/access.log' par loglocation = '/var/log/dansguardian/access.log' --- Remplacez #statlocation = '/usr/local/var/log/dansguardian/stats' par statlocation = '/var/log/dansguardian/stats' ---
Si vous utilisez un niveau de reporting (reporting_level) égal à 1 ou 2, cette variable vous permet de spécifier l'adresse de redirection en cas d'interdiction. Dans le cas où vous laissez le niveau par défaut (niveau 3, recommandé), cette modification n'est pas nécessaire.
Remplacez accessdeniedaddress = 'http://YOURSERVER.YOURDOMAIN/cgi-bin/dansguardian.pl' par accessdeniedaddress = 'http://www.aldeid.com/cgi-bin/dansguardian.pl' --- Remplacez : #daemonuser = 'nobody' #daemongroup = 'nobody' par : daemonuser = 'dansguardian' daemongroup = 'dansguardian'
Modifications avancées
Authentification
Thank you for your comprehension.
Rotation des logs
DansGuardian est livré avec un script de rotation des logs. Pour que celui-ci soit exécuté régulièrement, le plus simple est d'ajouter une entrée crontab.
# crontab -e
Puis ajouter l'entrée suivante (déclenchement tous les samedis, à 03:00) :
00 03 * * sat /usr/local/share/dansguardian/scripts/logrotation
Utlilisation
Sur le serveur
Pour lancer DansGuardian :
# dansguardian
Pour stopper dansguardian :
# dansguardian -q
Vérifier que les daemons sont lancés :
# ps aux | grep squid3 # ps aux | grep dansguardian
Redirection IPTABLES
# iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 3128 -j REDIRECT --to-port 8080
Sur le client
Paramétrez les navigateurs pour passer par le proxy (172.16.196.128, port 8080).