Ceci est une ancienne révision du document !
Installation et paramétrage d'un serveur mandataire HTTP/HTTPS avec Squid sur Debian 12 (bookworm).
Sous Debian, attention de bien installer le paquet squid-openssl car c'est cette version de Squid qui supporte le bumping-ssl nécessaire pour analyser le trafic HTTPS.
apt install -y squid-openssl
Pour supporter le bumping-SSL (ou interception TLS) Squid doit être compilé avec les options --with-openssl et --enable-ssl-crtd
La commande ci-dessous met en couleur les options de compilation lorsqu'elles sont trouvées :
squid -v | grep --color -E '(--with-openssl|--enable-ssl-crtd)'
Le certificat et la clé privée sont des fichiers sensibles : attention a bien restreindre les droits d'accès.
# Génère le certificat valable 10 ans et la clé de l'autorité de certification openssl req -new -newkey rsa:4096 -sha256 -days 3650 -nodes -x509 \ -extensions v3_ca -keyout certificat.pem -out certificat.pem
On configure le service via le fichier /etc/squid/squid.conf. Ce fichier commente largement les options actives par défaut (plus de 9000 lignes).
Pour obtenir une vue synthétique des directives actives de ce fichier :
cd /etc/squid/ grep --invert-match -e '^$' -e '^#' squid.conf
squid -k parse
Vérifier l'état du service et si nécessaire activer le service au démarrage :
systemclt status squid.service systemctl enable squid.service --now
Si le pare-feu firewalld est actif, penser à autoriser le trafic entrant sur le port 3128
# Si le port par défaut n'est pas modifié firewall-cmd --info-service=squid firewall-cmd --permanent --zone=internal --add-service=squid firewall-cmd --reload