L'ACL localport de Squid correspond au port sur lequel Squid a reçu la connexion. Combinez-la avec l'ACL de destination appropriée pour que chaque listener n'autorise que sa propre liste.

Pour une configuration Squid 6 ou 7 avec des restrictions existantes de clients et de ports sûrs :

http_port 3128
http_port 3129

acl approved_clients src 192.0.2.0/24
acl main_listener localport 3128
acl alternate_listener localport 3129
acl main_sites dstdomain "/etc/squid/main-sites.txt"
acl alternate_sites dstdomain "/etc/squid/alternate-sites.txt"

http_access allow approved_clients main_listener main_sites
http_access allow approved_clients alternate_listener alternate_sites
http_access deny all

Remplacez la plage de clients de la documentation par les clients réellement autorisés et préparez les deux fichiers de liste de domaines. Placez les règles allow appariées après les contrôles deny obligatoires de l'installation et avant son deny final. Conservez ses restrictions de ports non sûrs, CONNECT et administration.

Les noms d'ACL d'une même règle d'accès sont combinés avec AND. Des règles allow distinctes offrent des alternatives. Omettre la condition de listener dans les règles de destination laisserait passer n'importe quelle liste par n'importe quel port.

Vérifiez aussi les règles précédentes : un allow large qui correspond en premier empêche l'évaluation de ces restrictions plus tardives. Testez des destinations autorisées et refusées via chaque listener pour vérifier la limite.

localport n'est ni le port du site web ni le port source éphémère du client. Une condition de port de destination utilise plutôt l'ACL port.

Articles similaires