Kombinovanie myportname a src v Squide pomocou samostatných ACL
Skombinujte pomenovaný Squid listener s povolenou klientskou sieťou bez vloženia dvoch typov ACL do jednej definície.
Konfigurácia na prvý pohľad vyzerá vierohodne:
acl team_a myportname 3128 src 198.51.100.0/24
No definícia ACL má jediný typ. Tu je myportname typom; pridanie slova src nezačína druhý test. Zvyšné slová patria do zoznamu hodnôt prvého typu. Ten riadok nevyjadruje „tento listener a táto klientska sieť“.
Dajte každej podmienke meno
Použite meno pre počúvajúci socket a samostatný ACL zdroja. Tento úryvok používa dokumentačné adresy, ktoré treba nahradiť adresami vhodnými pre nasadenie:
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
Pravidlo povolenia umiestnite za existujúce ochrany pre nebezpečné cieľové porty, obmedzené ciele CONNECT a administratívny prístup. Úryvok ilustruje podmienku klient/listener; nenahrádza tieto ochrany.
Podmienky na jednom riadku http_access sa kombinujú pomocou AND. Dva samostatné riadky povolenia by prepustili ktorúkoľvek podmienku nezávisle, čo by politiku výrazne zmenilo. Viac hodnôt v jednom ACL zvyčajne poskytuje alternatívy pre tento jediný test.
Zvoľte výstup oddelene
Zodpovedajúci listener možno použiť aj cez tcp_outgoing_address na výber lokálnej zdrojovej adresy. To je voľba smerovania, nie povolenie používať proxy. Pravidlo odchádzajúcej adresy nemôže prepustiť zamietnutú požiadavku cez http_access.
Ak viacadresová konfigurácia prestane po aktualizácii fungovať, oddeľte dôkazy: chyba analýzy ukazuje na syntax konfigurácie; odmietnutie prístupu na zhodu pravidiel; povolená požiadavka s nesprávnym výstupom na voľbu výstupu alebo neskorší NAT. Zmena všetkých troch naraz robí malú chybu ACL oveľa ťažšie nájditeľnou.