Як підключити Cloudflare до WordPress. Детальний опис

Як підключити Cloudflare до WordPress. Детальний опис

5/5 - (6 votes)

Одна з важливих частин у роботі над сайтом – прискорення завантаження сторінок. Швидкість завантаження є одним із критеріїв пошукових систем щодо ранжування сайтів.

Ще одна важлива частина роботи над сайтом – безпека. Cloudflare – один із найкращих сервісів для прискорення та захисту сайту.

У безкоштовній версії Cloudflare пропонує базовий захист від DDoS атак, підключення до CDN зі 180 дата-центрами у 80 країнах і SSL сертифікат.

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

Що таке Cloudflare і що він може робити

Cloudflare – це DNS сервер, мережа доставки контенту (CDN, Content Delivery Network) і файрвол, який фільтрує шкідливі запити. Ці сервіси прискорюють сайт і забезпечують його безпеку.

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

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

  • Більш швидке завантаження сторінок – Coudflare кешує сайт на своїх серверах і відвідувачі сайту отримують сторінки з географічно найближчого сервера.
  • Зменшує трафік на вашому сервері – сторінки сайту доставлятимуться відвідувачам з різних серверів, тому навантаження на ваш сервер знизиться.
  • Безпечний трафік – Cloudflare очищає трафік від ботів та інших небезпечних джерел трафіку.
  • Посилена безпека – Cloudflare пропонує файрвол на рівні DNS сервера, захист від DDoS атак і безкоштовний SSL сертифікат. У безкоштовній версії – тільки базовий DDoS захист і SSL сертифікат.

Cloudflare прискорює сайт і посилює його безпеку.

Налаштування Cloudflare CDN
Cloudflare.com: Cloudflare пропускає весь трафік через свій сервер та блокує шкідливі запити

Як Cloudflare використовує DNS для своєї роботи

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

DNS сервер (Domain Name System) – це система, яка пов’язує доменне ім’я сайту з IP адресою вашого сервера.

Ви пишете адресу сайту в адресному рядку браузера, після цього DNS знаходить пов’язану з цією URL-адресою IP-адресу. Деякі називають DNS “телефонною книгою інтернету”.

Щоб направляти цей трафік, DNS використовує кілька типів записів, які називаються nameservers:

  • A – містить IP адресу (адреси) домену та субдоменів;
  • MX – вказує, куди мають доставлятися е-мейл повідомлення для домену;
  • TXT – дозволяє зберігати додаткову інформацію, наприклад SPF для верифікації е-мейла;
  • CNAME – дає змогу робити редиректи з одного субдомена на інші домени / субдомени.

Cloudflare додає себе в цей процес як DNS-сервер для вашого домену.

У підсумку це дає змогу Cloudflare обробляти вхідний трафік, тобто:

  • Перевіряти вхідний трафік на безпеку, і
  • Перенаправляти цей трафік на найближчий до відвідувача сервер для прискорення завантаження сторінок.

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

Як налаштувати Cloudflare за 5 хвилин

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

  1. Створіть обліковий запис у Cloudflare
  2. Додайте ваш сайт і дозвольте Cloudflare просканувати його DNS записи
  3. Виберіть тариф
  4. Підтвердіть записи, або змініть, якщо потрібно
  5. Замініть DNS записи на вашому сайті на DNS записи Cloudflare

Кожен крок детально:

1. Створіть обліковий запис у Cloudflare

Зайдіть на cloudflare.com і створіть новий акаунт:

1. Створіть обліковий запис у Cloudflare
Створіть обліковий запис

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

Після того як ви створили акаунт, Cloudflare запропонує вам додати сайт.

Додайте ваш сайт на Cloudflare
Додати сайт

Вставте ім’я домену та натисніть Add site. На наступному кроці Cloudflare просканує DNS вашого сайту, натисніть Next:

Додайте ваш сайт на Cloudflare
Натисніть Next

Сканування DNS записів може зайняти 1-2 хвилини.

3. Виберіть безкоштовний тариф

На наступній сторінці виберіть тариф. У цьому прикладі ми будемо використовувати безкоштовний тариф.

Виберіть безкоштовний тариф
Виберіть тариф FREE

Натисніть Confirm plan, на наступній сторінці Confirm.

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

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

Зазвичай на цій сторінці нічого не потрібно робити. Перевірте, що навпроти імені домену стоїть помаранчева іконка.

Підтвердіть або змініть DNS записи в Cloudflare
Подивіться DNS записи в Cloudflare

Залежно від налаштувань вашого сайту, ви можете перевірити, що:

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

Якщо все в порядку натисніть Continue.

