Cloudflare 403 Forbidden — причины ошибки и как понять, кто блокирует доступ

Cloudflare 403 Forbidden означает, что запрос был понят сервером, но доступ к странице или ресурсу запрещён. На практике это одна из самых запутанных ошибок, потому что источник блокировки может быть разным: сам Cloudflare, origin-сервер, firewall, WAF, .htaccess, ModSecurity или запрет по IP.

Главная задача при диагностике — быстро понять, кто именно отдаёт 403. От этого зависит и способ исправления.

Быстрое решение

  • Проверьте, есть ли на странице ошибки брендинг Cloudflare.
  • Если Cloudflare branding нет — ищите причину на origin-сервере.
  • Проверьте .htaccess, ModSecurity, firewall и IP deny rules.
  • Убедитесь, что IP-адреса Cloudflare не заблокированы на сервере.
  • Если 403 отдаёт Cloudflare — проверьте WAF, custom rules и security settings.
  • Сравните поведение сайта через Cloudflare и в режиме DNS only.
  • Посмотрите логи сервера и события безопасности в момент ошибки.

Что означает ошибка 403 Forbidden

Ошибка 403 Forbidden означает, что сервер понял запрос, но отказывается его выполнять из-за ограничений доступа. Это не ошибка отсутствующей страницы, как 404, и не ошибка падения сервера, как 500.

Проще говоря: страница существует, но вас до неё не пускают.

Чем Cloudflare 403 отличается от обычного 403

Если вы видите 403 без брендинга Cloudflare, это обычно означает, что ответ пришёл напрямую от origin-сервера. Чаще всего причина в правилах доступа на самом сервере: .htaccess, ModSecurity, запретах по IP или правах на файлы и каталоги.

Если же на странице есть брендинг Cloudflare, тогда блокировка уже сработала на стороне Cloudflare — например через WAF или другие защитные механизмы.

Cloudflare 403 Forbidden — основные причины

Самые частые причины ошибки:

  • WAF-правило Cloudflare заблокировало запрос;
  • custom rule или security feature Cloudflare посчитали трафик подозрительным;
  • origin-сервер блокирует IP Cloudflare;
  • в .htaccess есть deny-правила;
  • ModSecurity срабатывает на определённый запрос;
  • firewall на сервере режет нужный трафик;
  • есть запрет доступа к файлу, каталогу или ресурсу;
  • настроен доступ только для определённых IP, стран или user-agent.

Когда 403 приходит от origin-сервера

Если Cloudflare branding нет, ищите проблему на origin. Это классический сценарий, когда 403 вызывают серверные ограничения.

Чаще всего виноваты:

  • правила в .htaccess;
  • ModSecurity;
  • IP deny rules;
  • запреты в Nginx или Apache;
  • неправильные права доступа к файлам;
  • защита отдельных директорий.

Когда 403 приходит от Cloudflare

Если страница явно показывает блокировку Cloudflare, тогда причина обычно уже на его стороне. Чаще всего это:

  • WAF managed rules;
  • пользовательские security rules;
  • блокировка по IP, ASN или стране;
  • bot-защита и антискрейпинг;
  • другие функции безопасности Cloudflare.

В таком случае нужно проверять уже панель Cloudflare, а не только origin-сервер.

Как понять, кто именно отдаёт 403

1. Посмотрите на страницу ошибки

Первый признак — есть ли на странице брендинг Cloudflare. Если его нет, очень вероятно, что ответ пришёл от origin.

2. Проверьте логи сервера

Если 403 идёт от origin, это обычно видно в access log, error log, ModSecurity log или логах firewall.

3. Сравните поведение с DNS only

Временно переведите запись в Cloudflare в режим DNS only и проверьте сайт напрямую. Если 403 остаётся, значит блокировка почти точно на origin. Если исчезает, тогда нужно разбирать Cloudflare-настройки.

4. Проверьте security-события в Cloudflare

Если Cloudflare блокирует запрос, это обычно видно в панели безопасности, где отображаются сработавшие правила и тип блокировки.

Как исправить Cloudflare 403 Forbidden: пошагово

1. Проверьте .htaccess

На Apache-серверах 403 часто вызывает именно .htaccess. Проверьте, нет ли там:

  • Deny from all;
  • ограничений по IP;
  • запретов на директории;
  • условий, которые случайно режут Cloudflare или нужные запросы.

2. Проверьте ModSecurity

ModSecurity часто блокирует запросы, которые выглядят подозрительно: длинные URL, нестандартные параметры, POST-запросы, обращения к админке, XML-RPC, API и так далее.

Если 403 появляется на конкретных страницах или действиях, ModSecurity — один из первых кандидатов.

3. Убедитесь, что IP Cloudflare не заблокированы

Это очень частая причина. Если origin запрещает IP-диапазоны Cloudflare, то реальный пользователь до сайта не дойдёт нормально, даже если сам сайт технически живой.

Проверьте:

  • iptables;
  • UFW;
  • CSF;
  • fail2ban;
  • firewall у хостинга;
  • любые deny rules по IP.

4. Проверьте права доступа к файлам и директориям

