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

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

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

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

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

Я заметил две вещи.

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

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

Вот правило.

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

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