Cloudflare firewall rules настройка

Обновлено: 03.07.2024

В этом руководстве разберёмся зачем нужен Cloudflare, как подключить его к сайту и как пользоваться основными функциями сервиса: управлять DNS-записями, установить SSL-сертификат, защититься от DDoS-атак, показывать всем посетителям CAPTCHA или заблокировать доступ к сайту на основе параметров вроде IP-адреса или геолокации.

Но сначала кратко введём в курс дела, если вы не знаете, как работает Cloudflare и что это вообще такое.

Что внутри

Что такое Cloudflare

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

Как работает CloudFlare

Как мы уже выяснили, две основных функции Cloudflare — это ускорить время загрузки сайта и защитить его от DDoS-атак. Кратко расскажем, как эти функции реализованы.

Ускорение загрузки сайта происходит за счёт технологии CDN. Если опустить технические подробности, то у Cloudflare есть серверы по всему миру, на которые компания кэширует статические файлы с вашего сайта — картинки, CSS, Javascript — а потом раздаёт их с серверов, которые ближе к посетителям. Это снижает нагрузку на хостинг и расстояние, которое преодолевают данные.

Иллюстрация работы CDN Cloudflare

Защита от DDoS-атак работает за счёт того, что весь входящий трафик сначала проходит через Клаудфлер, как через фильтр. Компания анализирует входящий трафик, блокирует подозрительные запросы, а обычные отправляет к вам на сайт.

Как подключить Cloudflare к сайту

На сайте Cloudflare нажмите кнопку «Sign up» в правом верхнем углу:

Cloudflare hosting — главная страница сайта сервиса

Укажите электронную почту в качестве логина и придумайте надёжный пароль: минимум 8 символов, хотя бы одна цифра и специальный символ. После этого нажмите «Create Account»:

Hosting Cloudflare — страница регистрации аккаунта

Введите домен, который собираетесь привязать к Cloudflare, и нажмите «Add site»:

Выберите тарифный план — в нашем случае «Free» — и нажмите «Continue»:

Тарифы Cloudflare

Запустится процесс сканирования DNS-зоны вашего домена. Cloudflare найдёт DNS-записи для домена и всех его поддоменов, а потом создаст их у себя:

Cloudflare free dns — страница с отсканированными DNS-записями

Обычно сервис не пропускает записи, но если какая-то из них пропала, добавьте её вручную. Если всё в порядке, нажмите внизу кнопку «Continue»:

Бесплатный хостинг DNS от Cloudflare — страница с отсканированными DNS-записями домена

На следующей странице будут DNS-серверы для направления домена на Cloudflare. Установите их для вашего домена на сайте компании, у которой регистрировали домен.

Если регистрировали домен у нас, чтобы изменить DNS-серверы, зайдите в вашу учетную запись и перейдите в раздел «Мои домены». Затем нажмите «Детали» в строке с нужным доменом и найдите раздел «NS серверы». Впишите неймсерверы, которые вам выдал Cloudflare, и сохраните изменения.

Когда домен будет направлен на Cloudflare, вы увидите в верхней части панели управления разделы для работы с разными сервисами Cloudflare. В этом руководства мы рассмотрим только самые популярные из них: Caching, DNS, SSL/TLS, Firewall и Page Rules.

Обзор функций Cloudflare

Если подключаете сайт к Cloudflare во время DDoS-атаки

Скорее всего, IP-адрес вашего сервера уже известен и его просто будут атаковать напрямую. Если это так, стоит поменять IP-адрес. Уточните этот момент с вашим провайдером.

Отдельный момент — после переключения DNS-серверов на домене следующие несколько дней часть трафика всё равно будет идти через старые DNS-серверы, а значит защита Cloudflare будет работать только для половины запросов.

Как очистить кэш

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

Для этого откройте раздел «Caching» и перейдите на вкладку «Configuration». Дальше в первом же блоке нажмите «Custom Purge», чтобы очистить кэш выборочно, или «Purge Everything», чтобы очистить весь кэш на серверах Cloudflare.

Как очистить кэш Cloudflare

Как работать с DNS-записями

Перейдите в раздел «DNS». Вы увидите таблицу со всеми DNS-записями в зоне вашего домена на серверах Cloudflare.

Чтобы добавить новую запись, нажмите «+Add record» над таблицей со всеми записями:

Настройка DNS на стороне Cloudflare

Для примера создадим А-запись для поддомена «blog». Выберите тип DNS-записи «A», заполните остальные поля и нажмите «Save»:

Чтобы изменить или удалить какую-то запись, нажмите в строке с ней кнопку «Edit». После этого поля со значениями записи станут доступны для редактирования, а в левом нижнем углу появится кнопка «Delete».

Cloudflare — как удалить DNS-запись

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

Чтобы увидеть статус защиты на каждом из этапов, перейдите в раздел SSL/TLS. В верхней части страницы вы увидите схему и четыре настройки, которые нужно выбрать в зависимости от того, установлен у вас на хостинге SSL-сертификат или нет.

Правильная настройка Cloudflare SSL

Соединение на пути посетителя к Cloudflare компания защитит сама при помощи собственного бесплатного SSL-сертификата Universal. Он начнёт работать автоматически, как только вы добавите домен в аккаунт. А вот чтобы защитить соединение на пути от Cloudflare к вашему сайту понадобится установить SSL-сертификат на хостинг.

