Защита сайта: как видеть реальные IP посетителей
Когда сайт работает за защитой, запросы приходят на сервер с адресов серверов очистки. Без дополнительной настройки в логах и в CMS будут видны именно они, а не адреса посетителей.
Чтобы видеть реальные IP-адреса, настройте разбор заголовка X-Forwarded-For для сетей из списка, который вы использовали при настройке файрвола. Ниже — примеры для популярных веб-серверов.
Веб-сервер Apache до версии 2.4
Откройте файл /etc/apache2/mods-enabled/rpaf.conf и добавьте строки:
<IfModule rpaf_module>
RPAFenable On
# When enabled, take the incoming X-Host header
# and update the virtualhost settings accordingly:
RPAFsethostname On
# Define which IP's are your frontend proxies that sends
# the correct X-Forwarded-For headers:
RPAFproxy_ips 77.220.207.0/24 45.10.240.0/24 45.10.241.0/24 45.10.242.0/24 186.2.160.0/24 186.2.164.0/24 186.2.167.0/24 186.2.168.0/24
# Change the header name to parse from the default
# X-Forwarded-For to something of your choice:
# RPAFheader DDG-Connecting-IP
</IfModule>
Затем перезапустите Apache: systemctl restart apache2.
Веб-сервер Apache версии 2.4 и выше
- Отключите модуль
mod_rpafкомандойa2dismod rpaf. - Включите модуль
mod_remoteipкомандойa2enmod remoteip. - Создайте или откройте файл
/etc/apache2/conf-available/remoteip.confи добавьте строки:
<IfModule remoteip_module>
# Take the incoming X-Host header and
# update the virtualhost settings accordingly:
RemoteIPHeader X-Forwarded-For
# Define which IP's are your frontend proxies that sends
# the correct X-Forwarded-For headers:
RemoteIPTrustedProxy 77.220.207.0/24 45.10.240.0/24 45.10.241.0/24 45.10.242.0/24 186.2.160.0/24 186.2.164.0/24 186.2.167.0/24 186.2.168.0/24
</IfModule>
- Подключите конфигурацию командой
a2enconf remoteip. - Перезапустите Apache:
systemctl restart apache2.
Веб-сервер Nginx
Добавьте строки в секцию http файла /etc/nginx/nginx.conf:
set_real_ip_from 77.220.207.0/24;
set_real_ip_from 45.10.240.0/24;
set_real_ip_from 45.10.241.0/24;
set_real_ip_from 45.10.242.0/24;
set_real_ip_from 186.2.160.0/24;
set_real_ip_from 186.2.164.0/24;
set_real_ip_from 186.2.167.0/24;
set_real_ip_from 186.2.168.0/24;
real_ip_header X-Forwarded-For;
Проверьте конфигурацию и перезагрузите Nginx: nginx -t && systemctl reload nginx.
Содержимое X-Forwarded-For можно подделать, но последним адресом в цепочке всегда будет реальный IP, с которого запрос пришёл в сеть защиты. Этот же адрес передаётся в заголовке DDG-Connecting-IP.
Заголовок
X-Real-IPпередаётся без изменений и может содержать ложную информацию. Не используйте его для функций, связанных с безопасностью.
Похожее
Все статьи
Защита сайта от DDoS: как работает услуга
Услуга «Защита сайта» принимает весь трафик сайта на себя: запросы сначала проходят через сервер очистки, и только чистые попадают на ваш сервер. Разберём, что это даёт и как устроена фильтрация. Зачем нужна «Защита сайта» Сайт выдерживает атаку. Даже если на…
Защита сайта: как заказать услугу
Защита сайта заказывается в личном кабинете UFO.Hosting и подключается за несколько минут. Ниже — порядок действий от заказа до подключения. Как заказать услугу «Защита сайта» Войдите в личный кабинет и выполните шаги: В левом меню откройте раздел «Товары/Услуги» и выберите…