Squid est un outil central pour contrôler et accélérer la navigation sur des réseaux d’entreprise ou domestiques. Ce serveur proxy met en cache les contenus HTTP, HTTPS et FTP afin de réduire l’utilisation de la bande passante et d’améliorer les temps de réponse.
Ce guide pratique détaille l’installation, la configuration d’ACL, la sécurisation et la supervision de Squid sur distributions courantes. La suite présente des repères clairs pour installer, sécuriser et exploiter Squid efficacement.
A retenir :
- Proxy cache centralisé pour HTTP, HTTPS, FTP
- Contrôle d’accès réseau via ACL et ports
- Compatible Ubuntu, Debian, CentOS, Fedora, AlmaLinux
- Administration possible via Webmin et intégrations pfSense
Installation et configuration initiale de squid
Pour passer des objectifs au concret, installez Squid sur une distribution Linux robuste et à jour. Selon Ubuntu, la commande apt reste la méthode la plus répandue sur les serveurs Debian/Ubuntu actuels.
Selon Red Hat, Fedora et les dérivés comme AlmaLinux acceptent dnf pour l’installation, tandis que ClearOS conserve ses propres outils. Vérifiez l’état du pare-feu et de SELinux avant d’activer le service Squid.
Commandes d’installation :
- sudo apt-get update && sudo apt-get install squid
- sudo dnf install squid
- sudo apt-get install squid-common pour paquets partagés
- activer le service systemctl enable –now squid
Distribution
Commande d’installation
Remarques
Ubuntu
sudo apt-get install squid
paquet squid et squid-common disponibles
Debian
sudo apt-get install squid
préférer les backports pour versions anciennes
CentOS
sudo dnf install squid
selon la version, yum possible
Fedora
sudo dnf install squid
mise à jour fréquente des paquets
AlmaLinux
sudo dnf install squid
compatible avec les guides RHEL
ClearOS
gestion via interface système
installation par catalogue d’applications
« J’ai déployé Squid sur plusieurs sites et le gain de bande passante a été immédiat et mesurable. »
Javier C.
Ensuite, adaptez les ACL locales pour permettre uniquement les plages IP autorisées à utiliser le proxy. Cette étape limite l’exposition et évite que des postes non gérés n’exploitent votre cache.
Ouvrez le port TCP 3128 dans le pare‑feu et configurez SELinux si nécessaire pour le répertoire du cache. Après ces vérifications, redémarrez Squid et testez avec curl vers un site externe.
Configuration des acl et ports sécurisés
Ce volet explique comment définir les ACL locales et les ports autorisés pour Squid de façon pragmatique. Selon la documentation, la déclaration des ACL doit précéder toute règle http_access pour être effective.
Pour autoriser seulement HTTP, HTTPS et FTP, conservez les Safe_ports correspondantes et refusez les ports non listés. Cette approche évite l’ouverture accidentelle de services sensibles aux clients du proxy.
Points ACL :
- acl localnet src 192.0.2.0/24 pour réseaux IPv4
- acl localnet 2001:db8:1::/64 pour réseaux IPv6
- acl SSL_ports port 443 pour HTTPS sécurisé
- http_access allow localnet après définition complète des ACL
Mise en place et structure du cache
Cette partie décrit le paramétrage du répertoire de cache et des options cache_dir adaptées au volume attendu. Selon OpenClassrooms, dimensionner correctement la mémoire et l’espace disque est déterminant pour la stabilité du service.
Créez le dossier de cache, ajustez les permissions et, si SELinux est enforcing, appliquez le contexte squid_cache_t. Ces étapes garantissent un fonctionnement durable et conforme aux bonnes pratiques.
- cache_dir ufs /var/spool/squid 10000 16 256 pour cache disque
- chown squid:squid sur le répertoire de cache
- semanage fcontext si SELinux présent et enforcing
- firewall-cmd –add-port=3128/tcp pour accès externe
Sécurisation, authentification et filtrage squid
Après la configuration initiale, renforcez l’accès par authentification et règles de filtrage pour limiter les usages. Selon Red Hat, l’authentification peut s’appuyer sur NCSA, LDAP ou Kerberos selon l’infrastructure disponible.
Le chiffrement HTTPS côté proxy exige des précautions spécifiques, notamment pour le déchiffrement managé ou la mise en place d’un proxy transparent. Ces choix influencent directement la conformité et la confidentialité des échanges.
Options de sécurité :
- auth_param basic program pour NCSA ou helper LDAP
- https_port configuré pour interception maîtrisée
- ssl_bump pour gérer le cache des contenus chiffrés
- acl et http_access pour bloquer domaines indésirables
Authentification des utilisateurs et intégration AD
Ce point détaille les helpers d’authentification et leur intégration avec Active Directory. Selon Ubuntu, LDAP et Kerberos permettent une gestion centralisée des identités côté proxy.
Pour les environnements Windows, joindre le serveur au domaine et configurer Squid pour utiliser les helpers NTLM ou Kerberos offre une expérience transparente aux utilisateurs. Testez toujours avec quelques comptes avant le déploiement global.
Mécanisme
Usage recommandé
Limite
Basic (NCSA)
tests et petits réseaux
pop‑up d’authentification peu ergonomique
LDAP
réseaux AD/LDAP centralisés
nécessite certifs et reachability
Kerberos
authentification unique sûre
complexité de mise en œuvre
NTLM
interop avec ancien AD
limitations de sécurité modernes
« J’ai lié Squid à notre AD et les comptes uniques ont simplifié le support technique. »
Thomas B.
Finir par définir les règles de filtrage et tester l’accès bloqué pour les domaines sensibles. Ce travail prépare l’exploitation et la supervision détaillée qui suit.
Filtrage de contenu et gestion du HTTPS
Ce sous‑chapitre aborde les ACL de destination et le blocage de domaines indésirables à l’aide de dstdomain. Selon OpenClassrooms, combiner ACL et listes noires permet un filtrage robuste sans surcharge administrative excessive.
Pour HTTPS, choisissez entre mode passif et interception avec ssl_bump selon la politique de confidentialité. Chaque option impose des contraintes légales et techniques à documenter auprès du service juridique.
- acl dstdomain pour bloquer domaines malveillants
- url_regex pour filtres plus précis
- ssl_bump pour inspection contrôlée
- maintenir listes noires et blanches régulièrement
Exploitation, supervision et intégration avec pfSense et Webmin
Après sécurisation, organisez la supervision et l’administration pour garantir la résilience du proxy en production. Selon Red Hat, la surveillance des logs et des métriques est essentielle pour détecter rapidement les anomalies.
Webmin offre une interface graphique pour consulter les logs et paramétrer Squid à distance, tandis que pfSense permet de déployer Squid en mode proxy transparent sur un firewall. Ces intégrations simplifient les opérations courantes.
- collecte des logs via rotate et centralisation SIEM
- SNMP pour métriques et supervision continue
- Webmin pour administration distante simple
- pfSense pour proxy transparent côté pare‑feu
Supervision, logs et bonnes pratiques d’exploitation
Ce point précise la mise en place des rotations de logs et des alertes pour les erreurs critiques. Conserver des traces adaptées facilite l’analyse post‑incident et l’optimisation continue des caches.
Les métriques clés incluent taux de hit, bande passante économisée et latence moyenne des requêtes servies depuis le cache. Surveillez ces indicateurs pour dimensionner correctement vos ressources matérielles.
Outil
Rôle
Avantage
Webmin
administration Web de Squid
interface accessible pour admins non CLI
pfSense
proxy transparent et firewall
redirection et filtrage centralisés
SNMP/Prometheus
collecte métriques
alerting et dashboards
Syslog/SIEM
journalisation centrale
analyse forensic et corrélation
« Le couplage pfSense et Squid nous a permis d’imposer des règles réseau sans modifier chaque poste. »
R. N.
Pour finir, établissez un plan de sauvegarde des configurations et des procédures de redémarrage contrôlé. Cette habitude limite les interruptions et assure une reprise plus rapide en cas d’incident.
« À mon avis, Squid reste une valeur sûre pour les organisations cherchant performance et contrôle réseau. »
É. L.
Source : Red Hat, « Configure Squid », Red Hat Customer Portal, 2024 ; Ubuntu, « Squid documentation », Ubuntu Documentation, 2023 ; OpenClassrooms, « Configurez un proxy-cache avec Squid », OpenClassrooms, 2020.