Не используйте режим «Full» или «Full (Strict)», если у вас на хостинге не установлен SSL-сертификат . Иначе при переходе на ваш сайт посетители будут видеть ошибку 525 или 526 соответственно. Выглядят они одинаково, разница только в коде ошибки:

Как защитить сайт от DDoS-атаки

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

Кэширование тоже помогает при небольших атаках, поскольку снижает нагрузку на ваш хостинг. Но всё равно во время атаки желательно скорректировать настройки в вашем аккаунте Cloudflare, чтобы дополнительно смягчить атаку. В этом разделе поговорим о том, что именно можно сделать.

Но бесплатный тариф Cloudflare защитит не от всех атак , а только от самых распространённых. Если разбираетесь в их разновидностях, то речь об атаках 3, 4 и 7 уровней. Для большинства сайтов этого будет достаточно, потому что не всех атакуют по-крупному, но серьёзная защита от DDoS начинается именно с платных тарифов Cloudflare.

Включите режим «I’m Under Attack!»

В этом режиме Cloudflare начнёт проверяет каждого пользователя, который пытается попасть на сайт. Все они будут сначала видеть вот такое межстраничное уведомление. Так алгоритмам компании будет проще отделить вредоносный трафик от нормального.

Стандартное межстраничное уведомление «DDoS protection by Cloudflare»

Проверенный посетитель получит доступ к вашему сайту не навсегда. По умолчанию это 30 минут, но вы можете указать другие временные рамки на этой же вкладке в блоке «Challenge Passage»:

Настройте правила доступа

С их помощью вы можете заставить посетителей проходить CAPTCHA при переходе на сайт или вообще заблокировать к нему доступ на основе региона, типа запроса, IP-адреса, диапазона IP-адресов или User Agent.

В бесплатном тарифе Cloudflare вы сможете создать всего пять правил. Для этого перейдите в разделе «Firewall» на вкладку «Firewall Rules» и нажмите «Create a Firewall rule».

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

Первое поле — «Rule name» — это название правила. Для нашего примера подойдет «Блокировка трафика»:

Дальше будут поля с деталями правила:

  • Field — параметр, на основе которого будет фильтроваться трафик. В нашем случае это «IP address».
  • Operator — условие, при котором правило будет срабатывать. В нашем случае «equals», то есть «равно».
  • Value — значение параметра из первого поля. В нашем случае это IP-адрес, для которого нужно заблокировать доступ.

Кнопки «And» и «Or» справа нужны, чтобы указать несколько условий для одного правила. «And» подразумевает, что правило сработает, если запрос соответствует обоим условиям, а «Or» — что правило сработает, если запрос соответствует хотя бы одному условию.

Кроме одного IP-адреса мы дополнительно указываем диапазон IP-адресов, поэтому нажимаем «And» и в новой строке вписываем такие детали:

  • Field — «IP address».
  • Operator — «is in», то есть «входит в».
  • Value — диапазон IP-адресов в формате «IP-адрес/префикс CIDR». В нашем примере пишем «2.16.64.0/24». Это значит, что первые три октета — «2.16.64» — не будут меняться, а последний будет включать в себя все значения от 1 до 254. Если прописать «2.16.64.0/25», то первые три октета тоже не будут меняться, а последний будет включать в себя значения от 1 до 126.

Под полями с деталями правила будет поле с действием, которое Cloudflare будет применять, если запрос соответствует условиям из правила:

  • Block — заблокировать доступ.
  • Challenge (CAPTCHA) — показывать капчу. Используется сервис Google reCAPTCHA.
  • JS Challenge — показывать межстраничное уведомление, как при включенной опции «I’m Under Attack!».
  • Bypass — отключить проверки со стороны Cloudflare.
  • Allow — разрешить полный доступ.

В нашем примере мы хотим заблокировать трафик, поэтому выбираем «Block».

После создания правила остаётся нажать кнопку «Deploy» внизу страницы. Изменения вступят в силу немедленно.

Как улучшить работу отдельных страниц

Вы можете создать правила для отдельных страниц, чтобы отдельные компоненты Cloudflare не работали для них вообще или работали по-другому.

В бесплатном тарифе Cloudflare вы сможете создать всего три таких правила. Сначала расскажем, как в общем устроен процесс. А потом рассмотрим несколько конкретных правил, которые могли бы вам пригодиться.

Перейдите в раздел «Page Rules» и в первом же блоке нажмите кнопку «Create Page Rule»:

На следующей странице вы увидите два блока с полями:

    If the URL matches — URL, для которого будет работать правило. При необходимости используйте звёздочку (*) в любом сегменте URL-адреса, чтобы превратить URL в шаблон.

В конце сохраните правило, нажав кнопку «Save and Deploy»:

Cloudflare настройка: поля с параметрами правила для отдельной страницы

Правила применяются в зависимости от того, в каком порядке они расположены . Если хотите изменить их очерёдность, просто перетащите нужное правило вверх или вниз по списку при помощи значка слева:

Настройка клаудфлер: список всех правил для отдельных страниц

Мы показали, как в общем устроен процесс. Теперь рассмотрим несколько конкретных правил.

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

По умолчанию Cloudflare устанавливает на сайте уровень защиты Medium. Но для некоторых страниц — например, страницы входа в панель управления сайтом или в аккаунт клиента — можно установить более высокие требования, потому что именно их часто атакуют хакеры. Для этого создайте правило с такими условиями:

Кэширование для контента, который редко будет меняться

