Mise en œuvre de Squid / SquidGuard sous Debian
Squid est le proxy le plus utilisé au monde. Par la mise en cache des pages visitées, il permet aux entreprises d’économiser de la bande passante. Accessoirement, flanqué de SquidGuard, il empêchera vos salariés de baguenauder – un synonyme de cyberglander – au hasard de leurs clics sur le WWW.
Dans ce tuto, vous trouverez un script de mise à jour du logiciel SquidGuard, à partir de la blacklist fournie par l’université de Toulouse et mise à jour par Fabrice Prigent. Merci à lui.
Installation de Squid / SquidGuard
L’installation de Squid / SquidGuard sous Debian se fait avec la commande apt :
apt update && apt install squid squidguard
Le service squid est automatiquement démarré. Vous pouvez d’ailleurs le contrôler avec :
systemctl status squid
Modification de la configuration Squid
Pensez à ajouter au fichier /etc/squid/squid.conf la ligne suivante :
url_rewrite_program /usr/bin/squidGuard -c /etc/squidguard/squidGuard.conf
Script de mise à jour de la blacklist SquidGuard
L’exécution de ce script suppose que vous ayez configuré correctement tout d’abord Squid et SquidGuard (voir ci-dessous) :
#!/bin/bash REP=/var/lib/squidguard/db FILE=blacklists.tar.gz cd $REP if [ -f blacklists.tar.gz ] then rm -f blacklists.tar.gz fi wget -q http://dsi.ut-capitole.fr/blacklists/download/$FILE tar zxvf $FILE /usr/bin/squidGuard -C all -d chmod a+r $REP -R systemctl reload squid
Vous devez ensuite planifier l’exécution la planification de la tâche avec crontab -e, après avoir rendu exécutable ce script à l’aide de la commande chmod +x.
Exemple de fichier de configuration SquidGuard
Sous Debian, le fichier de configuration se situe à l’emplacement /etc/squid/squidGuard.conf :
dbhome /var/lib/squidguard/db logdir /var/log/squidGuard src lan { ip 192.168.0.0/16 172.16.0.0/12 10.0.0.0/8 127.0.0.0/8 } dest adult { domainlist blacklists/porn/domains urllist blacklists/porn/urls expressionlist blacklists/porn/expressions redirect 307:https://lite.qwant.com/? } acl { lan { pass !adult all redirect 307:https://lite.qwant.com/? } default { pass none redirect 307:https://lite.qwant.com/? } }
Exemple de fichier /etc/squid/squid.conf
Commentez toutes les directives http_access, à l’exception de celles indiquées en gras dans le fichier d’exemple ci-dessous.
acl localnet src 10.0.0.0/8 # RFC1918 possible internal network acl localnet src 172.16.0.0/12 # RFC1918 possible internal network acl localnet src 192.168.0.0/16 # RFC1918 possible internal network acl localnet src fc00::/7 # RFC 4193 local private network range acl localnet src fe80::/10 # RFC 4291 link-local (directly plugged) machines http_access allow localnet localhost http_access deny all http_port 3128 #Le cache est fonction de la taille mémoire dont vous disposez. cache_mem 2048 MB maximum_object_size_in_memory 4 MB url_rewrite_program /usr/bin/squidGuard -c /etc/squidguard/squidGuard.conf
Une fois toutes ces modifications apportées au fichier de configuration de Squid, rechargez la configuration :
systemctl reload squid