К основному содержимому

DDoS-защита Cloudflare: как работает и как настроить

Cloudflare · 19.04.2026 · 5 мин чтения
Иллюстрация к статье «DDoS-защита Cloudflare: как работает и как настроить»

Cloudflare автоматически обнаруживает и блокирует DDoS-атаки на уровнях L3, L4 и L7. Для активации достаточно подключить сайт к Cloudflare — базовая защита работает без настройки.

Уровни DDoS-защиты по планам

ФункцияFreeProBusiness/Enterprise
L3/L4 DDoS✅✅✅
L7 HTTP DDoS✅ Базовая✅✅ Advanced
Managed Rules WAF❌✅✅
Advanced DDoS Analytics❌❌✅

Security Level

Security → Security Level управляет тем, как aggressively Cloudflare проверяет посетителей:

УровеньДействие
Essentially OffТолько явно заблокированные IP
LowБлок известных плохих IP
MediumСтандартный (по умолчанию) ✅
HighАгрессивная проверка CAPTCHA
I'm Under Attack!5-секундная JavaScript challenge для всех

I'm Under Attack Mode

При активной атаке включите экстренный режим:

Security → Security Level → I'm Under Attack!

Каждый посетитель увидит 5-секундную страницу проверки Cloudflare. Боты не пройдут, реальные пользователи — пройдут.

⚠️ I'm Under Attack Mode ломает API и автоматические запросы. Не оставляйте его включённым постоянно — только во время реальной атаки.

Rate Limiting

Security → WAF → Rate Limiting Rules → Create. Ограничьте число запросов с одного IP:

# Пример: не более 100 запросов за 60 секунд
Matching rule: http.request.uri.path contains "/api/"
Rate: 100 requests per 60 seconds
Action: Block (или Challenge)
✅ Rate Limiting особенно полезен для защиты /wp-login.php, /xmlrpc.php, форм авторизации и API-эндпоинтов.

Managed Challenge, JS Challenge и CAPTCHA

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

Тип проверкиЧто видит посетительУстойчивость к ботам
Managed ChallengeЧаще всего ничего — проверка в фонеВысокая, адаптируется под угрозу
JS ChallengeКороткая страница-редирект (~5 секунд)Средняя, требует исполнения JS
Legacy CAPTCHAВизуальная головоломкаСредняя, раздражает пользователей
BlockСтраница отказа в доступеМаксимальная, но без права на ошибку

Managed Challenge — рекомендуемый вариант почти везде: Cloudflare сам выбирает степень проверки на основе репутации IP и поведения браузера.

Разбор сообщений об атаке

«This website is under a DDoS attack» на странице посетителя

Это интерстициальная страница, которую Cloudflare показывает автоматически при аномальном всплеске трафика, даже без ручного включения I'm Under Attack Mode. Она держится от нескольких минут до момента, пока трафик не вернётся к обычному уровню. Отключить её вручную нельзя — она часть автоматической защиты уровня сети.

Легитимные пользователи жалуются на блокировку

Частая причина — Security Level стоит на High или включён I'm Under Attack Mode дольше, чем нужно, либо правило Rate Limiting настроено слишком строго для общего NAT-адреса офиса или мобильного оператора, из-за которого много реальных пользователей выглядят как один IP с аномальной частотой запросов.

Проверка что защита работает

# Проверить заголовок, показывающий тип пройденной проверки
curl -I https://example.com/ | grep -i cf-mitigated

# Значения:
# cf-mitigated: challenge   — посетитель прошёл challenge
# (заголовок отсутствует)  — запрос обработан без дополнительной проверки

Когда встроенной защиты недостаточно

  • Нужна защита на уровне приложения от медленных low-and-slow атак, которые не создают заметного всплеска трафика — здесь нужен WAF с точными правилами, а не только автоматический DDoS-слой.
  • Атака идёт не по HTTP, а напрямую на IP сервера в обход Cloudflare — proxied-режим не защищает от этого, нужен Spectrum или смена реального IP с закрытием прямого доступа.
  • Нужны SLA и гарантии времени реакции — базовая защита работает "best effort", формальные гарантии есть только в контрактах уровня Enterprise.

Security → Events показывает не только заблокированные, но и пропущенные после проверки запросы — по столбцу Action можно отфильтровать именно те, что попали под автоматическую DDoS-защиту, и увидеть, с каких стран или ASN шёл основной трафик атаки.

После включения I'm Under Attack Mode держите его максимум несколько часов: challenge проходит каждый уникальный посетитель, включая поисковых ботов, — долгое использование режима может временно снизить видимость сайта в поиске из-за невозможности обхода challenge краулером.

Managed Challenge и автоматическая DDoS-защита работают независимо от Bot Fight Mode — включение обоих одновременно не конфликтует и обычно даёт лучший результат, чем любой из инструментов по отдельности.

Для проверки соответствия текущей нагрузки норме сравнивайте графики Analytics → Traffic за последние 24 часа и за предыдущую неделю — резкий необъяснимый рост числа запросов с одного ASN обычно первый признак начинающейся атаки ещё до появления интерстициальной страницы.

Частые вопросы

Отключается ли I'm Under Attack Mode автоматически после завершения атаки, или его нужно выключать вручную?

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

Будет ли работать защита Cloudflare, если домен подключён в режиме DNS-only, без проксирования?

Базовая защита от объёмных атак на уровне сети работает даже без проксирования, потому что IP-адрес сервера всё равно виден в DNS. Но защита уровня приложения — Security Level, Rate Limiting, Managed Challenge — применяется только к трафику, который реально проходит через Cloudflare. Для полноценной защиты от HTTP-атак домен должен быть проксирован, то есть «облачко» включено.

Может ли агрессивная защита заблокировать легитимные API-запросы и вебхуки платёжных систем?

Да, при высоком уровне защиты или включённом экстренном режиме challenge может затронуть и автоматические запросы: вебхуки платёжных систем, интеграции и серверные API-клиенты не умеют проходить проверку браузера. Для таких адресов создают исключение правилом доступа по IP-адресу отправителя или по конкретному пути, чтобы защита не трогала служебный трафик, но продолжала проверять обычных посетителей.

Нужно ли дополнительно настраивать защиту на самом сервере, если домен уже под Cloudflare?

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

Статья помогла?
← Назад в базу знаний Задать вопрос поддержке