Часть контента на вашем сайте, например картинки, не будет часто меняться. Правильно настроив кэширование для такого контента, вы снизите объём используемого трафика и нагрузку на сервер. Создайте правило с такими условиями:

  • В блоке If the URL matches впишите URL-адрес к папке, где хранятся изображения и другие мультимедийные файлы.
  • В блоке Then the settings are выберите Cache Level — Cache Everything, чтобы Cloudflare кэшировал всё содержимое этой папки без исключения.
  • Нажмите + Add a Setting и добавьте настройку Browser Cache TTL — a day, чтобы кэш в браузерах посетителей обновлялся раз в день.
  • Нажмите + Add a Setting ещё раз и добавьте настройку Edge Cache TTL — 7 days, чтобы Cloudflare проверял файлы на стороне хостинга и обновлял кэш раз в 7 дней, если это нужно.

Редирект сайта с www на без www

Будет выгоднее настроить 301 редирект с одной версии на другую. Тогда позиции одной версии передадутся другой и сайт в итоге может даже улучшить свои позиции в выдаче. На жаргоне SEO-специалистов это действие называется «склеить домен».

Вот как сделать основной версию без www:

Как удалить домен из Cloudflare

Перейдите в раздел «Overview» и в правом нижнем углу этой страницы нажмите «Remove Site from Cloudflare» в разделе «Advanced Actions», после чего подтвердите свои действия:

Как удалить сайт из Cloudflare

Если же вы просто хотите временно приостановить работу Cloudflare, выберите опцию, которая стоит чуть выше — «Pause Cloudflare on Site». Тогда домен продолжит использовать DNS-хостинг Cloudflare, но запросы будут идти сразу к вашему хостинг-провайдеру. Кэширование, SSL и защита от DDoS-атак перестанут работать.

Cloudflare — сервис, предоставляющий множество услуг в сфере безопасности и оптимизации, которые помогают как небольшим сайтам, так и крупным проектам. При помощи Cloudflare можно защитить сайт от DDoS-атак, настроить оптимизацию сайта, кеширование, защищенное соединение, анализировать трафик и другое. Многие функции мы разберем в этой статье.

Подключение и знакомство

Создание аккаунта

Для создания аккаунта вам нужно:

Аккаунт будет создан после подтверждения по почте.


Добавление домена


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

Чтобы применить все настройки, измените NS-серверы у регистратора домена на те, которые вам предложит Cloudflare. Компания имеет больше сотни NS-серверов, поэтому не указывайте их заранее, вам попадутся другие.


Проверьте настройки и нажмите кнопку «Done». Домен добавлен на аккаунт.

После изменения NS-серверов и обновления DNS-кеша вам придет уведомление на почту, что домен успешно подтвержден и работает через Cloudflare.


DNS и статус проксирования

Изменять, добавлять и редактировать ресурсные записи можно в разделе «DNS». Для записей вы можете выбрать один из статусов проксирования:

  1. Настройка «Proxied» (оранжевое облако) говорит о том, что вместо вашего IP-адреса будет указан адрес Cloudflare. Все запросы проксируются, то есть поступают сначала на сервера компании, а после отправляются на сервер, где сайт фактически размещен.
  2. «DNS only» (серое облако) означает, что при обращении к домену Cloudflare будет отдавать IP-адрес вашего сервера. Настройки кеширования, Firewall и другие не будут применяться.

Чтобы изменить статус, нажмите на запись для перехода в режим редактирования, кликните на облако для изменения и нажмите «Save».



При использовании «Proxied» на бесплатном тарифе, подключиться по проксируемому домену к почте, FTP и SSH на хостинге не получится. Cloudflare пропускает запросы к вашему сайту только по 80 и 443 порту, поэтому используйте для подключения к почте и другим сервисам IP-адрес сервера, на котором находится ваш аккаунт (указан в Панели управления, раздел «Сайты и домены» → «IP-адреса»).

На платных тарифах вы можете воспользоваться специальным инструментом Spectrum, узнать подробнее можно в инструкции.

Возможности Cloudflare

Защита от DDoS-атак

В настоящее время количество DDoS-атак на сайты увеличивается, и от них нужно защищаться. Веб-сайты, приложения и сети — все это защищено глобальной облачной сетью компании со скоростью передачи данных несколько десятков Тбит/с. Размер и частота атак технически не ограничивается, а сеть Cloudflare блокирует до сотни миллиардов угроз в день.

Чтобы воспользоваться услугой защиты от DDoS-атак, включите проксирование (Proxied) для своего сайта в разделе «DNS». В результате все запросы к вашему сайту будут поступать сначала на сервер Cloudflare, а он в свою очередь будет отправлять проверенные запросы на сервер, откуда фактически работает сайт.



Web Application Firewall

WAF — это правила, благодаря которым вы можете настроить дополнительную защиту для своего сайта. Правила настраиваются в разделе «Firewall» личного кабинета Cloudflare. Они позволяют блокировать запросы от нежелательных роботов, разрешать доступ к сайту для проверенных сервисов, настроить дополнительные проверки для роботов, и многое другое. Более подробно можно почитать об этом в инструкции на сайте компании.

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



Защищенное соединение

При использовании проксирования от Cloudflare доступна настройка защищенного соединения для сайта в разных режимах: Flexible, Full или Full (Strict).





При защите вашего сайта с помощью Cloudflare не рекомендуется иметь настроенные перенаправления на хостинге.

Кеширование контента

