Squidguard

Si vous êtes un particulier

Cette page est une page souvent référencée par les moteurs de recherche. Mais elle est assez technique et ne répond peut-être pas à votre besoin (si vous êtes un particulier). Nous avons, dans ce cas, une autre page, plus courte et plus utile pour vous : protection_enfance.html. Pour ceux qui veulent une information plus précise sur la liste noire http://dsi.ut-capitole.fr/blacklists.

Introduction

For the English version.
SquidGuard est un redirecteur qui utilise la librairie Berkeley Database de sleepycat. Attention à la version (2.x pour squidguard 1.1.x et 3.x pour squidguard 1.2.x).
Son url http://www.squidguard.org. Ses auteurs sont Ces 2 auteurs semblent ne plus être disponibles. Leur outil a donc été repris par shalla pour continuer Il nécessite une version récente de la Berkeley Database (>3.2.x )
Nous hébergeons un répertoire de contributions personnelles : ftp://ftp.univ-tlse1.fr/pub/reseau/cache/squidguard_contrib/
Vous trouverez d'autres informations en français concernant squidguard sur ces sites Dans d'autres langues vous avez aussi

Etudes

Administration de Squidguard

Afin de faciliter l'administration de SquidGuard, plusieurs outils existent, ainsi que des distributions toutes faites

Distributions spécialisées

Plus simple encore : des distributions spécialisées

Solutions matérielles peu couteuses

Ses concurrents

Ses avantages :

Pratique : scripts / bases de données / conseils

Scripts

Conseils

Bases de données

Pour une explication plus complète de notre base de données, regardez la page suivante http://cri.univ-tlse1.fr/blacklists. D'autres bases sont disponibles :

Filtrage anti viral