5. Змініть ваші DNS записи на хостингу на DNS записи Cloudflare

На цій сторінці Cloudflare пропонує замінити ваші поточні DNS записи на DNS записи Cloudflare.

Змініть ваші DNS записи на хостингу на DNS записи Cloudflare
Натисніть Copy для копіювання записів

Перейдіть на сайт, де зареєстровано ваш домен, і змініть DNS записи.

Якщо домен зареєстровано на хостингу, зайдіть на хостинг. Якщо на сайті-реєстраторі, то зайдіть в адмін-панель реєстратора.

На хостингах це робиться в розділі Управління DNS.

Шукайте детальну інструкцію в документації вашого хостингу або реєстратора. Якщо ви не знаєте, як це зробити, зверніться до техпідтримки хостингу або реєстратора.

Після того, як ви змінили і зберегли DNS записи, поверніться на Cloudflare і натисніть Continue.

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

Змініть ваші DNS записи на хостингу на DNS записи Cloudflare
Консоль Cloudflare

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

Підключення Вордпресс до Cloudflare за допомогою офіційного плагіна

У Cloudflare є безкоштовний плагін для підключення до Вордпресс:

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

1. Встановіть і активуйте офіційний плагін

Встановіть плагін Cloudflare з репозитарію Вордпресс. Налаштування плагіна знаходяться в Налаштуваннях – Cloudflare. Натисніть на посилання, щоб підключити акаунт:

Підключення облікового запису Cloudflare
Підключення облікового запису Cloudflare

На наступному екрані введіть ваш е-мейл і API ключ.

Введіть е-мейл та API ключ Cloudflare
Введіть е-мейл та API ключ

Щоб знайти API ключ:

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

Вставте ключ у поле API Key у налаштуваннях плагіна на вашому сайті.

2. Увімкніть автоматичні налаштування

На сторінці Home ви можете зробити автоматичні налаштування в один клік. Натисніть Apply, плагін застосує потрібні налаштування. Список усіх налаштувань.

Увімкніть автоматичні налаштування
Натисніть Apply

Це базові налаштування, після цього потрібно зробити кілька налаштувань в адмінці Cloudflare.

Підключення Вордпресс до Cloudflare за допомогою W3 Total Cache

Деякі плагіни кешування можуть під’єднати сайт до мережі Cloudflare, W3 Total Cache один із них.

1. Увімкніть модуль Cloudflare у розділі Extensions

Натисніть Activate для ввімкнення модуля Cloudflare:

Увімкніть модуль Cloudflare у розділі Extensions
Активуйте модуль Cloudflare

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

2. Авторизуйтеся в акаунті Cloudflare

Натисніть Authorize, у вікні, що з’явилося, додайте е-мейл і API ключ.

Авторизуйтесь в обліковому записі Cloudflare
Натисніть Authorize, додайте е-мейл та API ключ

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

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

CDN — Авторизація в обліковому записі Cloudflare
CDN — Авторизація в обліковому записі Cloudflare

3. Зробіть базові налаштування Cloudflare

Після підключення акаунта Cloudflare до W3 Total Cache зробіть ці налаштування:

Зробіть базові налаштування Cloudflare
Скидати кеш під час оновлення сторінок
Налаштування кешування  Cloudflare до W3 Total Cache
Налаштування кешування

Залиште налаштування за замовчуванням або замініть на свої.

4. Налаштування обробки контенту

Увімкніть завантаження JS після завантаження основного контенту, і увімкніть мініфікацію js, css і html.

Мініфікацію та об’єднання в розділі W3 Total Cache Performance – Minify потрібно відключити.

Налаштування обробки контенту
Обробка контенту

У деяких випадках мініфікація та об’єднання працюють краще з плагіном, ніж з Cloudflare. Спробуйте обидва варіанти.

5. Обробка зображень

Увімкніть захист від використання ваших зображень на інших сайтах.

Обробка зображень
Забороніть хотлінкінг

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

6. Захист

Налаштування безпеки. Залиште значення за замовчуванням Medium або замініть на High:

Захист
налаштування безпеки

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

7. IP

Увімкніть підтримку IPv6:

Увімкніть підтримку IPv6
Увімкніть підтримку IPv6

8. SSL

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

Установки SSL та TLS
Установки SSL та TLS

Якщо у вас є або ви можете встановити SSL сертифікат, виберіть значення Full або Strict.
Якщо сертифіката немає, то встановіть Flexible.

Детальніше про це налаштування в наступному розділі.

Додаткові налаштування Cloudflare