В Cloudflare доступны для использования CDN-серверы, или серверы сети доставки контента. Они позволяют быстрее получать картинки, документы, шрифты и другие статические файлы, кешируя их на серверах Cloudflare. Кеширование позволит снизить нагрузку на сайт, если на нем много посетителей и статических файлов.

Кеширование настраивается в разделе «Caching» → «Configuration» → «Caching Level» или в разделе «Page Rules», с помощью которого можно создать правила для файлов по определенному адресу сайта.



Есть три настройки кеширования:

Можно настроить кеширование в браузере у посетителей сайта, пункт «Browser Cache TTL». Время жизни кеша будет установлено Cloudflare, если на веб-сервере не указаны более длительные периоды времени.



Настройка сервисов

Уровень защиты сайта

Cloudflare позволяет настроить автоматическую проверку трафика, чтобы защищаться от плохих посетителей. Для этого нужно настроить «Security Level» в разделе «Firewall» → «Settings». Выбранный вами уровень определит, какие посетители должны будут пройти дополнительную проверку перед входом:

  1. «Essentially off» (Почти отключено) — только для самых тяжких нарушителей.
  2. «Low» (Низкий) — только для наиболее угрожающих посетителей.
  3. «Medium» (Средний) — дополнительная проверка для посетителей, которые представляют умеренную или большую угрозу.
  4. «High» (Высокий) — проверка для всех посетителей, которые демонстрировали угрожающее поведение в течение последних 14 дней.
  5. «I’m Under Attack!» (Я под атакой!) — данный режим должен использоваться только если ваш сайт находится под DDoS-атакой.



Когда выполняется дополнительная проверка, посетитель видит страницу от Cloudflare в течение 5 секунд, которая его анализирует. Проверенные посетители получают доступ к вашему сайту, а подозрительные блокируется.



Настройка защищенного соединения

  1. «Flexible». Сертификат будет установлен на сервер Cloudflare и автоматически будет продлеваться.
  2. «Full» или «Full (Strict)». Для корректной работы потребуется установка SSL-сертификата на сервер хостинга. Если сертификат не установлен, тогда на сайте будет ошибка 520.

Создайте бесплатный сертификат Cloudflare Origin в разделе «SSL/TLS» → «Origin Server». Для этого нажмите «Create Certificate», выберите срок действия и нажмите кнопку «Next». После этого будет сгенерирован сертификат (Origin Certificate) и приватный ключ (Private key).

Скопируйте сертификат и приватный ключ в текстовый файл и загрузите на хостинг через Панель управления в разделе «Файловый менеджер». Для установки сертификата напишите нам через раздел «Поддержка».



Также в разделе «SSL/TLS» → «Edge Certificates» вам нужно включить две настройки:



Оптимизация и очистка кеша

В разделе «Speed» → «Optimization» вы можете ускорить загрузку сайта благодаря нескольким настройкам:

  1. «Auto Minify» удаляет ненужные символы из исходного кода без изменения его функциональности (например, пробелы, комментарии и т.д.). Минификация может сжимать размер исходного файла, что уменьшает объем данных, которые необходимо передать посетителям, и таким образом сокращает время загрузки страницы.
  2. Сжатие «Brotli» или gzip, которое ускорит загрузку страницы для ваших посетителей.



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

Если вы обновили картинку или другой статический файл на сайте, но ничего не изменилось, тогда вам потребуется очистить кеш браузера и кеш на CDN-серверах. Это можно сделать в разделе «Caching» → «Configuration» → «Purge Cache». Нажав на кнопку «Custom Purge», вы сможете ввести ссылку на файл и очистить его на серверах Cloudflare, или же очистить весь кеш кнопкой «Purge Everything».

– можно перевести как «общие настройки», где показываются общие настройки, уровень шифрования, кэширования и так далее.

Слева от статуса сайта есть выпадающий список с выбором быстрых действий.

Under attack mode – режим «под атакой», в этом режиме сайт открывается с задержкой, основное назначение – защита от DDoS-атак. После включения опции будет доступно несколько уровней защиты от low до high.

Developing mode – режим «разработки», отключает кэширование на сайте. Обычно опция востребована при отладке сайта, когда изменения сразу же отображаются на ресурсе, иначе все вносимые обновления будут отображаться с задержкой.

Security Level – режим «уровень безопасности» – по умолчанию выключен «Essentially Off», при включении будут доступны следующие опции:

Rate Limiting – режим «ограничение скорости», используется для блокировки IP-адресов с вредоносными запросами, как сканирование, или если тарифный план имеет ограничение по трафику.

Внимание, функция платная. Первые 10 000 запросов являются бесплатными. Далее $ 0,05 за 10 000 запросов.

Примечание: за заблокированные запросы плата не взимается.

Caching Level – «уровень кеширования», по умолчанию установлен уровень стандарт, при изменении доступны опции уровня кэширования, особо выделим:

Always Online – «всегда онлайн», на мой взгляд, супер функция. Если ваш сайт упал и не дышит, вы решили переделать сайт, но не хотите его выключать, сгорел дата-центр и так далее… CloudFlare будет показывать статические страницы сайта из кэша. Конечно, ни о какой динамике не может быть и речи, даже функция отправки почты будет недоступна, но это все же лучше, чем посетитель будет лицезреть «дырку от бублика».

Практически в самом конце страницы ссылка на API, но об этом поговорим позже, поскольку тут открывается множество возможностей, таких как собственный, динамический DNS.

Вкладка Analytics – как нетрудно догадаться, это страница аналитики.

