Améliorer le filtrage de Squid

La fonction filtre de Squid fonctionne essentiellement à l'aide de listes noires, il est donc essentiel de disposer de "listes noires" à jour car les publicitaires "invasifs" n'hésitent pas à modifier leurs noms de domaines et les adresses IP de leurs machines (merci le cloud !).

Une bonne source de ces listes est le site https://pgl.yoyo.org, vous pouvez aussi aller voir https://yoyo.org. 
Comme ces listes ne sont pas forcément dans un format reconnu par Squid, j'utilise deux scripts qui effectuent :

  • La récupération des données.
  • Leur mise en forme.
  • Leur placement dans le bon répertoire sous le "bon nom" reconnu par le paramétrage de Squid.

 Le paramétrage dans "squid.conf" est simple, il suffit d'ajouter :

Paramétrage SQUID

acl         yoyo_ip     dst      "/etc/squid/yoyo_bad_adresses.txt" 
deny_info     http://xxxxxxx/deny.png   yoyo_ip 
http_access     deny     yoyo_ip

acl    ad_block    dstdom_regex    "/etc/squid/ad_block.db" 
deny_info     http://xxxxxxx/deny.png  ad_block 
http_access    deny        ad_block

Note : le renvoi est fait vers un serveur Apache (Nginx doit faire aussi bien) résidant sur la même machine, le fichier "deny.png" est une simple image d'un petit point rouge. 
On doit pouvoir faire le même genre d'opération avec un fichier "local" sur les postes clients. 
Ces scripts sont, plus ou moins, paramétrables à l'aide d'un fichier ".conf"et réalisent les opérations pour lesquelles ils ont été conçus. 
Il est conseillé de les lancer une fois par semaine afin de bénéficier d'une mise à jour régulière.

Les scripts sont disponibles ici en format tar.gz.