INTEGRITY Документация

IP-адреса Cloudflare

Когда вы добавляете домен в Cloudflare и проксировать свои DNS-записи, посетители, выполняющие поиск вашего домена, получают IP-адрес Cloudflare вместо реального IP-адреса вашего исходного сервера. Это скрывает IP-адрес исходного сервера и позволяет Cloudflare оптимизировать, кэшировать и защищать все запросы, прежде чем передавать их вам.

У Cloudflare есть несколько Диапазоны IP-адресов которые являются общими для всех проксируемых хостов. Вместе эти IP-адреса образуют основу инфраструктуры Cloudflare anycast-сеть : метод маршрутизации, при котором один и тот же IP-адрес анонсируется из дата-центров по всему миру, поэтому запрос каждого посетителя направляется в ближайший дата-центр.

Разрешите IP-адреса Cloudflare

Весь трафик к проксируемые DNS-записи проходит через Cloudflare, прежде чем достичь вашего исходного сервера. Это означает, что исходный сервер перестанет получать трафик с отдельных IP-адресов посетителей и вместо этого будет получать трафик от IP-адреса Cloudflare, которые являются общими для всех проксируемых хостов.

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

Приведённые выше рекомендации относятся к доменам, использующим HTTP прокси Cloudflare. Magic Transit работает иначе: вместо проксирования веб-запросов данный сервис защищает целые IP-сети на сетевом уровне. Cloudflare анонсирует диапазоны ваших IP-адресов (префиксы) через BGP, чтобы весь трафик, предназначенный для вашей сети, проходил через Cloudflare для проверки и фильтрации DDoS-атак перед пересылкой в вашу инфраструктуру.

Настройка исходного сервера

Добавьте IP-адреса Cloudflare в список разрешённых

Чтобы случайно не заблокировать IP-адреса Cloudflare, разрешите также IP-адреса Cloudflare на вашем исходном веб-сервере.

Вы можете явно разрешить эти IP-адреса с помощью файл .htaccess или с помощью iptables.

В следующем примере показано, как с помощью правила iptables разрешить диапазон IP-адресов Cloudflare. Замените $ip ниже одним из Диапазоны IP-адресов Cloudflare. Эту команду нужно будет выполнить один раз для каждого диапазона IP-адресов, указанного на этой странице.

# For IPv4 addresses
iptables -I INPUT -p tcp -m multiport --dports http,https -s $ip -j ACCEPT

# For IPv6 addresses
ip6tables -I INPUT -p tcp -m multiport --dports http,https -s $ip -j ACCEPT

За более конкретными указаниями обратитесь к своему хостинг-провайдеру или администратору сайта.

Если кто-то узнает IP-адрес вашего исходного сервера, например по историческим записям DNS или настройкам почтового сервера, он сможет отправлять трафик напрямую на ваш сервер в обход защиты Cloudflare. Чтобы этого не допустить, блокируйте весь трафик, который поступает не с IP-адресов Cloudflare и не с IP-адресов ваших доверенных партнёров, поставщиков или приложений.

Например, вы могли бы обновление iptables следующими командами:

# For IPv4 addresses
iptables -A INPUT -p tcp -m multiport --dports http,https -j DROP
# For IPv6 addresses
ip6tables -A INPUT -p tcp -m multiport --dports http,https -j DROP

За более конкретными указаниями обратитесь к своему хостинг-провайдеру или администратору сайта.

Обзор внешних инструментов

Чтобы случайно не заблокировать IP-адреса Cloudflare, проверьте свои внешние инструменты и убедитесь, что:

Дополнительная защита

Дополнительные рекомендации по защите исходного сервера см. в нашем руководстве по защита исходного сервера.

Настройка IP-адресов Cloudflare

Enterprise-клиенты, которые не хотят использовать IP-адреса Cloudflare (они являются общими для всех проксируемых хостов), имеют два возможных варианта:

Клиенты с планами Business и Enterprise также могут сократить количество IP-адресов Cloudflare, которые их домен делит с доменами других клиентов Cloudflare, загрузка пользовательского SSL-сертификата.

Обновления диапазонов IP-адресов

Диапазоны IP-адресов Cloudflare меняются нечасто. Когда это происходит, они добавляются в нашу список диапазонов IP-адресов перед переводом в продакшен. Вы также можете использовать Cloudflare API, чтобы обновлять конфигурацию программно.

Конфликт маршрутизации AWS VPC с диапазонами IP-адресов Cloudflare

Cloudflare использует 172.64.0.0/13 (172.64.0.0-172.71.255.255) как пространство публичных исходящих IP-адресов. Этот диапазон является вне частного адресного пространства RFC 1918. RFC 1918 охватывает диапазон 172.16.0.0/12 (172.16.0.0-172.31.255.255), который не пересекается с 172.64.0.0/13.

В таблицах маршрутов AWS VPC иногда присутствует маршрут, охватывающий 172.16.0.0/12 (или более широкий супернет, например 172.16.0.0/8) для подключения через Transit Gateway или VPN. Если этот маршрут указывает на внутреннюю цель, а не на Internet Gateway, он может перехватывать трафик Cloudflare из диапазона 172.64.x.x ещё до того, как тот достигнет Internet Gateway, что приводит к ошибкам подключения (521, 522) от дата-центров Cloudflare, использующих этот диапазон.

Чтобы решить проблему:

  1. Проверьте таблицу маршрутизации AWS VPC на наличие маршрута, охватывающего 172.x.x.x диапазон, который маршрутизируется на внутреннюю цель (Transit Gateway, VPN Gateway, NAT Gateway или VPC peering connection).
  2. Добавьте более точный маршрут с назначением 172.64.0.0/13 указывающих на ваш Internet Gateway. В маршрутизации AWS более конкретные маршруты имеют приоритет.
  3. Либо сузьте широкий маршрут точно до 172.16.0.0/12 (диапазон RFC 1918), который не включает 172.64.0.0/13.

Эта проблема не обнаруживается при аудите групп безопасности, поскольку группы безопасности оцениваются на уровне инстанса, а не на уровне маршрутизации.