Requests – «запросы», можно посмотреть количество запросов, уровень кэширования, географию и многое другое, качество предоставляемой статистики не хуже, чем предоставляют специализированые сервисы.

Bandwidth – «пропускная способность», показывается количество трафика с сайта.

Unique Visitors – «уникальные посетители».

Threats – «угрозы», будут показаны вредоносные запросы, с разделением по типу угроз, страны-источники угроз и так далее.

Вкладка DNS

– содержит список DNS-записей, которые мы уже видели при настойке CloudFlare.

Custom Nameservers – позволяет создать собственные имена серверов, услуга платная.

DNSSEC – технология dnssec защищает от поддельных DNS. Защищенные зоны DNSSEC подписываются криптографически, чтобы убедиться, что полученные DNS-записи идентичны записям DNS, опубликованным владельцем домена.

CNAME – каноническое имя для псевдонима. Запись CNAME чаще всего используется для переадресации поддомена на другой домен.

Вкладка Crypto

– управление настройками криптографии.

SSL – статус текущего сертификата, а также настройка уровня шифрования.

Edge Certificates – управление сертификатами, есть как бесплатный, так и платные варианты, также можно загрузить собственный сертификат.

Authenticated Origin Pulls – дополнительная проверка TLS-сертификата на подлинность.

Require Modern TLS – при включении будут использоватся современные версии протокола TLS (1.2 и 1.3). Эти версии используют более безопасное шифрование, но посетители, использующие старые браузеры, не смогут зайти на сайт.

Disable Universal SSL – полное отключение протокола SSL.

Вкладка Firewall

– управление доступом по IP, странам или типов запроса.

Rate Limiting – режим «ограничение скорости», используется для блокировки IP-адресов с вредоносными запросами, как сканирование, или если тарифный план имеет ограничение по трафику. Да, вы не ошиблись, этот пункт присутствует в другой вкладке, как и некоторые другие.

Внимание, функция платная. Первые 10 000 запросов являются бесплатными. Далее $ 0,05 за 10 000 запросов.

Security Level – доступно несколько уровней, от «low» до «high».

Challenge Passage – задается временная задержка, указывающая через какое время посетитель с определенных IP-адресов сможет повторно зайти на сайт. Можно выбрать диапазон от пяти минут до одного года.

Access Rules – позволяет создать правила доступа для определенных IP -дресов, Autonomous автономной системы (ASN) или даже стран. Доступны – блокировка, белый лист, отсечение JS и так далее.

Вкладка Access

– услуга находится в бета тестировании и пока бесплатна, предполагается включение защиты доступа к внутренним ресурсам, например промежуточному сайту или внутреннему серверу компании.

Вкладка Speed

– управление параметрами производительности.

Auto Minify – объединяет JavaScript, CSS, HTML-файлы для уменьшения времени загрузки сайта.

Polish – уменьшает время загрузки изображений за счет оптимизации. Дополнительно подключается кодек WEBP.

Примечание: для вступления изменений в силу нужно очистить кэш.

Railgun™ – ускорение загрузки динамического контента.

Примечание: услуга платная, также требуется установка программного обеспечения на хостинге.

Mobile Redirect – перенаправление посетителей, использующих мобильные устройства, на сайт оптимизированный для мобильных устройств.

Вкладка Caching – управление кэшированием сайта.

Purge Cache – очистка кэша, возможна как полная очистка, так и очистка определенных файлов.

Caching Level – уровень кэширования.

Browser Cache Expiration – указывает браузеру, какое время сохранять кэш-файлы. В течение этого периода браузер загружает файлы из локального кэша, ускоряя загрузку страниц. Можно выбрать диапазон от двух часов до одного года.

Вкладка Network

– управление сетевыми настройками.

IPv6 Compatibility – совместимость с IPv6.

Pseudo IPv4 – добавляет заголовок IPv4 к запросам, когда клиент использует IPv6, но сервер поддерживает только IPv4.

IP Geolocation – автоматически перенаправляет посетителя на региональную версию сайта, если такая существует.

Maximum Upload Size – ограничение максимального размера загрузки на сайт.

Вкладка Traffic – контроль и управление трафиком.

Argo – оптимизация сетевых маршрутов для снижения времени ответа сервера.

Load Balancing – защита от сбоев в обслуживании с помощью балансировки нагрузки, автоматической отработки отказов, географической маршрутизации и активных проверок работоспособности серверов.

Вкладка Customize

– содержит пункты, описанные выше, поэтому пропустим описание.

Вкладка Apps

– установка дополнений от CloudFlare.

Drift – позволяет создать форму чата для общения с посетителями сайта, в бесплатной версии существуют ограничения.

Google Analytics – сервис аналитики от Google.

Lead Box – позволяет организовать подписку на сайте, в бесплатной версии также существуют ограничения.

Detectify – анализ сайта на уязвимости и наличие вредоносного кода.

PACE – устанавливает прогресс бар загрузки страниц.

Вкладка Scrape Shield

– защита изображений от хотлинка, маскировка почты, сокрытие контента.

Email Address Obfuscation – обфускация адресов электронной почты для предотвращения сбора электронной почты ботами.

Server-side Excludes – автоматически скрывать контент от подозрительных посетителей. «Подозрительными» посетителями могут быть признаны автоматические граберы новостей, спам-боты в комментариях сайта, боты, совершающие многократные, однотипные действия, как обращение к форме обратной связи, и так далее.

Hotlink Protection – защита от хотлинка.

В материалы описаны только основные настройки CloudFlare, некоторые возможности, так использование API, совсем не затронуты.

