Squid

De Wiki doc

Révision datée du 19 novembre 2022 à 17:33 par Ycharbi (discussion | contributions) (Page créée avec « Category:Services_mandataire [http://www.squid-cache.org/ Squid] est un [https://fr.wikipedia.org/wiki/Proxy#Proxy_r%C3%A9seau serveur mandataire] permettant de relayer les requêtes ''HTTP'', ''HTTPS'', ''FTP'' et ''Gopher''. Il est généralement utilisé comme point de sortie unique pour les requêtes ''WEB'' des clients d'un réseau local vers le ''WAN''. Son but principale est de permettre un filtrage des accès ainsi qu'une journalisation du trafic en plus... »)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)


Squid est un serveur mandataire permettant de relayer les requêtes HTTP, HTTPS, FTP et Gopher. Il est généralement utilisé comme point de sortie unique pour les requêtes WEB des clients d'un réseau local vers le WAN. Son but principale est de permettre un filtrage des accès ainsi qu'une journalisation du trafic en plus d'offrir un service cache.

INFORMATION

Documentation réalisée avec Debian Bullseye (11) et Squid 4.13-10.

Installation

apt install --no-install-recommends squid

Configuration

La configuration proposée dans ce document permet d'offrir un service de mandataire à des clients situés dans un LAN restreint par pare-feux. Ces derniers sont obligés de passer par le mandataire pour accéder au WEB. Seul quelques domaines sont autorisés.

cat < '_EOF_' > /etc/squid/squid.conf
# Nom de domaine de Squid. N'a aucune utilité mais enlève un message dans le journal
visible_hostname squid.ycharbi.fr

# Liste de réseaux. Ce seront les réseaux autorisés à utilisé les services de Squid
acl rzo_locaux src 192.168.1.0/24
acl rzo_locaux src 192.168.5.0/24
acl rzo_locaux src 192.168.8.0/24

# Liste de ports. Ce seront les ports autorisés
acl liste_ports port 80 # http
acl liste_ports port 21 # ftp
acl liste_ports port 443 # https
acl liste_ports port 70 # gopher
acl liste_ports port 210 # wais
acl liste_ports port 1025-65535 # ports non enregistrés
acl liste_ports port 280 # http-mgmt
acl liste_ports port 488 # gss-http
acl liste_ports port 591 # filemaker
acl liste_ports port 777 # multiling http
acl liste_ports port 8096 # jellyfin

# N'autoriser que les informations des listes précédentes
http_access deny !rzo_locaux
http_access deny !liste_ports

# Liste d'accès contenant les domaines pouvant être utilisés par Jellyfin
acl liste_blanche_jellyfin dstdomain .ycharbi.fr www.omdbapi.com api.themoviedb.org

# Autorisation de la liste de domaines de Jellyfin
http_access allow liste_blanche_jellyfin
# Interdiction de tous les autres domaines
http_access deny all
# Port d'écoute de Squid
http_port 3128

# Emplacement du cache
coredump_dir /var/spool/squid
_EOF_

Redémarrage du service

systemctl restart squid.service

Les journaux d'accès sont visibles de la façon suivante

tail -f /var/log/squid/access.log

Source de la section