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

Сервер Apache2 (за Zyxel USG 100 NAT / Firewall) с виртуальным хостом не регистрирует IP-адреса реальных клиентов

Решено

Чтобы разрешить NAT Zyxel USG 100 пересылать нетронутые пакеты на мой веб-сервер, я отредактировал маршрут политики Zyxel.

Zyxel -> Configuration -> Network ->Routing -> Policy Route

Я просто меняю параметр «Преобразование адресов» с «исходящий интерфейс» на «нет»

Теперь apache регистрирует истинные IP-адреса внешних клиентов.


Решено

Доброе утро друзья

сегодня я столкнулся с проблемой, чтобы правильно регистрировать запросы клиентов на моем корпоративном веб-сервере Apache2

Схема сети:

////////////    _                      WAN1   11.11.11.12
| INTERNET /  _/  ===> CISCO Router =======> first public ip ==> to corporate LAN
////////////                      || 
                                  || 
                                  || 
                                  || zyxel eth0 ip: 11.11.11.11
                                  || label: WAN2
                                  \/
              ZYXEL ROUTER   ___ eth0 _________________________________________________
                             |   ZYXEL                                                |
                             |   Gateway
                             |    ||                                                  |
                             |    ||                                                  |
                             |   |\/| FIREWALL (accept request from eth0/WAN2 on port |                  
                             |    ||            443/80 and forward them to LAN1)      |
                             |    ||                                                  |
                             |   |\/| NAT (forward request on 11.11.11.11:80 to       |
                             |    ||        web server on 192.168.1.10:80)            |
                             |____||__________________________________________________|
                                  *zyxel eth1 ip: 192.168.1.1, label: lan1*
                                  ||
                                  \|____________________
                                   |                    \   mysqlserver 192.168.1.20
                           ________|                    ++
  webserver 192.168.1.10  / 
                         ++

Когда кто-то (из Интернета или моей частной локальной сети) запрашивает страницу для моего общедоступного IP-адреса 11.11.11.11 на порту 80, мой веб-сервер отвечает на это правильно. Но когда я хочу проверить access.log своего веб-сервера, я вижу только мой IP-адрес маршрутизатора Zyxel 192.168.1.1.

Я полагаю, что есть проблема с NAT, кажется, что Zyxel заменяет свой IP-адрес SRC IP-пакетов, приходящих на мой веб-сервер.

Что мне нужно сделать, чтобы получать правильно зарегистрированные веб-запросы с IP-адресами общедоступных клиентов? Маршрутизатор - Zyxel USG 100

это мои конфигурации журнала Apache2 (apache2.log)

LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined
LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %O" common
LogFormat "%{Referer}i -> %U" referer
LogFormat "%{User-agent}i" agent

это моя конфигурация журнала vhost

CustomLog /var/log/apache2/xyz.com/access.log combined

Спасибо

% {X-ClientSide} i может быть тем, что вы хотите добавить в свой формат журнала, чтобы получить удаленный адрес клиента.