Cloudflare — универсальный инструмент от всех проблем или «бесплатный сыр»? Рассказываем о работе сервиса, о том, как он ускоряет и защищает сайты, на что обратить внимание до установки, а также как подключить его к сайту и настроить.
Кажется, что организовать управление DNS-записями, подключить SSL-сертификат, защитить сайт от DDoS-атак, поставить капчу, ограничить доступ к сайту по IP-адресу или региону не так уж и легко. Но всё это базовые функции всего одного сервиса — Cloudflare.
Рассказываем, что такое Cloudflare, о преимуществах этого инструмента и его недостатках (да, есть и такие), а также о том, как его установить и настроить.
Что такое Cloudflare и как он работает
Cloudflare представляет собой сеть серверов по всему миру. Клиенты подключают к ней свои сайты для ускорения загрузки и защиты от атак. Кроме того, сервис помогает управлять DNS-записями на домене, установить SSL-сертификат и настроить перенаправление на HTTPS и многое другое.
Самый простой пакет услуг «Клаудфлейр» бесплатен, также есть несколько платных пакетов, которые отличаются уровнем защиты и степенью ускорения. Большинство пользователей сервиса выбирают бесплатный тариф: его достаточно для удовлетворения базовых потребностей.
Сайты, подключённые к Cloudflare, загружаются быстрее за счёт технологии CDN (Content Delivery Network). Статические файлы при этом кешируются и сохраняются на серверах, расположенных по всему миру. Когда посетитель заходит на такой сайт, он получает статические файлы с ближайшего к нему DNS-сервера, поэтому загрузка данных происходит быстрее. Входящий трафик также идёт через «Клаудфлейр» и фильтруется: подозрительный блокируется, а безопасный перенаправляется на ваш веб-ресурс.
Стоит ли использовать Cloudflare
«Клаудфлейр» бесплатно предлагает многие необходимые инструменты, далее в статье мы рассмотрим их подробнее. Это и защита от DDoS с гибкими настройками, и ускорение загрузки, и подключение CDN, благодаря которому экономится трафик, и возможность создать собственные правила для части страниц.
Но также нужно помнить, что все плюсы для владельцев сайтов могут обернуться минусами для простых пользователей. А ведь в конечном счёте именно от пользователей зависит доход, который будет приносить сайт, а пользовательское поведение влияет на рейтинг в выдаче поисковиков.
- Если Cloudflare решит, что IP-адрес пользователя вызывает подозрения, то он будет либо заблокирован, либо пользователь будет регулярно встречать требование пройти капчу, а так как к Cloudflare сейчас подключено около трети всех сайтов, то он будет, по сути, отрезан от большой части Интернета. Но при этом подавляющее большинство пользователей выходят в сеть с динамическим IP; то есть условный user1 может не иметь никакого отношения к подозрительному трафику, который исходил с его IP-адреса на прошлой неделе (и даже вчера или несколько часов назад), потому что тогда этот IP принадлежал условному user2. Однако при блокировке по IP «под раздачу» попадут все, кому провайдер присвоит этот адрес.
- Также нужно помнить, что «Клаудфлейр» фактически монополист в своей сфере, а это значит, что поломка на его стороне затронет всю глобальную интернет-инфраструктуру. Это уже случилось несколько лет назад, когда из-за ошибки Cloudflare оказались недоступны все ресурсы, подключенные к сервису. Более того, проблемы были и у тех, кто не пользовался «Клаудфлейр» напрямую (из-за сторонних API). Авария затронула не только веб-сайты, но и игры, приложения для мобильных устройств, терминалы. При этом клиенты не могли перенаправить трафик в обход серверов «Клаудфлейр», так как заблокированной оказалась и панель управления.
- Cloudflare доступны все данные, хранящиеся на сайтах клиентов, причём в незашифрованном виде. Сервер «Клаудфлейр» расшифровывает полученные с вашего сайта данные, шифрует их заново своим сертификатом, а уже затем передаёт посетителям. Схема работает, даже если у вас есть собственный SSL-сертификат. Это само по себе идёт вразрез с целями установки SSL — шифрование данных между клиентом и сервером без расшифровки в процессе передачи. В случае взлома серверов «Клаудфлейр» вся конфиденциальная информация станет доступна злоумышленникам. Известны случаи, когда из-за ошибки на страницах клиентов сервиса появлялась случайные, в том числе личные, данные.
Как подключить Cloudflare
- Зайдём на сайт Cloudflare, нажмём Sign up справа вверху.
- Откроется форма для регистрации. Введём e-mail и пароль, затем нажмём Create Account:
- В следующем окне укажем доменное имя сайта, который подключается к Cloudflare. Нажмём Add site:
- Выберем тариф. Для примера мы подключимся на Free. Жмём «Продолжить»:
- После подключения тарифа сервис начнёт сканировать DNS-зоны вашего домена и создаст у себя копии всех DNS-записей домена и поддоменов. Проверяем список, если какая-то запись отсутствует, добавляем её вручную. После этого нажимаем «Продолжить».
- Затем Cloudflare передаст нам имена DNS-серверов, которые нужно установить для домена у компании-регистратора доменного имени.
- Когда DNS-серверы будут установлены и домен будет перенаправлен на Cloudflare, в панели управления появятся разделы для работы с доступными сервисами Cloudflare.
Обратите внимание, что в течение нескольких дней после подключения часть трафика будет направлена через старые DNS-серверы, то есть Cloudflare будет фильтровать не все запросы.
Далее рассмотрим, как пользоваться самыми популярными инструментами «Клаудфлейр»: кешированием, DNS, SSL/TLS, Firewall и Page Rules.
Как почистить кеш
Cloudflare создает кеш по умолчанию, поэтому очищать его нужно всякий раз, когда в сайт вносятся изменения. Если этого не делать, то ещё некоторое время посетители будут видеть старый контент. Для очистки кеша зайдите в раздел «Кеширование», вкладку «Конфигурация». Чтобы очистить кеш выборочно, нажмите Custom Purge, а для полной очистки — Purge Everything.
Работа с DNS-записями
В разделе DNS находится список всех DNS-записей на серверах Cloudflare, относящихся к вашему домену.
Если нужно добавить новую запись, нажмите кнопку +Add record над таблицей со списком. В форме создания DNS-записи:
- выберите её тип (A, AAAA, CNAME, MX или TXT);
- задайте имя (Name) — хост на домене, для которого создаётся запись. Укажите символ @, если запись создаётся для основного домена. Если для поддомена — укажите только его имя;
- если запись типа А, укажите IP-адрес — IPv4 address;
- TTL — время жизни DNS-записи на стороне посетителя, обычно установлено значение Auto;
- Proxy status — прокси статус Cloudflare. Значение Proxied говорит о том, что запросы будут направлены через Cloudflare. По значению DNS Only запросы будут обходить Cloudflare, соответственно, основные функции — CDN, SSL, защита от DDoS — не будут работать для этой записи.
Для изменения или удаления DNS-записи нажмите Edit. После этого можно перезаписать значения в полях формы, а внизу страницы появится кнопка Delete — нажмите её для удаления.
Как настроить соединение по протоколу HTTPS
В разделе SSL/TLS можно настроить защиту соединения.
Данные между посетителем и сайтом, подключённым к «Клаудфлейр», идут двумя путями. Соединение между посетителем и «Клаудфлейр» защищено с помощью бесплатного SSL-сертификата Universal. Его не нужно подключать и настраивать, он работает по умолчанию. Но для защиты пути между вашим сайтом и DNS-сервером «Клаудфлейр» на хостинг нужно установить отдельный SSL-сертификат.
Выберите в настройках параметр Full (Strict), если на сайте уже установлен сертификат, и параметр Flexible, если нет. Однако второй вариант не является безопасным для посетителей: браузер будет показывать передачу по HTTPS, но данные при этом останутся незашифроваными и могут быть перехвачены. Поэтому выбирать Flexible нежелательно. Также не устанавливайте Full или Full (Strict), если на вашем хостинге нет SSL-сертификата: это приведёт к ошибкам 525 и 526: SSL Handshake Failed («Квитирование SSL не удалось») и Invalid SSL Certificate («Недействительный сертификат SSL») соответственно.
После настройки SSL/TLS обязательно проверьте перенаправление: введите в адресную строку браузера домен с http. Если откроется https-версия, значит всё работает правильно. Если перенаправления не происходит, в панели управления выберите SSL/TLS, затем Edge Certificates и включите Always Use HTTPS.
Защита от DDoS-атак
Защита от DDoS-атак начинает работать сразу после подключения к Cloudflare. Вместо IP-адреса вашего сервера злоумышленники видят IP серверов «Клаудфлейр» и атакуют их вместо ваших. При этом подозрительные запросы блокируются, а безопасные отправляются на ваш сайт. Но надо помнить, что бесплатная версия Cloudflare обеспечивает защиту только от самых распространённых типов атак, хотя большинству сайтов этого будет достаточно.
Что можно сделать для дополнительной защиты:
- Активируйте режим «I’m Under Attack!», в котором проверяется каждый, кто пытается попасть на сайт:
Для этого в разделе Firewall зайдите в Settings, в настройках Security Level выберите пункт «I’m Under Attack!». Посетитель, прошедший проверку, по умолчанию считается доверенным в течение 30 минут, этот период времени можно изменить в настройках Challenge Passage. Уровень защиты «I’m Under Attack!» рекомендуется включать только во время атаки.
- Включите режим High. High можно назвать превентивной мерой защиты, в этом режиме «Клаудфлейр» проверяет только IP-адреса, с которых за предыдущие две недели был зафиксирован подозрительный трафик.
- Настройте правила доступа, определяющие какие посетители будут проходить капчу в зависимости от региона, типа запроса, IP-адреса, диапазона IP или User Agent. По этим признакам также можно настроить полный запрет доступа. Для этого откройте Firewall, затем Firewall Rules и выберите Create a Firewall rule.
Page Rules: настройка правил для отдельных страниц
В «Клаудфлейр» можно создать правила для отдельных страниц и указать, как сервисы будут их обрабатывать. В бесплатной версии количество правил ограничено тремя.
- Для их создания зайдите в раздел Page Rules и выберите Create Page Rule.
- Далее нужно ввести URL, на который будет распространяться правило (поле «If the URL matches»). Сервис понимает шаблоны, поэтому в адресе можно использовать звёздочку (*). К примеру, *.mysite.ru/* означает, что правило будет срабатывать для всех страниц сайта mysite.ru, включая поддомены.
- Поле «Then the settings are» предназначено непосредственно для правил. Если нужно задать более одного правила, то добавить их можно через кнопку +Add a Setting.
- Нажмите Save and Deploy, чтобы сохранить и применить настройки.
- Порядок, в котором перечислены правила, влияет на их значимость. Самые важные расположены в верхней части списка, они и будут применяться в случае конфликта. Чтобы изменить очерёдность, переместите правило вверх или вниз с помощью стрелок рядом с его порядковым номером.
Как отключить Cloudflare
Для полного удаления домена из сервиса в разделе Overview выберите Advanced Actions, и внизу справа нажмите Remove Site from Cloudflare (потребуется подтверждение).
Чтобы остановить работу Cloudflare на некоторое время, вместо Remove Site from Cloudflare нажмите Pause Cloudflare on Site. В этом случае домен не будет отключён от DNS-хостинга «Клаудфлейр», но запросы будут направлены напрямую. Кеширование, SSL и защита от DDoS-атак во время паузы будут недоступны.
Теперь вы знаете, как работает Cloudflare, а также как его настроить, если вы решили использовать сервис.
Читайте в блоге: