Отображение реального IP посетителей сайта

При подключении любой proxy защиты со стороны вашего веб сервера будут отображаться IP адреса защищающего сервиса вместо адресов ваших реальных посетителей.
Исправить это легко - достаточно добавить в конфигурацию вашего веб сервера поддержку извлечения оригинального IP адреса из HTTP заголовков принимаемых запросов.

Актуальный список наших IP подсетей с которых поступают очищенные запросы доступен здесь https://cloud-shield.ru/ips

Настройка для Nginx

Воспользуйтесь модулем ngx_http_realip_module.

В nginx.conf следует добавить:

# Cloud-Shield IPv4 address ranges
set_real_ip_from 185.143.174.152/29;
set_real_ip_from 185.108.18.192/28;
set_real_ip_from 51.89.32.16/30;
set_real_ip_from 51.89.32.20/32;
set_real_ip_from 135.125.128.224/28;
set_real_ip_from 51.75.157.80/28;
real_ip_header    CS-Connecting-IP;

Сохраните и затем перезапустите веб-сервер
systemctl restart nginx.service

Настройка для Apache

Настоятельно рекомендуем установить nginx в качестве proxy перед apache с целью снижения нагрузки и повышения отказоустойчивости вашего ресурса.

Временное решение:
Активируйте модуль mod_remoteip командой
a2enmod remoteip
Создайте файл конфигурации /etc/apache2/conf.d/realip.conf со следующим содержанием:

<IfModule !mod_remoteip.c>
   LoadModule remoteip_module modules/mod_remoteip.so
</IfModule>

<IfModule mod_remoteip.c>
   # Cloud-Shield header
   RemoteIPHeader CS-Connecting-IP
   # Cloud-Shield IPv4 address ranges
   RemoteIPTrustedProxy 185.143.174.152/29
   RemoteIPTrustedProxy 185.108.18.192/28
   RemoteIPTrustedProxy 51.89.32.16/30
   RemoteIPTrustedProxy 51.89.32.20/32
   RemoteIPTrustedProxy 135.125.128.224/28
   RemoteIPTrustedProxy 51.75.157.80/28
</IfModule>

Сохраните и затем перезапустите веб-сервер
systemctl restart apache2.service


Если у вас шаред (виртуальный) хостинг

В случаях, когда у вас нет возможности изменить конфигурацию веб-сервера, вы можете извлекать оригинальный IP из HTTP заголовков непосредственно в ваших скриптах или CMS.
В популярных движках обычно имеется возможность задать имя заголовка, в котором приходит реальный IP адрес посетителя.
Укажите заголовок: CS-Connecting-IP

PHP пример получения оригинального IP:

if (isset($_SERVER["HTTP_CS_CONNECTING_IP"])) {
  $_SERVER['REMOTE_ADDR'] = $_SERVER["HTTP_CS_CONNECTING_IP"];
}
  • 17 Пользователи нашли это полезным
Помог ли вам данный ответ?

Связанные статьи

Как работает удаленная защита сайта

Подключить удаленную защиту сайта очень просто, вся процедура займет 10 минут.Владельцу сайта...

Первоначальная настройка при reverse proxy защите

При заказе защиты одним из обязательных полей является upstream IP - публичный адрес вашего веб...

Частые ошибки и вопросы при PROXY защите сайта

Ошибка SSL/TLS сертификата или ERR_CERT_AUTHORITY_INVALID Описание: После подключения прокси...

Удаленный Firewall

Достаточно часто владелец сайта самостоятельно способен определить, является посетитель сайта...

Бесплатная защита от парсинга сайта

Наши клиенты нашли интересное применение режиму защиты "I'm under attack" в положении JS проверки...