ACL localport у Squid відповідає порту, на якому Squid прийняв з'єднання. Поєднайте його з відповідним ACL призначення, щоб кожен слухач дозволяв лише свій список.

Для конфігурації Squid 6 або 7 з наявними обмеженнями клієнтів і безпечних портів:

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

Замініть діапазон клієнтів з документації на реальних авторизованих клієнтів і підготуйте два файли списків доменів. Розмістіть парні правила allow після обов'язкових перевірок deny в установці та перед її фінальним deny. Збережіть обмеження для небезпечних портів, CONNECT і керування.

Імена ACL в одному правилі доступу об'єднуються через AND. Окремі правила allow дають альтернативи. Якщо прибрати умову слухача з правил призначення, будь-який список пройде через будь-який порт.

Перевірте й раніші правила: широке allow, що збігається першим, не дає оцінити ці пізніші обмеження. Перевірте дозволені й заборонені призначення через кожен слухач, щоб підтвердити межу.

localport — це не порт веб-сайту й не ефемерний порт джерела клієнта. Умова порту призначення використовує натомість ACL port.

Схожі статті