Конфигурација на први поглед изгледа уверљиво:

acl team_a myportname 3128 src 198.51.100.0/24

Али дефиниција ACL-а има само један тип. Овде је myportname тип; додавање речи src не покреће другу проверу. Преостале речи припадају листи вредности првог типа. Тај ред не изражава „овај listener и ова клијентска мрежа“.

Дајте сваком услову име

Користите име за сокет за слушање и одвојен ACL извора. Овај исечак користи документационе адресе, које треба заменити адресама примереним за постављање:

http_port 192.0.2.10:3128 name=team_a_port
acl team_a_port myportname team_a_port
acl team_a_clients src 198.51.100.0/24

http_access allow team_a_port team_a_clients
http_access deny all

Поставите правило дозволе после постојећих заштита за несигурне одредишне портове, ограничене CONNECT циљеве и административни приступ. Исечак илуструје услов клијента/listener-а; он не замењује те заштите.

Услови на једном реду http_access комбинују се са AND. Два одвојена реда дозволе пропустила би било који услов независно, што би знатно променило политику. Више вредности унутар једног ACL-а обично даје алтернативе за ту једину проверу.

Изаберите излаз одвојено

Одговарајући listener може користити и tcp_outgoing_address да изабере локалну изворну адресу. То је избор руте, а не дозвола за коришћење проксија. Правило одлазне адресе не може пропустити одбијени захтев кроз http_access.

Ако конфигурација са више адреса престане да ради после надоградње, раздвојте доказе: грешка при парсирању упућује на синтаксу конфигурације; одбијање приступа упућује на подударање правила; дозвољени захтев са погрешним излазом упућује на избор излаза или каснији NAT. Промена све три ствари одједном чини малу ACL грешку много тежом за проналажење.

Повезани чланци