Отправка запросов Squid через родительский прокси
Заставьте Squid 6.13 использовать родителя для пересылаемых запросов известного клиента и избегайте нежелательного прямого обхода.
Объявить родителя в Squid само по себе не означает, что каждый пересылаемый запрос обязан его использовать. Если прямая связь нарушает вашу политику, задайте это требование явно и проверьте поведение при недоступности родителя.
Этот пример для Squid 6.13 задаёт одного родителя и запрещает прямую пересылку к источнику для одного клиентского источника:
cache_peer 192.0.2.20 parent 3128 0 no-query default name=upstream
acl routed_client src 198.51.100.27/32
never_direct allow routed_client
Оба адреса — заглушки. Для контролируемого upstream-теста, где разрешены публичные HTTP-родители, выберите адрес из списка HTTP-прокси. Сохраните отдельную политику http_access, допускающую только нужных клиентов. Правило маршрута не даёт клиенту право пользоваться прокси.
Проверьте существующие правила маршрутизации
no-query отключает ICP-запросы к этому узлу. Ноль — порт запросов узла, а не его HTTP-слушатель. Слушатель для клиентов и его правила доступа остаются отдельными.
Перед добавлением блока проверьте имеющиеся настройки always_direct и другие варианты выбора узлов. Запрет совпадения в always_direct сам по себе не требует родителя. Явное правило never-direct выражает это требование для выбранного клиента.
Это управляет транзакциями, которым нужна пересылка. Пригодная запись локального кеша может быть отдана без связи с родителем, поэтому отсутствие нового родительского соединения не обязательно нарушает маршрут.
Проверьте маршрут и поведение при сбое
Используйте контролируемое назначение и сопоставляйте сведения об иерархии из журнала доступа с наблюдениями назначения. Один итоговый HTTP-статус не скажет, использовал Squid родителя или прямой путь.
Во время обслуживания сделайте родителя недоступным и повторите тот же некешированный запрос. Если политика запрещает прямую пересылку, транзакция должна завершиться неудачей, а не попасть к источнику другим путём. Делайте это только со службами под вашим контролем и восстановите нужную конфигурацию после теста.