Назад | Перейти на главную страницу

Squid - группировка нескольких ACL вместе

По умолчанию мы блокируем весь доступ в Интернет и разрешаем доступ для отдельных узлов и пунктов назначения. Окружающая среда сильно ограничена. Чтобы упростить наши правила Squid, мы ищем способ связать несколько ACL вместе. Мы могли бы взломать это, используя внешние ACL, но они не особенно быстрые, и мы, в конечном итоге, хотели бы использовать собственные функции squid, поскольку они предлагают самую быструю обработку ...

В идеале мы должны определить хост по имени в одном acl и связать его с IP. Затем создайте еще один acl, который сгруппирует группу хостов вместе и предоставит этой группе доступ к определенным доменам, которые мы хотим. Примерно так, как показано ниже (очевидно, это не настоящий рабочий пример).

acl MyServersName      src 1.1.1.2
acl MyOtherServersName src 1.1.1.3
acl MyServers src MyServersName MyOtherServersName 
acl InterenetWebsite dstdomain .internet-domain.com
http_access allow InterenetWebsite MyServers

Преимущество в том, что когда вы смотрите на этот ACL, вы сразу знаете, какие «имена хостов» находятся в конкретной группе и какой доступ им предоставлен. В противном случае это необходимо записать, как показано ниже. Потерянное преимущество состоит в том, что теперь мне нужно знать, какие хосты 1.1.1.2 и 1.1.1.3 не так просты, когда у нас в конфигурации сотни хостов.

acl MyServers src 1.1.1.2
acl MyServers src 1.1.1.3
acl InterenetWebsite dstdomain .internet-domain.com
http_access allow InterenetWebsite MyServers

Кроме того, мы знаем, что можем написать правила, указанные ниже, с помощью srcdomain. Я бы предпочел не включать внутренний DNS в критический путь для исходящего доступа в Интернет / прокси. Это, вероятно, лучше, чем внешний скрипт, если это окажется единственным способом добиться этого.

acl MyServers srcdomain MyServersName.domain.tld
acl MyServers srcdomain MyOtherServersName.domain.tld 
acl InterenetWebsite dstdomain .internet-domain.com
http_access allow InterenetWebsite MyServers