Mise a jour le 30/03/2021
Mise en place d’un proxy transparent Squid avec filtrage d’URL SquidGuard permettant de filtrer les accès à Internet de l’ensemble des utilisateurs connectés au réseau interne, de bloquer l’accès aux sites à caractère indésirables ou offensant.
Rapport de connexion LightSquid. Il s’agit d’un analyseur de logs qui affiche, sous forme de pages Web, l’utilisation du Proxy.
Support des bases de filtrage fournies par l’Université Toulouse 1 Capitole.
Important : Une autre possibilité de Filtrage Web est possible avec pfSense : Filtrage Web URL avec DNS 1.1.1.1 for Families de CloudFlare
Information : Avant de continuer, consultez ce guide : pfSense : Installation et Configuration
Installation des packages Squid SquidGuard et LightSquid
Sélectionner : System , Package Manager
Sélectionner « Available Packages » , dans la recherche taper « squid » puis cliquez sur « Search »
Installer les 3 packages un par un : Squid , SquidGuard , LightSquid
Installation des Packages
Les 3 Packages sont installés
Création du Certificat pour le filtrage en HTTPS
Sélectionner : System , Cert. Manager
Cliquer sur « Add »
Donner un « Nom« , sans espace. Exemple : « DemoCA » , laisser le reste par défaut et cliquez sur « Save »
Le Certificat est créé
Configuration de Squid
Sélectionner « Services » et « Squid Proxy Server »
Sélectionner « Local Cache » et paramétrer :
- « Hard Disk Cache Size » : 500 Mo, mais 3000 Mo est préférable en production
- « Memory Cache Size » : 50% de la RAM installée > 1000 MB
Cliquer sur « Save »
Onglet « General » : Activer « Enable Squid Proxy« , sélectionner l’interface réseau « LAN« et « Resolve DNS IPv4 First »
Activer « Transparent HTTP Proxy » et sélectionner l’interface réseau « LAN »
Note : Pour bypasser, autoriser un ordinateur a contourner le Proxy :
Ne pas transférer le trafic via le serveur proxy, mais le laisser passer directement à travers le pare-feu. S’applique uniquement au mode transparent.
- « Bypass Proxy for These Source IPs » : Autoriser des postes du réseau local par leurs IP, Nom d’Hote, Alias… Entrées séparées par des points-virgules (;)
- « Bypass Proxy for These Destination IPs » : Autoriser IP extérieure (Web)
Activer « HTTPS/SSL Interception SSL filtering » , sélectionner « Splice All« , l’interface « LAN » et le Certificat précédemment créé « DemoCA »
Activer « Enable Access Logging » et définir combien de jours les logs seront conservés : 365 (un an)
Sélectionner « fr » pour « Error language » et Activer « Suppress Squid Version »
Puis Cliquer sur « Save » pour enregistrer toutes les modifications effectuées dans Squid
Configuration de SquidGuard
Sélectionner « Services » et « SquidGuard Proxy Filter »
Activer SquidGuard « Enable »
Activer « Enable Log » et « Enable log rotation »
Activer « Enable Blacklist » et inserer dans Blacklist URL : http://dsi.ut-capitole.fr/blacklists/download/blacklists_for_pfsense.tar.gz
Puis cliquez sur « Save »
Onglet « Blacklist » : Cliquer sur « Download » pour télécharger les listes de filtrage
Onglet « Common ACL » , Cliquez, dans « Target Rules List » sur le » + »
Sélectionner les catégories a bloquer (ou a autoriser)
Important : Sélectionner »Allow » pour « Default access [all] »
Cocher « Do not allow IP addresses in URL » et « Use SafeSearch engine »
Puis cliquer « Save »
Les catégories de filtrages sont bien enregistrées dans « Target Rules »
TRES IMPORTANT : Pour valider les paramétrages, retournez sur l’onglet « General settings » et cliquez sur « Apply »
Remarque : Il est indispensable de cliquer sur « Apply » après chaque modification de la configuration.
Configuration de LightSquid
Sélectionner « Status » et « Squid Proxy Reports »
Décocher « LightSquid Web SSL » pour une connexion Web en HTTP et définir le mot de passe admin
Sélectionner la langue « French »
Sélectionner « SquidAuth » pour « IP Resolve Method » et « 60min » pour « Refresh Scheduler »
Puis cliquez « Save » et « Refresh Full »
Pour accéder a la Console Web LightSquid , Tapez http://192.168.2.1:7445 dans la barre d’adresse du navigateur et renseigner le login et mot de passe.
Redémarrer pfSense : Diagnostics – Reboot
Résultats sur poste client : En HTTP
En HTTPS
pfSense : Mise a Jour Automatique des BlackLists SquidGuard avec Cron
Pour configurer le Portail Captif, avec authentification de l’utilisateur, suivez ce tuto :
pfSense : Portail Captif avec Authentification Utilisateur
IMPORTANT : Pour compléter le système de filtrage d’URL utilisez pfBlockerNG pour bloquer la Publicité et le traçage :
pfSense : pfBlockerNG devel – Protection Contre La Publicité et le Tracage avec Filtrage Web