В бесплатной версии Cloudflare предлагает базовую защиту от DDoS атак, подключение к CDN со 180 дата-центрами в 80 странах и SSL сертификат.

В этой статье подробное описание, как подключить Вордпресс сайт к Cloudflare CDN с помощью официального плагина или с помощью плагина W3 Total Cache.

Что такое Cloudflare и что он может делать

Когда вы подключаете сайт к Cloudflare, весь трафик начинает идти через CDN сеть Cloudflare, в результате чего вы получаете:

Cloudflare ускоряет сайт и усиливает его безопасность.

Принцип работы DNS Cloudflare

Как Cloudflare использует DNS для своей работы

Cloudflare пропускает весь трафик через свой DNS сервер и направляет его на ваш сайт.

Чтобы направлять этот трафик, DNS использует несколько типов записей, которые называются nameservers:

Cloudflare добавляет себя в этот процесс в качестве DNS сервера для вашего домена.

В итоге это позволяет Cloudflare обрабатывать входящий трафик, то есть:

  • Проверять входящий трафик на безопасность, и
  • Перенаправлять этот трафик на ближайший к посетителю сервер для ускорения загрузки страниц.

Вы также можете использовать Cloudflare только в качестве DNS сервера, и не использовать функции CDN и безопасности.

Как настроить Cloudflare за 5 минут

Подключение сайта к Cloudflare занимает 5 минут и не требует кодирования или других специальных знаний.

Каждый шаг подробно:

1. Создайте аккаунт в Cloudflare

Создайте аккаунт Cloudflare

2. Добавьте ваш сайт на Cloudflare

После того как вы создали аккаунт, Cloudflare предложит вам добавить сайт.

Добавьте сайт

Вставьте имя домена и нажмите Add site. На следующем шаге Cloudflare просканирует DNS вашего сайта, нажмите Next:

Cloudflare сканирует DNS вашего сайта

Сканирование DNS записей может занять 1-2 минуты.

3. Выберите бесплатный тариф

На следующей странице выберите тариф. В этом примере мы будем использовать бесплатный тариф.


Нажмите Confirm plan, на следующей странице Confirm.

4. Подтвердите или измените DNS записи в Cloudflare

На следующей странице вы можете выбрать, какие записи будут проходить через Cloudflare, а какие будут обходить.

Обычно на этой странице ничего не нужно делать. Проверьте, что напротив имени домена стоит оранжевая иконка.

Cloudflare nameservers

В зависимости от настроек вашего сайта, вы можете проверить, что:

  • Вы видите MX записи для е-мейлов (если есть). Cloudflare не направляет MX записи через свою сеть.
  • Субдомены, которые вы используете, включены или исключены из Cloudflare, в зависимости от того, как вы хотите.

Если все в порядке нажмите Continue.

5. Измените ваши DNS записи на хостинге на DNS записи Cloudflare

На этой странице Cloudflare предлагает заменить ваши текущие DNS записи на DNS записи Cloudflare.

Замените ваши DNS записи на записи Cloudflare

Нажмите Copy для копирования записей

На хостинге Beget это делается в разделе DNS:

Управление записями DNS на хостинге Beget

Редактирование записей DNS на хостинге Beget

На других хостингах или в панели регистратора это делается аналогично. Если вы не знаете, как это сделать, обратитесь в техподдержку хостинга или регистратора.

После того, как вы изменили и сохранили DNS записи, вернитесь на Cloudflare и нажмите Continue.

Процесс смены адресов может занять до 24 часов. Обычно это происходит за 15 минут, и все это время сайт остается доступным.
После того, как DNS адреса изменятся, вы увидите Консоль Cloudflare.

Консоль Cloudflare

Теперь весь трафик на сайт идет через DNS сервер Cloudflare.

Подключение Вордпресс к Cloudflare с помощью официального плагина

У Cloudflare есть бесплатный плагин для подключения к Вордпресс:

  • Плагин позволяет сделать нужные настройки в один клик
  • Добавляет нужные правила для файрвола
  • Позволяет автоматически сбрасывать кеш, когда вы обновляете контент
  • Позволяет изменять настройки Cloudflare без необходимости посещения админки Cloudflare

1. Установите и активируйте официальный плагин

Подключение аккаунта Cloudflare в официальном плагине

На следующем экране введите ваш е-мейл и API ключ.

Введите е-мейл и API ключ

Чтобы найти API ключ:

  • Зайдите в админку Cloudflare
  • Кликните на аккаунт в правом верхнем углу
  • Кликните My Profile
  • Спуститесь вниз до раздела API Keys
  • Нажмите View напротив Global API Key, введите пароль, скопируйте API ключ

API ключ в настройках Cloudflare

Вставьте ключ в поле API Key в настройках плагина на вашем сайте.

2. Включите автоматические настройки

На странице Home вы можете сделать автоматические настройки в один клик. Нажмите Apply, плагин применит нужные настройки. Список всех настроек.

Включите автоматические настройки

Это базовые настройки, после этого нужно сделать несколько настроек в админке Cloudflare.

Подключение Вордпресс к Cloudflare с помощью W3 Total Cache

Некоторые плагины кеширования могут подключить сайт к сети Cloudflare, W3 Total Cache один из них.

1. Включите модуль Cloudflare в разделе Extensions

W3TC Активируйте модуль Cloudflare

После активации модуля нажмите Settings для перехода на страницу настроек модуля.

