Руководство по настройке Cloudflare

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

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

Что внутри

  1. Что такое Cloudflare
  2. Как работает Cloudflare
  3. Как подключить Cloudflare к сайту
  4. Как работать с DNS-записями
  5. Как настроить HTTPS
  6. Как защитить сайт от DDoS-атак
  7. Как очистить кэш
  8. Как улучшить работу отдельных страниц
  9. Как удалить сайт из Cloudflare

Что такое Cloudflare

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

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

Сравнить тарифы Cloudflare

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

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

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

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

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

DDoS protection by Cloudflare: принцип работы

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

На сайте Cloudflare нажмите в верхнем правом углу кнопку «Login» и создайте аккаунт. После этого на домашней странице аккаунта нажмите синюю кнопку «Add» в правой части экрана и выберите из выпадающего списка «Connect a domain».

Cloudflare: добавить домен

Введите доменное имя, которое собираетесь добавить в Cloudflare.

Выберите тарифный план. Для начала бесплатного будет вполне достаточно. Чтобы выбрать, нажмите «Select plan» в его карточке.

Тарифы Cloudflare

Cloudflare просканирует DNS-зону вашего домена, найдёт DNS-записи и отобразит их. Если все записи на месте, нажмите «Continue to activation».

Важно ❗️
Cloudflare может пропустить записи. Сервис легко находит записи на популярных поддоменах вроде www, mail, test, smtp. Но ваши кастомные записи, возможно, не будут обнаружены. Проверьте это и добавьте то, чего не хватает.

Результат сканирования DNS-зоны при добавлении домена в Cloudflare

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

DNS-серверы для направления домена на Cloudflare

Если регистрировали домен у нас, чтобы изменить DNS-серверы:

  1. Зайдите в вашу учетную запись и перейдите в раздел «Мои домены». 
  2. Нажмите «Детали» в строке с нужным доменом и найдите раздел «Неймсерверы».
  3. Поставьте переключатель в строку «Ввести NS вручную».
  4. Впишите неймсерверы, которые вам выдал Cloudflare.
  5. Сохраните изменения.
Смена DNS-серверов при направлении домена на Cloudflare

После смены неймсерверов остаётся только ждать, пока настройки вступят в силу. Это может занять до 24 часов. Когда процесс завершится и сервисы Cloudflare активируются для домена, в разделе «Domains» у домена появится статус «Active». До этого будет статус «Invalid Nameservers». Если не сменить неймсерверы, через 28 дней домен удалится из Cloudflare автоматически.

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

Дальше рассмотрим основной функционал сервиса: как работать с DNS-записями, включить HTTPs, защитить сайт от DDoS-атак, очистить кэш, создать редирект или особые правила для работу отдельных страниц сайта.

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

В разделе «Domains – Overview» кликните по домену, чтобы открыть его настройки. Затем перейдите в раздел «DNS – Records». Вы увидите таблицу со всеми DNS-записями в зоне вашего домена на серверах Cloudflare.

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

Кнопка «Add record» в разделе «Domains – DNS – Records» в Cloudflare

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

  • Name — хост на домене, для которого создаётся запись. Если создаёте запись для основного домена, впишите сюда @. А если для поддомена, то впишите только сам поддомен, без домена. Например, чтобы создать запись для поддомена www.vashdomen.com, сюда нужно вписать только www.
  • IPv4 address — IP-адрес, к которому нужно привязать хост. Для других типов DNS-записей это поле будет называться по-другому, но в нём всегда будет подразумеваться целевое назначение записи — какой-то текст, домен или URL.
  • Proxy status — статус прокси Cloudflare. Статус «Proxied» означает, что для этой DNS-записи все запросы сначала будут проходить через Cloudflare. Для записи будут работать все функции сервиса. Статус «DNS Only» означает, что запросы будут идти в обход Cloudflare. Для записи не будут работать основные функции сервиса: CDN, SSL, защита от DDoS.
  • TTL — время жизни DNS-записи в секундах на роутере посетителя сайта. Чем больше это число, тем дольше человеку придётся подождать, прежде чем он узнает, что вы изменили DNS-запись. Изменить этот параметр получится, только если отключить для записи прокси Cloudflare. В противном случае TTL будет в значении Auto.
Добавление DNS-записи домена в Cloudflare

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

Редактирование DNS-записи домена в Cloudflare

Как настроить HTTPS

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

Статья на тему 👇
Как установить SSL-сертификат Let’s Encrypt

Посмотреть статус шифрования можно в разделе SSL/TLS. В нашем примере видно, что соединение на этапе от посетителя до Cloudflare защищено (стоит замочек), а на этапе от Cloudflare до хостинга — нет. Чтобы изменить режим, нажмите над схемой синюю кнопку «Configure».

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

Если у вас на хостинге уже есть SSL-сертификат, выберите режим «Full (Strict)». А если ещё нет, выберите режим «Flexible». Но в этом случае соединение не будет на 100% безопасным. Люди будут видеть у себя в браузере HTTPS при переходе на ваш сайт, хотя Cloudflare будет передавать данные на сайт в незашифрованном виде, а значит мошенники могут притвориться вашим сервером и перехватить данные. Используйте режим «Flexible» только как временную меру или в случае, если у вас нет возможности установить SSL-сертификат на хостинге.