Des outils existent pour permettre à un redirecteur squid (à l'origine, Squirm) d'envoyer une URL suspecte sur un logiciel antiviral.
  • http://viralator.loddington.com permet ainsi de vérifier des fichiers avec un anti-virus commercial. Attention, avec Internet Explorer, les scans se passent mal pour les transferts ftp. Une version spécifique SquidGuard a été développée par Ankit Jain. Elle est disponible ici en version 0.9b2 viralator-squidguard.pl.txt. Pour l'utiliser il suffit de mettre une redirection du type redirect http://127.0.0.1/viralator.cgi?url=%u
  • http://www.hycomat.co.uk/viromat/ est écrit en PHP et fait le même travail, mais son auteur a préféré arrêter le projet et fait désormais partie de l'équipe qui développe viralator
  • http://ostatic.com/scavrSCAVR (SquidClamAV Redirector)

Listes de diffusion

Afin de faciliter les relations entre les utilisateurs de la base de données de l'Université Toulouse 1 Capitole et le mainteneur de cette base, il a été créée une liste de diffusion. Pour s'y abonner : squidguard-fr-subscribe@univ-tlse1.fr. Pour s'abonner à la version américaine (modérée): squidguard-subscribe@univ-tlse1.fr.

Projets connexes

  • http://www.surbl.org est un site qui était initialement prévu pour les spams. Il gère des listes dns qui pourraient dans un proche avenir être utile à squidguard. En particulier, les pornographes aimant beaucoup le spam, la blacklist va bientot se retrouver sur ce DNS.

FAQ

Des questions reviennent souvent sur la liste de diffusion de squidguard. En voici quelques unes, n'hésitez pas à me contacter fabrice.prigent@univ-tlse1.fr pour me signaler d'autres FAQ. La FAQ originale se trouve sur http://www.squidguard.org/Doc/
  • Squidguard ne marche pas de la même manière avec Squid 2.6 Il faut remplacer, dans le squid.conf
    • redirect_program par url_rewrite_program
    • redirect_children par url_rewrite_children
    • >Une nouvelle commande apparaît url_rewrite_concurrency
    • Le comportement reste quasi identique (simplement, le nombre de redirecteurs doit être plus élevé).
  • SquidGuard 1.1.x ne se compile pas il faut utiliser la version 2.x de la berkeley DB. Seule la version 1.2 utilise la version 3.x de la berkeley DB (Sleepycat).
  • Rien n'est filtré Plusieurs raisons sont possibles
    • Les droits sont incorrects : L'utilisateur qui lance squid, est le même que celui qui lance Squidguard. Celui-ci doit donc pouvoir lire les bases de données en mode texte, lire et écrire les bases de données en mode .db, lire et écrire sur les logs. Celà donne donc :
      		drwxr-xr-x  2 root     root	     1024 avr  2  2001 logs
      		-rw-r-----  1 squid    squid	   100000 oct 23 08:13 logs/squidGuard.log
      		-rw-r-----  1 squid    squid	     1000 oct 23 08:13 logs/squidGuard.error
      		drwxr-xr-x  2 root     root	     1024 avr  2  2001 db
      		drwxr-xr-x  2 root     root	     1024 avr  2  2001 db/dest
      		drwxr-xr-x  2 squid    squid	     1024 avr  2  2001 db/dest/adult
      		-rw-r--r--  1 squid    squid	     1024 avr  2  2001 db/dest/adult/domains
      		-rw-r--r--  1 squid    squid	     1024 avr  2  2001 db/dest/adult/domains.db
      		-rw-r--r--  1 squid    squid	     1024 avr  2  2001 db/dest/adult/urls
      		-rw-r--r--  1 squid    squid	     1024 avr  2  2001 db/dest/adult/urls.db
      		...
      		drwxr-xr-x  2 squid    squid	     1024 avr  2  2001 db/dest/warez
      		...
      		drwxr-xr-x  2 root     root          1024 avr  2  2001 db/src
      		...
      		
    • Vous n'avez pas ajouté none à la fin de vos règles. Le défaut étant de laisser passer.
    • Vous avez une erreur de syntaxe dans la configuration. C'est surtout le cas au niveau des définitions temporelles.
  • Quelle est l'utilité des .db de SquidGuard ? Il faut bien comprendre le fonctionnement de SquidGuard : celui-ci, à chaque lancement, prend les fichiers textes, les lit, puis génère une base de données indexée afin d'augmenter sa rapidité. Au lieu de faire ceci à chaque lancement de Squidguard (donc à CHAQUE redirecteur lancé) on peut lui préciser, à l'aide de la commande squidguard -C all de générer ces bases de données une fois pour toute. Il n'a donc plus à la faire à chaque lancement. Le gain de temps est très important lors de fortes utilisations.
  • Le log de squidGuard m'annonce systématiquement file empty remove from memory Si vous êtes en squidguard version 1.2.0, il est important de noter que celui-ci n'est pas compatible avec une berkeley db 2.7.x. Il vous faudra impérativement, soit redescendre de version de squidguard, soit passer en berkeley db 3.2.x.
  • Puis-je ajouter en direct des urls ou des domaines à SquidGuard ? Celà dépend du point précédent : si vous avez généré des .db, oui, sinon non. Si vous les avez générés, il suffit de créer un fichier domains.diff ou urls.diff dans le répertoire concerné uqi contient les urls et les domaines à ajouter (mettez un + devant) ou à enlever (mettez un - devant) puis de lancer squidguard -u. Il faudra ensuite enlever les .diff crées. Exemple d'un domains.diff.
    	-yahoo.com
    	+playboy.com
    	+fillesnues.com
    	
  • Je n'arrive pas à télécharger les listes noires. Plusieurs raisons peuvent expliquer ce problème
    • Vous êtes protégés par un firewall (directement, ou par votre entreprise) qui ne sait pas gérer le ftp actif. Dans ce cas il faut utiliser la notion de ftp passif (passive ftp). Regardez la configuration de votre outil.
    • Vous êtes protégés par un firewall un peu trop "tatillon" sur la longueur des noms de fichiers. Firewall1 de Checkpoint est l'un d'entre eux. Dans ce cas reportez vous à l'url ftp://ftp.univ-tlse1.fr/blacklist qui contient les fichiers

Définitions

Redirecteurs : Un redirecteur est un programme qui "s'attache" à Squid et qui permet une réécriture des URLs avant de les passer au cache proprement dit. Cela permet de modifier les Urls
  • soit pour restreindre les accès (Urls à caractère pornographique, ludique, etc...)
  • soit pour faire disparaître les publicités (et donc accélérer considérablement le trafic, les bandeaux étant généralement régénérés à chaque appel)
  • soit pour diriger l'utilisateur vers un miroir local (par exemple les téléchargements de Netscape Navigator)
Pour les mettre en place, il suffit de rechercher dans le squid.conf la ligne redirector :
redirect_program /usr/local/squidGuard/bin/squidGuard

et de préciser le nombre de fils que l'on souhaite :
redirect_children 20

Attention, mettez en assez, pour que le processus principal ne soit pas bloqué en attente d'un process redirecteur libre. Inutile non plus d'en mettre trop (charge mémoire). Les redirecteurs font quasiment tous, au départ, de 800 Ko à 1600 Ko. De toute manière Squid en limite le nombre à 32.