Посібник з налаштування 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 — а потім роздає їх із серверів, які ближче до відвідувачів. Це знижує навантаження на хостинг та відстань, яку долають дані.

Захист від 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» у верхній частині секції. Для прикладу створимо правило, яке застосує режим «Im 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