Нажмите Authorize, в появившемся окне добавьте е-мейл и API ключ.

W3TC авторизация Cloudflare

В следующем окне выберите Зону. Зона означает ваш сайт. На бесплатном тарифе Cloudflare вы можете добавить только одну Зону / Сайт.

То же самое можно сделать в разделе CDN:

W3TC авторизация Cloudflare

3. Сделайте базовые настройки Cloudflare

После подключения аккаунта Cloudflare к W3 Total Cache сделайте эти настройки:

Авторизация и общие настройки

Настройки кеширования

Оставьте настройки по умолчанию или замените на свои.

4. Настройка обработки контента

Включите загрузку JS после загрузки основного контента, и включите минификацию js, css и html.

Обработка контента

В некоторых случаях минификация и объединение работают лучше с плагином, чем с Cloudflare. Попробуйте оба варианта.

5. Обработка изображений

Включите защиту от использования ваших изображений на других сайтах.

Обработка изображений

Оптимизация изображений для мобильных устройств и сжатие изображений доступно на платных тарифах Cloudflare.

6. Защита

Настройки безопасности. Оставьте значение по умолчанию Medium или замените на High:

Настройки безопасности

WAF-Файрвол и продвинутая защита от DDoS атак доступны на платных тарифах.

Включите поддержку IPv6:

Включите поддержку IPv6

8. SSL

Выберите ваш вариант подключения:


Если у вас есть или вы можете установить SSL сертификат, выберите значение Full или Strict.
Если сертификата нет, то установите Flexible.

Подробнее об этой настройке в следующем разделе.

Дополнительные настройки Cloudflare

В настройках Cloudflare вы можете сделать несколько настроек.

1. Сделайте настройки SSL

В разделе Crypto (UPD. Сейчас SSL/TLS) есть несколько настроек SSL:

Настройки SSL

Какие опции использовать:

Cloudflare, настройки DNS

Даже если это сработает, вам придется это делать каждые 3 месяца.

Вместо этого вы можете получить бесплатный сертификат Cloudflare, если выберите настройку Flexible.

Cloudflare - Crypto - Всегда использовать HTTPS

Примечание: Это же правило можно настроить в одном из трех бесплатных правил в разделе Page Rules.

Разница в том, что в Page Rules вы можете создать правило для определенной страницы / страниц, в разделе SSL/TLS создается правило для всего сайта.

Cloudflare - HSTS

Обычно HSTS проявляет себя так:

Примите во внимание

Заголовок Max-Age

HSTS включает параметр «max-age», который указывает продолжительность, в течение которой HSTS будет продолжать кэшироваться и применяться браузером. Этот параметр обычно устанавливается по умолчанию на 6 месяцев, однако вы должны использовать как минимум 12 месяцев, если хотите включить его в список предварительной загрузки HSTS (см. ниже).

Включение субдоменов с HSTS

Предварительная загрузка HSTS

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

Как только HSTS настроен, вы должны посетить URL-адрес предварительной загрузки для каждого браузера вручную. Для Chrome, Firefox и Safari используйте список предварительной загрузки Chrome. Поддержка Microsoft IE HSTS обновляется.

Используйте, если вы знаете, что у вас всегда будет действительный SSL сертификат, и сайт проксирован через Cloudflare.

4. Минимальная версия TLS

Выберите версию TLS 1.1 для усиления безопасности:

Минимальная версия TLS

5. Настройте 3 правила

В разделе Page Rules вы можете добавить специальные правила для сайта.

На бесплатном тарифе Cloudflare позволяет добавить 3 правила, которых достаточно для большинства сайтов. Дополнительные 5 правил будут стоить 5$ / месяц.

В этом примере 3 правила будут использованы для:

Перейдите в раздел Page Rules и нажмите Create Page Rule:

Создайте правила в Cloudflare

Правило для защиты wp-login.php

Правило для исключения wp-admin из сети Cloudflare и защиты

Правило для защиты xmlrpc.php

В итоге должно получиться так:

3 Бесплатных правила Cloudflare

Правило для принудительного использования HTTPS

6. Правила файрвола

Ручные правила файрвола

7. Используйте двух-факторную авторизацию

Так как вы можете изменять DNS записи прямо из аккаунта Cloudflare, используйте сложный пароль к аккаунту или двух-факторную авторизацию.

Cloudflare предлагает несколько вариантов использования двух-факторной авторизации:

Настройки находятся в разделе My Profile:

Двух-факторная авторизация Cloudflare

Заключение:

Cloudflare предлагает сервис для ускорения сайта и усиления его безопасности, который можно настроить за 15 минут.

Если вы хотите добавить файрвол, вам нужно купить подписку Pro, которая стоит 20$ в месяц.

Или вы можете настроить дополнительную защиту с файрволом на уровне сервера с помощью бесплатного плагина Sucuri Security и нескольких ручных настроек.

Признаки наплыва ботов

Косвенных признаков ботового DDoS на сайт достаточно много. Если у вас в последние дни вырос трафик в разы, обязательно загляните в метрику, чтобы узнать природу такого резкого всплеска.

ДО БОТОВ:


ПОСЛЕ БОТОВ:


ДО БОТОВ:


ПОСЛЕ БОТОВ:


3. Если боты идут с прямых заходов, то проводят на сайте не менее 15 секунд , чтобы метрика не засчитала отказ. В случае поискового трафика обычно по другому (об этом чуть ниже). Таким образом в метрике у нас появляется огромное количество посетителей с 15-секундной сессией и посещением одной страницы


