IP-адрес не передается со Squid в качестве обратного прокси

Я использую Squid в качестве обратного прокси-сервера для размещения нескольких веб-серверов на одном интернет-IP. Он работает нормально и делал это в течение последних нескольких месяцев. Я только что заметил, что каждый запрос, отправленный на мои серверы, регистрируется как поступающий с IP-адреса серверов squid.

Есть ли способ заставить squid передавать исходный IP-адрес веб-серверам?

2 ответа

Squid использует заголовок X-Forwarded-For для передачи IP-адреса клиента через обратный прокси-сервер. Вам нужно будет настроить forwarded_for on для Squid, и скажите вашим бэкэнд-серверам, чтобы они записывали новый заголовок.

Есть две вещи, которые я заметил.

Вам необходимо включить forward_for и если вы iptables MASQUERADE Правило для входящего трафика из вашего интерфейса, вам может потребоваться удалить его.

В моем случае у меня есть правило для исходящих, которое вызывает то же самое, я просто удалил это правило маскарада, и все работало для меня

Вот правило.

iptables --table nat --append POSTROUTING --out-interface $ETHERNET_INTERNET -j MASQUERADE

Я просто удаляю вышеуказанное правило.

Другие вопросы по тегам