SEO-кейсы
November 15, 2023

Как отбиться от накрутки ботов

Сразу оговорка — решение не мое, а уважаемых коллег, за что им будет отдельная благодарность.

Решение №1

Блокировка трафика через Cloudflare

Ниже список правил и краткий мануал о том, как за 5 минут отбиться. Здесь надо понимать, что последний тренд разворачивать ботовые сетки на IPv6, скорее всего этого правила вам будет достаточно, но заодно актуализируем все остальные.

🖍 Все правки происходят через Edit expression, чтобы не перепечатывать правила, вставляете строчку и жмете Use expression builder.

Итак, заходим в CloudFlare, добавляем сайт, переходим в Security - WAF, жмём Creat rule и погнали:

🧡Правило #1: Пускаем хороших ботов
Rule name: Good Bots
Правило - (cf.client.bot) or (http.user_agent contains "Mail.RU_Bot")
Action: Skip (пропускаем) и ниже выбираем все доступные галочки. Жмём Save.

🧡Правило #2: Фильтруем IPv6 и заход на HTTP
Rule name: IPv6 / HTTP
Правило: (ip.src in {::/0}) or (not ssl)
Action: Managed Challenge

🧡Правило #3: Проверяем всех, кто идет с протоколом меньше HTTP2 или заходит напрямую
Rule name: HTTP<2 / Direct
Правило: (not http.request.version in {"HTTP/2" "HTTP/3" "SPDY/3.1"}) or (http.referer eq "")
Action: JS Challenge

🧡Правило #4: (доп.) Блокируем страны. В метрике открываем Отчёты - Аудитория - География и проверяем на аномалии.
Rule name: Country Block
Правило: (ip.geoip.country ne "RU" and ip.geoip.country ne "BY" and ip.geoip.country ne "KZ") или (ip.geoip.country eq "GB")
Action: Block (всех кроме указанных стран - заблокировать, либо блокируем только выбранную страну).

Статистика Cloudflare

Дополнение к решению:

Фактически, все боты сейчас гуляют через IPv6, просто это дешевле и практичнее, поэтому если к вам ломятся накрутчики, то как и было сказано ранее вероятнее всего вам нужно работать только с этим правилом. Проблема в том, что Managed Challenge, через который мы рубим накрутчиков, затрагивает и живых пользователей - они видят промежуточный экран клауда и ожидают пока пройдут проверку, это не есть хорошо, особенно когда имеется альтернатива.

❔ Что вообще делать и как разобраться, какой тип ботов вам гонят: настраиваем правила из поста выше и смотрим в течении пары часов, на какое правило приходится самая большая нагрузка (прямые заходы, IPv6, HTTP<2 и т.д).

➡️ Если это IPv6, то все что нам необходимо сделать - выключить совместимость c IPv6 (https://developers.cloudflare.com/support/network/understanding-and-configuring-cloudflares-ipv6-support/) в настройках сети (раздел Network в сайдбаре). Но дело в том, что тумблер включен и через интерфейс его не выключить, поэтому действуем по инструкции:
- Переходим по ссылке
(https://dash.cloudflare.com/profile/api-tokens)- Получаем Global API Keys
- Заходим на сайт (https://cloudflare.mikfoxi.com/) и вбиваем почту, API и ищем пункт Отключение IPv6
- Жмём Запустить выполнение и дожидаемся подтверждения
- Обновляем страницу и видим, что тумблер выключен

☑️С этого момента боты больше не могут попасть на сайт, а вот живые люди из под операторов Мегафона и МТС проходят без проблем. Тестировал все выходные, результаты на скриншоте.

Что случилось после

Источник — https://t.me/heymoneymaker

Собрано для канала — https://t.me/+t1xF8qiS07oyN2E0