В самых запущенных случаях может быть так:


4. Имитируют действия человека, если судить по Вебвизору. Боты скроллят страницу, даже останавливаются на каком-то участке текста, но, как отмечают многие веб-мастеры этим только палятся, т.к. на человеческие действия это совсем не похоже:

5. В последнее время боты немного переориентируются и идут через поиск (не прямые заходы) по многим топовым запросам. Как мы уже писали выше, боты атакуют в основном страницы по самым конкурентным запросам , причем многие боты из поиска с высокими отказами идут с тех же самых IP-адресов, с которых идёт атака по прямым заходам

6. К прямым заходам добавляются переходы со странных сайтов, на которых, якобы, стоит бэклинк на ваш ресурс. При переходе на этот сайт ссылки на ваш сайт не обнаруживается


7. В основном боты селятся на сайтах с хорошей посещаемостью (от 500 до 1000 в сутки). Но бывают исключения и долбят ресурсы поменьше.



10. Зачастую вместе с ботами растёт количество внешних ссылок с разных спамных и мутных ресурсов


Как посмотреть данные по прямым заходам?


[adace-ad не может распознать ботов?



Даже если вы поставите в настройках счетчика жесткую фильтрацию роботов (Настройка -> Фильтры), то это ничего не изменит


Последствия атаки

Последствия в любом случае будут негативными, но у некоторых сайтов, столкнувшихся с атакой, они умопомрачительно деструктивные:

Зачем это делается?

Однозначного ответа на вопрос нет. Всего есть две версии, каждая из которых имеет право на жизнь:

Кто этим занимается?


Как защищаться?

[adace-ad Ничего не делать

Многие веб-мастера заранее выбрасывают белый флаг, справедливо считая, что Яндекс должен сам разобраться с проблемой. Правда, последний не спешит это делать. В любом случае вариант забить и продолжать работать над сайтом имеет право на существование . Есть примеры, когда боты (а они есть почти у всех сайтов в рунете) никак не мешают развития сайта, не роняют позиции в выдаче, не уменьшают долю поискового трафика. Доля ботов в 10-20% от всего трафика присутствует у многих, так или иначе. Но этот вариант чреват тем, что в один момент может быть поздно принимать какие-либо меры.

Еще один момент: боты могут действительно уйти на некоторое время или снизить атаку до 1-2% от общего трафика, но практически всегда наплыв с прежней, как минимум, силой возвращается. Так же было и у нас.

1. Удалить метрику на конкретных страницах

2. Показывать метрику только пользователям с поиска

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


Единственное, что можно сделать через метрику это сделать так, чтобы боты не учитывались в самой метрике (настроить фильтр по IP), но от самих заходов на сайт это не избавит


НО! Возможно, в этом нет никакого смысла, так как сам Яндекс при этом утверждает, что

3. Бан по IP-адресам / подсетям

Повторяем! Это Опасно!


4. Отключение IPv6

Очень много ботов идёт с IP-адресом протокола IPv6 примерно такого вида 2a09:400:xxxx:xxxx:xxxx:xxxx:xxxx:xxxx. Дело в том, что IPv6-адреса можно купить очень дешево и поэтому ботоводы их скупают более охотно, в то время как люди ими почти не пользуются. Таких ботов можно отсечь либо блокировкой, либо отключением в DNS.

Удаление всех AAAA-записей в NS

В вашем регистраторе домена вы прописываете DNS-сервера, которые используются для вашего сайта.


В настройках удалите все АААА-записи, если они есть . Т.е. выглядеть это должно примерно так:


Запрет на IPv6 через Сloudflare

В настройках сайта на Cloudflare настройка DNS вынесена в быстрые действия в правом верхнем углу



Блокировка через панель управления хостинга

Если ваш хостер предоставляет панель управления сайтом Cpanel, то сделать можно следующим образом: зайдите в раздел «Безопасность» -> Блокировка IP. Добавить подсеть можно так 2a09:0400:0000:0000:0000:0000:0000:0000/32 или 2a09:400::/32.


На данный момент использование IPv6 пока не обязательно. Даже с учетом заканчивающихся свободных айпи-адресов в IPv4, операторы связи не торопятся выдавать адреса с шестого протокола (кстати, используя IPv6, поддержка IPv4 никуда не пропадает). Однако, есть мнение, что делать этого не стоит по двум причинам : это может неадекватно воспринять поисковые алгоритмы Google (каких-то подтверждений этому нет) и часть реальных пользователей вы всё равно отсечете, особенно, если сайт международный (в Европе уже достаточно активно используют). Но вы знаете, кто в России использует IP-протокол шестой версии? Вот и мы не знаем.

5. Блокировка/ фильтр по AS

На форумах проскакивает способ отсечения ботов из социальных сетей блокировкой целых автономных систем (AS) с которых идут мусорные заходы.

Блокировка через .htaccess

Блокировка через htaccess ничем не отличается от блокировки IP. Как узнать какие IP содержат конкретные AS? Для этого есть специальный сервис ASN-blocklist. Введите номер автономной системы и сервис выдает вам пул адресов, которые закреплены за ней. Точнее, он сразу выдает вам код, который нужно прописать в .htaccess


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

Фильтр через Cloudflare


В бесплатной версии можно настраивать всего 5 правил, но нам нужно добавить только одно:

Таким правилом мы не отсекаем этот трафик, а будем показывать ему капчу (JS Challenge). Полный список ASN под спойлером

Читайте также: