Отдельные учётные данные для родительского прокси Squid
Настройте Squid 6.13 отдельный вход в вышестоящий прокси, не предполагая передачу клиентского пароля другому оператору.
Учётные данные пользователя вашего Squid и данные входа Squid в родительский прокси различаются. Родитель может принадлежать другому оператору или использовать другую базу учётных записей. Не считайте, что принятие пароля клиента означает необходимость передать его выше.
Squid 6.13 позволяет добавить статические данные входа в определение родителя:
cache_peer 192.0.2.20 parent 3128 0 no-query default name=upstream login=parentuser:ExampleOnly
Адрес и пароль выше — примеры из документации. Добавьте данные входа к существующему определению родителя, не создавая случайно второй peer. Сохраните отдельную политику маршрутизации, определяющую, какие запросы обязаны использовать этого родителя.
Разделяйте области действия учётных записей
Нижестоящие настройки auth_param проверяют клиентов вашего экземпляра Squid. Параметр login у peer задаёт данные для другого перехода. Изменение одного не обновляет другое автоматически.
Соблюдайте документированные требования аутентификации родителя. Эта строка не является полной конфигурацией для всех схем аутентификации, ориентированных на соединение. Если родитель ожидает NTLM или Negotiate, проверьте поддерживаемую схему peer, а не меняйте многократно пароль в этом поле.
В Squid есть и параметры передачи учётных данных, например PASS и PASSTHRU. Они отличаются по смыслу от выделенной вышестоящей учётной записи и могут раскрыть peer информацию аутентификации клиента. Не выбирайте их как короткий путь, если задуманы отдельные учётные записи.
Защитите конфигурацию и проверяйте нужный переход
Статический секрет хранится в конфигурации. Ограничьте доступ к файлам и резервным копиям и удалите секреты из вывода парсера или отладки перед публикацией. У параметра свои правила экранирования: документация разрешает URL-экранирование и требует удваивать буквальный знак процента.
Если клиенты проходят аутентификацию, но пересылаемые запросы по-прежнему не проходят у родителя, изучите этот вышестоящий обмен и учётную запись. Разделяйте и защиту транспорта клиент–Squid и Squid–родитель: шифрование первого соединения не защищает второе автоматически.