16.04.2024 г. 659 просмотров.

Как избавиться от ботов через Cloudflare

Для того чтобы избавиться от наплыва ботов, необходимо задать базовые правила в Cloudflare.

Заходим в раздел Security — WAF

Жмём на кнопку Creat firewall rules

Дальше мы начинаем создавать фильтры. Обратите внимание, что ВАЖЕН ПОРЯДОК СОЗДАНИЯ. Чем раньше создано правило, тем оно приоритетнее. Приоритет можно менять перетаскиванием:

Чтобы вставить правило сразу готовым кодом, необходимо перейти в Edit expression:

Пропишем следующие 3 правила в порядке приоритета.

1 Правило:

(cf.client.bot) or (http.user_agent contains «Mail.RU_Bot»)
Действие: JS Challenge

2 Правило:
(ip.src in {::/0}) or (not ssl)
Действие: JS Challenge

3 Правило:
(not http.request.version in {«HTTP/2»«HTTP/3»«SPDY/3.1»}) or (http.referer eq» »)

Действие: JS Challenge

ВАЖНО!

При задании правил блокировки ботов, иногда можно случайно цеплять «хороших» ботов Яндекса и Google. В таком случае возникает проблема, при которой поисковые роботы поисковых систем Яндекс и Google при переходе на главную страницу сайта получают 403 ответ сервера. 

Чтобы не допустить такого исхода событий, необходимо прописать правило-исключение, и поставить его выше всех по приоритету.

Далее вставим само правило: 

(cf.client.bot) or (http.user_agent contains «Mail.RU_Bot») or (http.user_agent contains «YandexBot») or (http.user_agent contains «Googlebot») or (http.user_agent contains «YandexImages») or (http.user_agent contains «YandexVideo») or (http.user_agent contains «YandexWebmaster») or (http.user_agent contains «YandexMedia») or (http.user_agent contains «YandexBlogs») or (http.user_agent contains «YandexDirect»)

Затем необходимо выбрать действие «Пропускать», и выбрать пункт «Пропускать все остальные пользовательские правила»:

Затем остается только в списке правил, перенести наше созданное в самый верх списка приоритетов:

Если на сайте стоит SSL сертификат (а так сейчас в 99% случаев):

То выставить в разделе SSL режим Full:

Обновления HostCMS и Cloudflare

После установки Cloudflare бот hostCMS тоже не может прийти на сайт и сайт обновиться не сможет:

Не обнаружена система HostCMS. Попробуйте еще раз запросить обновление.
Обратите внимание — на основном домене текущего сайта должна быть доступна система управления, указание основного домена осуществляется в списке доменов.
Если ваш сайт работает через HTTPS, то у сайта должна быть установлена опция HTTPS.

Я спросил в техподдержке HostCMS — они ответили: Добавьте на Сloudflare IP нашего сервера в исключения: 89.108.90.79

 

 

А вы как блокируете ботов?
Ваш комментарий
Ваш сайт атакуют боты?
Мы поможем — оставьте заявку!
обязательные поля ввода
Заполняя данную форму, вы; соглашаетесь с условиями обработки персональных данных
Спасибо. Ваше сообщение отправлено.
В ближайшее время наш специалист свяжется с вами.
cook
Находясь на btb.su, вы соглашаетесь с тем, что мы используем куки-файлы
Подробнее