У налаштуваннях Cloudflare ви можете зробити кілька налаштувань.

  1. Зробіть налаштування SSL
  2. Додайте примусове використання HTTPS на всьому сайті
  3. HTTP Strict Transport Security (HSTS)
  4. Мінімальна версія TLS
  5. Додайте 3 правила
  6. Правила файрволу
  7. Додайте двофакторну авторизацію

1. Зробіть налаштування SSL

У розділі Crypto (UPD. Зараз SSL/TLS) є кілька налаштувань SSL:

Зробіть налаштування SSL
Установки SSL

Off – Без активного сертифіката. Не рекомендується
Flexible – Трафік захищений між відвідувачем і Cloudflare, але не захищений між Cloudflare і сайтом
Full – Захищене з’єднання між відвідувачем і Cloudflare та Cloudflare і сайтом
Full (strict) – те ж саме, що Full, але з можливістю аутентифікації

Які опції використовувати:

  • Якщо у вас уже є сертифікат, або ви можете його встановити, використовуйте одну з опцій Full (залежно від типу сертифіката, який ви використовуєте).
  • Якщо ви не можете встановити SSL сертифікат, використовуйте опцію Flexible. Cloudflare встановить свій безкоштовний сертифікат, і сайт відображатиметься із “зеленим замком”.

Якщо ви використовуєте безкоштовний сертифікат від Let’s Encrypt, ви можете зіткнутися з проблемою, що сертифікат не перевипускається автоматично.

Ви можете спробувати вимкнути A-Записи на Cloudflare, щоб Let’s Encrypt отримував IP адресу сайту, а не Cloudflare.

Вимкніть 2 помаранчевих хмари
Вимкніть 2 помаранчевих хмари

Навіть якщо це спрацює, вам доведеться це робити кожні 3 місяці.

Замість цього ви можете отримати безкоштовний сертифікат Cloudflare, якщо виберете налаштування Flexible.

2. Додайте примусове використання HTTPS на всьому сайті

Увімкніть “Завжди використовувати HTTPS” у розділі SSL/TLS – Edge Certificates:

Додайте примусове використання HTTPS по всьому сайту
Cloudflare – SSL/TLS – Edge Certificates – Always Use HTTPS

Це правило буде примусово використовувати HTTPS на всіх сторінках сайту.

Примітка: Це ж правило можна налаштувати в одному з трьох безкоштовних правил у розділі Page Rules.

Різниця в тому, що в Page Rules ви можете створити правило для певної сторінки / сторінок, у розділі SSL/TLS створюється правило для всього сайту.

3. HTTP Strict Transport Security (HSTS)

HTTP Strict Transport Security (HSTS)
Cloudflare – SSL/TLS – Edge Certificates – HSTS

З розділу Help Cloudflare:

HTTP Strict Transport Security (HSTS, RFC 6797) – це заголовок, який дає змогу сайту визначати та застосовувати політику безпеки в клієнтських браузерах. Це примусове застосування політики захисту захищає сайти від атак з використанням більш ранніх версій протоколу, злому SSL і захоплення файлів cookie.

Він дає змогу серверу оголошувати політику, згідно з якою браузери підключатимуться тільки з використанням безпечних HTTPS-з’єднань, і гарантує, що кінцеві користувачі не пропустять критичні попередження безпеки.

HSTS є важливим механізмом безпеки для сайтів із високим рівнем безпеки. Заголовки HSTS враховуються тільки під час обслуговування через HTTPS-з’єднання, а не HTTP.

Зазвичай HSTS проявляє себе так:

  • Небезпечні посилання HTTP стають безпечними посиланнями HTTPS
  • Попередження SSL сертифіката або інші помилки показують повідомлення про помилку, які користувачі не можуть обійти.

Візьміть до уваги

Одним із найважливіших міркувань під час використання HSTS у Cloudflare є те, що після ввімкнення HSTS ваш сайт повинен, як і раніше, мати дійсну конфігурацію HTTPS, що відповідає заголовку HSTS, щоб уникнути недоступності сайту для користувачів.

Якщо SSL відключено за допомогою інших засобів (“сіру хмару” сайту з Flexible SSL, або перенесення сайту з Cloudflare), то сайт буде недоступний для користувачів протягом терміну дії кешованих заголовків Max-Age або доти, доки не буде відновлено HTTPS із заголовком HSTS зі значенням 0. Тому перед застосуванням HSTS уважно прочитайте попереджувальні повідомлення.

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

HSTS включає параметр “max-age”, який вказує тривалість, протягом якої HSTS буде продовжувати кешуватися і застосовуватися браузером. Цей параметр зазвичай встановлюється за замовчуванням на 6 місяців, однак ви повинні використовувати щонайменше 12 місяців, якщо хочете включити його до списку попереднього завантаження HSTS (див. нижче).