Иногда 403 — это не WAF и не Cloudflare, а банально неправильные права на файл, папку или index-файл. Особенно это часто бывает после миграции сайта, ручной загрузки backup или смены пользователя на сервере.

5. Проверьте Cloudflare WAF

Если блокировка уже со стороны Cloudflare, посмотрите:

  • managed rules;
  • custom rules;
  • country blocking;
  • IP access rules;
  • bot protection;
  • другие security features.

Очень часто 403 появляется после слишком жёсткой настройки безопасности.

6. Проверьте, не блокируется ли конкретный URL или путь

Иногда проблема появляется только на определённых путях:

  • /wp-admin/;
  • /xmlrpc.php;
  • /.git/;
  • API endpoints;
  • страницы поиска;
  • страницы загрузки файлов.

В таких случаях причина почти всегда в точечном правиле или фильтре.

7. Проверьте IP, ASN и геоблокировки

403 может быть вызван блокировкой по стране, провайдеру, ASN или конкретному IP. Если часть пользователей открывает сайт, а часть получает 403, это очень вероятный сценарий.

8. Проверьте origin после миграции или смены защиты

После переноса сайта, включения новой защиты или изменения firewall старые правила часто продолжают работать, но уже конфликтуют с новой схемой Cloudflare. Особенно это касается anti-bot правил, ModSecurity и allowlist/denylist по IP.

9. Временно ослабьте защиту для диагностики

Если неясно, что именно режет трафик, временно отключите или ослабьте один слой защиты за другим:

  • custom rules;
  • часть WAF;
  • ModSecurity;
  • серверный firewall;
  • плагины безопасности WordPress.

После этого включайте всё обратно по одному, чтобы найти источник блокировки.

10. Соберите данные перед обращением в поддержку

Если причина не нашлась, подготовьте:

  • точный URL;
  • время ошибки;
  • скриншот страницы 403;
  • IP пользователя, который получил блокировку;
  • логи сервера;
  • данные из security-событий Cloudflare.

Так поддержка быстрее найдёт правило, которое срабатывает.

Особые сценарии

403 только у части пользователей

Скорее всего, работает блокировка по IP, ASN, стране, VPN, proxy или bot-риск-оценке.

403 только в админке WordPress

Часто виноваты security-плагины, ModSecurity, запреты в .htaccess или ограничения на wp-admin.

403 только на API или POST-запросах

Обычно это WAF, ModSecurity или custom security rules, которые считают такой трафик подозрительным.

403 после подключения Cloudflare

Очень вероятно, что origin начал блокировать IP Cloudflare или конфликтуют старые правила безопасности.

Advanced troubleshooting

  1. Сравните ответ сайта через Cloudflare и напрямую.
  2. Проверьте, есть ли 403 на всех URL или только на отдельных путях.
  3. Смотрите access log, error log и ModSecurity log одновременно.
  4. Проверьте, не режет ли сервер user-agent или referer.
  5. Убедитесь, что reverse proxy и балансировщик не добавляют собственный 403.
  6. Проверьте, не осталось ли старых deny rules после миграции.
  7. Сравните поведение для обычного браузера, мобильной сети и VPN.

Как избежать Cloudflare 403 Forbidden в будущем

  • не блокируйте IP-диапазоны Cloudflare на origin;
  • не включайте слишком жёсткие WAF-правила без тестов;
  • после миграции проверяйте .htaccess, firewall и ModSecurity;
  • тестируйте админку, API и формы после включения Cloudflare;
  • держите allowlist для нужных сервисов и собственных IP;
  • не дублируйте одинаковые блокировки сразу на нескольких уровнях.

Когда обращаться в поддержку

  • если вы не можете понять, кто именно отдаёт 403;
  • если блокировка плавающая и видна только у части пользователей;
  • если 403 появляется после включения WAF или миграции сайта;
  • если у вас нет доступа к логам сервера или firewall;
  • если проблема касается API, почты или нестандартного проксирования.

FAQ

Cloudflare 403 Forbidden — это всегда проблема Cloudflare?

Нет. Очень часто 403 приходит вообще не от Cloudflare, а от origin-сервера.

Как понять, что 403 отдаёт origin?

Если на странице нет брендинга Cloudflare, а в серверных логах виден отказ, причина обычно на origin.

Может ли .htaccess вызывать 403 через Cloudflare?

Да. Это одна из самых частых причин 403 без брендинга Cloudflare.

Может ли Cloudflare WAF вызывать 403?

Да. Managed rules и custom security rules часто блокируют подозрительные запросы именно кодом 403.

Почему после подключения Cloudflare сайт начал отдавать 403?

Часто потому, что сервер начал блокировать IP Cloudflare или старые правила безопасности оказались несовместимыми с новой схемой трафика.

Вывод

Cloudflare 403 Forbidden — это не одна конкретная проблема, а общий результат запрета доступа. Ключевой вопрос всегда один: кто именно отдаёт 403 — Cloudflare или origin-сервер.

Если идти в правильном порядке — сначала определить источник, потом проверить .htaccess, ModSecurity, firewall, IP deny rules и уже после этого разбирать WAF Cloudflare — причину обычно удаётся найти довольно быстро.

 

Ответить

Ваш адрес email не будет опубликован. Обязательные поля помечены *