Режимы шифрования соединения в настройках Cloudflare

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

Cloudflare: Error 526 — Invalid SSL certificate

После того как выберете подходящий режим, специально введите домен вашего сайта в браузере с HTTP. Если сайт всё равно откроется по HTTPS, всё хорошо. Если откроется HTTP версия, значит ваш сайт доступен и по HTTP и по HTTPS. Чтобы это исправить, перейдите в разделе «SSL/TLS» в подраздел «Edge Certificates» и включите опцию «Always Use HTTPS».

Настройка Cloudflare: опция «Always Use HTTPS»

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

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

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

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

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

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

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

Чтобы включить этот режим, перейдите в раздел «Security – Settings», введите в поиске «Security Level», кликните по иконке с изображением карандаша в этой опции, затем включите режим «I’m Under Attack!».

Как включить режим anti-ddos Cloudflare

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

Настройка Cloudflare: опция «Challenge Passage»

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

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

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

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

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

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

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

В бесплатном тарифе Cloudflare вы сможете создать всего пять правил. Для этого перейдите в разделе «Security – Security rules», нажмите синюю кнопку «Create rule» справа вверху и выберите «Custom rule».

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

Настройка Cloudflare: как создать правило для файервола

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

Настройка Cloudflare: поле названием правила для файервола

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

  • 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: поля с параметрами правила для файервола

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

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

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

Настройка Cloudflare: поле с действием для правила файервола

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

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

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

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

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

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

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

Для удобства в подразделе «Rules – Overview» есть кнопка «Templates» с вариантами полезных правил, которые вы могли бы создать для своего сайта. Для удобства раздел «Overview» разбит на несколько секций:

  • Page Rules — позволяет выполнить одно или несколько действий, если запрос подходит под заданный шаблон (старый способ настройки правил, который частично включает в себя функционал из всех предыдущих подразделов).
  • Configuration Rules — позволяет изменить поведение сервисов Cloudflare для отдельных запросов (например, так можно установить более сильную фильтрацию ботов для какой-то одной страницы вместо всего сайта).
  • Transform Rules — позволяет менять заголовки запроса/ответа, а также менять URL из запроса (по аналогии с тем как это делает mod_rewrite в Apache).
  • Redirect Rules — позволяет переадресовывать запросы на другие URL (например, сделать 301 или 302 редирект).
  • Origin Rules — позволяет менять в запросе заголовок Host и значение Server Name Indication (SNI), а также перенаправлять запросы на другой порт, хостнейм или IP-адрес сервера. 
  • Cache Rules — позволяет более тонко настроить кэширование (например, отключить его на отдельных страницах сайта или указать разное время хранения кэша для разных страниц). 
  • Compression Rules — позволяет настроить сжатие, которое применяется к ответам на запросы посетителей и основывается на расширении файла или типе контента.
Настройка Cloudflare: раздел «Rules – Templates»

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

Cloudflare настройка: раздел «Configuration Rules» с одним созданным правилом

Чтобы создать новое правило, нажмите кнопку «Create rule» в верхней части секции. Для примера создадим правило, которое применит режим «I’m Under Attack» только для URL входа в админку WordPress. 

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

Первое поле — это название правила. Оно нужно сугубо для вашего удобства. В нашем случае мы использовали «WordPress Admin Login».

Cloudflare настройка: поле для названия правила

Сразу ниже — блок «If incoming requests match…» («Если входящие запросы соответствуют…»). 

Сначала надо выбрать, к каким запросам должен применяться правило:

  • Custom filter expression — запросы, соответствующие указанным условиям;
  • All incoming requests — все входящие запросы.

Потом нужно сконструировать правило при помощи трёх полей: 

  • Field — параметр, который должен проверяться в запросе (в нашем случае «URL Full» — полный адрес страницы); 
  • Operator — как воспринимать параметр из поля «Field» (точное совпадение, начинается с, заканчивается на, содержит и т.д.);
  • Value — значение параметра из поля «Field».
Настройка клаудфлер: конструктор условий для правила

Ещё ниже — блок «Then…» («Тогда…»). Здесь надо выбрать, что должно происходить с запросом, который подходит под выбранные условия. 

Настройки в этом блоке будут сильно отличаться в зависимости от подраздела. В случае с «Configuration rules» здесь будет список сервисов Cloudflare, которые можно настроить при помощи правил. Возле нужного сервиса нажмите кнопку «Add», чтобы увидеть дополнительные поля.

Cloudflare настройка: действие для входящих запросов из правила

В нашем примере мы выбрали сервис «I’m Under Attack» и включили его. Таким образом для страницы, указанной в блоке «If incoming requests match…», фильтрация ботов будет на высоком уровне.

Cloudflare настройка: опция «Security Level» в действиях для правила

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

Выйдите из настроек домена и откройте раздел «Domains», где находятся все домены в вашем аккаунте. В строке с нужным доменом нажмите три точки справа и выберите из выпадающего списка «Remove from Cloudflare».

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

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

Как отключить Cloudflare

Медленно загружается сайт?

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

Была ли статья полезной?

Спасибо за отзыв!
Створіть сайт на WordPress з інтерактивним помічником. Можна спробувати безкоштовноНАЧАТЬ ДЕЛАТЬ САЙТ
+
Send this to a friend