Спеціальне значення “0” означає, що HSTS вимкнено і більше не буде кешуватися клієнтським браузером. Протягом періоду часу, зазначеного в заголовку max-age, після успішного доступу до сайту через HTTPS, браузер застосовуватиме цю політику HSTS, вимагаючи HTTPS з правильно налаштованими сертифікатами.

Включення субдоменів з HSTS

Cloudflare підтримує параметр includeSubDomains у заголовках HSTS. Цей параметр застосовує політику HSTS від батьківського домену (наприклад, example.com) до піддоменів (наприклад, www.development.example.com або api.example.com). Будьте обережні з цим заголовком, тому що якщо якісь субдомени не працюють з HTTPS, вони стануть недоступними.

Попереднє завантаження HSTS

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

Без попереднього завантаження HSTS встановлюється тільки після початкового успішного запиту HTTPS, тому, якщо зловмисник може перехопити перший запит і пройти по HTTP, то HSTS можна обійти. З попереднім завантаженням цій атаці запобігають.

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

Використовуйте, якщо ви знаєте, що у вас завжди буде дійсний SSL-сертифікат, і сайт проксований через Cloudflare.

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

Виберіть версію TLS 1.1 для посилення безпеки:

Мінімальна версія TLS
SSL/TLS – Edge Certificates – Мінімальна версія TLS

5. Налаштуйте 3 правила

У розділі Page Rules ви можете додати спеціальні правила для сайту.

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

У цьому прикладі 3 правила будуть використані для:

  • Посилення безпеки wp-login.php
  • Виключення wp-admin з Cloudflare і посилення його безпеки
  • Зміцнення безпеки xmlrpc.php

Перейдіть у розділ Page Rules і натисніть Create Page Rule:

Налаштуйте 3 правила
Натисніть Create Page Rule

Правило #1: Зміцнення безпеки wp-login.php

Для посилення безпеки wp-login.php (або вашої сторінки авторизації) створіть правило ваш – site.com/wp-login.php* як у прикладі:

Зміцнення безпеки wp-login_php
Правило 1: Зміцнити безпеку wp-login.php

UPD. Додайте налаштування Browser Integrity Check – On.

SSL – Гнучкий

Cache Level – Bypass.

Правило #2: Виключення wp-admin з Cloudflare і посилення його безпеки

Для виключення wp-admin з мережі Cloudflare і посилення безпеки адмінки створіть правило ваш – site.com/wp-admin*:

Виключення wp-admin з Cloudflare і посилення його безпеки
Правило 2: Зміцнити безпеку wp-admin

Додайте налаштування Browser Integrity Check – On.

Правило #3: Зміцнення безпеки xmlrpc.php

Для захисту xmlrpc.php додайте правило ваш – site.com/xmlrpc.php*:

Зміцнення безпеки xmlrpc_php

У результаті має вийти так:

3 Правила Cloudflare
3 Правила Cloudflare

Правило для примусового використання HTTPS на всьому сайті

Якщо ви хочете створити правило для примусового використання HTTPS на всьому сайті, створіть правило http://*site.com/*:

Правило Page Rule: Завжди використовувати HTTPS
Правило Page Rule: Завжди використовувати HTTPS

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

Ще одна крута річ, яку ви можете використовувати для посилення безпеки, – ручні правила файрволу. Наприклад, ви можете показувати капчу всім відвідувачам з Китаю.

Налаштування знаходяться в розділі Firewall – Firewall Rules.

Cloudflare - Firewall - Firewall Rules
Cloudflare – Firewall – Firewall Rules

7. Використовуйте двофакторну авторизацію

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

Cloudflare пропонує кілька варіантів використання двофакторної авторизації:

  • Google Auth
  • Authy
  • TOTP

Налаштування знаходяться в розділі My Profile:

Використовуйте двофакторну авторизацію
Використовуйте двофакторну авторизацію

Висновок:

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

Створіть акаунт, додайте сайт і направте трафік через сервер Cloudflare. Після цього зробіть налаштування SSL, HTTPS, додайте правила і ваш сайт буде добре захищений.

Якщо ви хочете додати файрвол, вам потрібно купити підписку Pro, яка коштує 20$ на місяць.

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

Сподіваюся, стаття була корисною. Залишайте коментарі.

  • Костін Алекс

    ІТ-спеціаліст, геймер, фанат нових технологій та прогресу. Роблю огляди на нові технологічні новинки та ділюсь досвідом в програмуванні. Висвітлюю новини світу технологій.