Outils pour utilisateurs

Outils du site


netadmin:filtrage-web-squidguard

Filtrage du web avec SquidGuard

Squidguard est un plugin de filtrage d'URL à associer au programme squid. Il faut installer et paramétrer le proxy squid en premier lieu. La procédure est détaillé dans le wiki installer-squid3.

Filtrage

Le module squidguard permet de filtrer l’accès au contenu web.

$ sudo apt-get install squidguard

A l'installation le fichier de configuration consulte le dossier /var/lib/squidguard/db

Modifier la configuration de squid pour qu'il utilise squidguard:

url_rewrite_program /usr/bin/squidGuard -c /etc/squidguard/squidGuard.conf
url_rewrite_children 10 startup=0 idle=1 concurrency=0

Modifier le fichier de configuration /etc/squidguard/squidGuard.conf.

Indiquer le répertoire conteneur des listes:



Déclarer les sources



Déclarer les destinations



Déclarer les ACL mettant en relation les sources et des destinations autorisées:



Lorsque une ressource destination non autorisée est demandée, la directive redirect est utilisée par squiGuard. On peut alors rediriger la requête vers une page statique ou dynamique en spécifiant des variables. Des fichiers cgi d'exemples sont disponibles sous /usr/share/doc/squidguard/examples. Pour servir ces fichiers cgi, un serveur web doit être installé/fonctionnel. Pour ces modestes besoins lighttpd a été installé.

Ci dessous les variables disponibles lors de la redirection:

%a Adresse IP du client.
%i Identifiant utilsateur (RFC931, LDAP or mySQL) ou “unknown”
%n nom de domaine du client ou “unknown”
%p URI de la requête
%s source group du client ou “unknown”
%t target group: la destination évaluée or “unknown”.
%u URL

Script de mise à jour des listes

Le script:

  • Récupère les liste maintenues par l'académie sous forme d'archive.
  • Décompresse l'archive et donne les droit a l'utilisateur proxy.
  • Lance la construction des bases Berkeley DB

Configuration des clients

Les fichiers pac, à placer sur un serveur web permettent de configurer automatiquement le proxy sur le navigateur demandant l'URL (javascript).

function FindProxyForURL(url, host) {
        if (
            isInNet(myIpAddress(), "127.0.0.0", "255.0.0.0") ||
            isInNet(myIpAddress(), "192.168.0.0", "255.255.255.0")) {
            return "DIRECT";
        } else {
            if (shExpMatch(url, "http:*"))
                return "PROXY 192.168.1.28:3128" ;
            if (shExpMatch(url, "https:*"))
                return "PROXY 192.168.1.28:3128" ;
            return "DIRECT";
        }
    }

Le mime-type associé au fichiers .pac doit être modifié si nécessaire dans la configuration du serveur web:

application/x-ns-proxy-autoconfig .pac;

Références

netadmin/filtrage-web-squidguard.txt · Dernière modification : 2024/07/07 10:17 de yoann