При использовании защиты от сервиса DDOS GUARD к вашему серверу будут поступать с измененными source IP на адреса узлов фильтрации. Реальные же адреса посетителей передаются в заголовке X-Forwarded-For.
Если вы хотите получать реальные IP пользователей, настройте заголовок X-Forwarded-For на вашем сервере.
Для этого потребуется подключиться к серверу по ssh. Информация как это сделать доступна в статье: Как подключиться к хостинг серверу по ssh
В статье мы приведем несколько примеров в зависимости от используемого веб-сервера.
- Пример настройки для веб сервера Nginx
- Пример настройки для веб-сервера Apache до версии 2.4
- Пример настройки для веб-сервер Apache версии 2.4 и выше
Пример настройки для веб сервера Nginx
Если в качестве веб-сервера вы используете Nginx, предлагаем добавить фрагмент кода, приведенный ниже, в его конфигурацию. Благодаря этому веб-сервер сможет распознавать заголовок X-Forwarded-For и отправлять приложению реальный IP-адрес посетителя.
Добавьте следующие строки в /etc/nginx/nginx.conf в секцию http:
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;
set_real_ip_from 185.211.244.0/24;
set_real_ip_from 185.178.209.197;
set_real_ip_from 190.115.30.44;
Пример настройки для веб-сервер Apache до версии 2.4
Если в качестве веб-сервера вы используете 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 185.211.244.0/24 185.178.209.197 190.115.30.44
# Change the header name to parse from the default
# X-Forwarded-For to something of your choice:
# RPAFheader X-Real-IP
</IfModule>
Данная конфигурация возможна при использовании модуля: https://github.com/gnif/mod_rpaf
При использовании стандартного mod_rpaf корректная работа будет обеспечена только в случае перечисления всех адресов в RPAFproxy_ips.
Пример настройки для веб-сервер Apache версии 2.4 и выше
Если в качестве веб-сервера вы используете Apache версии 2.4 и выше, то необходимо:
1. Деактивировать mod_rpaf командой a2dismod rpaf
2. Активировать mod_remoteip командой a2enmod mod_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 185.211.244.0/24 185.178.209.197 190.115.30.44
</IfModule>
3. Перезагрузите Apache.