6. Squid - gpk659/WoodyToys-Projet-VPS GitHub Wiki

Squid

Squid est un serveur mandataire, en anglais un proxy, entièrement libre et très performant. Squid est capable de gérer les protocoles FTP, HTTP, HTTPS et Gopher. Il est généralement utilisé dans certaines entreprises et universités pour des fonctions de filtrage d'URL ou en tant que tampon. Les pages Internet sont stockées localement ce qui évite d'aller les recharger plusieurs fois et permet d'économiser la bande passante Internet.

Installation

Nous avons utilisé l'image docker suivante : sameersbn/squid

On récupère l'image suivante via la commande :

sudo docker pull sameersbn/squid

On lance l'image suivante via la commande :

sudo  docker run --name squid -d --restart=always \
--publish 3128:3128 \
--volume /mnt/docker/squid:/etc/squid3 \
sameersbn/squid:3.3.8-23

Configuration

Ne pas inclure l'adresse IP dans les requêtes HTTP

Pour ne pas inclure l'adresse IP ou le nom du système dans les requêtes HTTP, dans la partie TAG: forwarded_for, décommenter et modifier la ligne comme suit :

forwarded_for off

Messages d'erreur en français

Dans la partie TAG: error_directory, décommenter et modifier la ligne comme suit :

error_directory /usr/share/squid3/errors/French

Modification de la mise en tampon de Squid

Mise en tampon de page web Par défaut, le tampon de Squid est activé, ce qui permet d'accélérer le chargement de certaines pages. La taille par défaut est de 100 Mo (situé dans /var/spool/squid).

Pour changer sa taille, modifiez le fichier /etc/squid/squid.conf Trouvez la ligne:

# cache_dir ufs /var/spool/squid 100 16 256

Et décommentez-la. Vous pouvez changer la valeur 100 par ce que vous voulez (par exemple 200 pour 200 Mo) : cache_dir ufs /var/spool/squid 200 16 256

Taille maximum de mémoire vive utilisée pour stocker le tampon :

cache_mem 16 MB
# Taille maximum des objets stockés dans le tampon :

maximum_object_size 15 MB

ℹ️ Tampon DNS

Par defaut, Squid est configuré pour garder 6 heures le tampon DNS dont il a pu résoudre le nom et 5 minutes celui dont >il n'a pas pu résoudre le nom DNS.

Modification du temps de tampon pour la résolution de nom "positive"; ex :

positive_dns_ttl 8 hours

Modification du temps de tampon pour la résolution de nom "négative"; ex :

negative_ttl 4 minutes

Rendre Squid transparent

Pour que Squid fonctionne comme un serveur mandataire transparent, il faut ajouter à la fin du port de Squid :

http_port 3128 transparent

Bloquer les sites dans un ficher

Ajouter ces lignes, dans le fichier: squid.conf

acl liste_url dstdomain "/etc/squid3/liste-sites.txt"
http_access deny liste_url

Créer le fichier: "/etc/squid3/liste-sites.txt"

.youtube.com
.facebook.com

ℹ️ Squid