Речь пойдёт о ботах накрутчиках, которые ходят по сайтам и создают себе цифровой профиль, эдакий отпечаток пользователя в сети. Посещая различные сайты они маскируются под обычных людей со своими интересами.
Блокировка ботов - занятие более рискованное, чем кажется на первый взгляд.
Делайте это ИСКЛЮЧИТЕЛЬНО в тех случаях, когда Вы на 146% уверены, что по-другому никак и количество ботов превышает хотя бы 20% от общего трафика
Внимание! Статья потеряла свою актуальность из-за блокировки Cloudflare в России.
Что за боты такие?
В основном - это боты, использующие мобильные прокси и мобильные устройства для посещения совершенно разных сайтов.
Им нужно "нахаживать" свои сетевые профили, то есть создавать цифровой отпечаток активности, иллюзию реального человека.
Их глобальные цели впоследствии:
- накручивать поведенческие факторы сайтам,
- скликивать конкурентов в выдаче,
- сливать бюджет в Директе или портить ПФ.
И несмотря на заверения саппорта Яндекса о том, что такие боты не влияют на позиции сайтов, в Метрике мы часто видим посещения с нулевой длительностью, что как минимум портит статистику и создаёт в ней шум.
Плюс от них нет никакой пользы в плане показов рекламы, так как отдельный счетчик РСЯ показывает статистику без учёта бот трафика. Скорее всего эти боты используют AdBlock.
Действительно ли они портят позиции сайтов сказать сложно. Кто-то забивает на них, а другие борятся до последнего выжившего посетителя.
Метрика РСЯ ботов не учитывает, но обычный счетчик видит. Но тут, возможно, дело в том, что у ботов стоят адблоки для экономии трафика и ресурсов.
Liveinternet счетчик, на удивление, с отсеиванием ботов справляется гораздо лучше и показывает более "чистую" статистику.
▲Когда надо блокировать ботов?
- Если доля роботных визитов приближается или переваливает за 50%.
- Если есть подозрения, что боты сильно портят ПФ сайта или начались просадки по позициям и трафику.
- Блокировать ботов можно на прокладках (прелендингах) для отсеивания ботов, чтобы получать более "чистый" трафик.
Не надо блокировать ботов исключительно в целях профилактики.
Прежде чем банить любой трафик, стоит 100 раз подумать!
Блокировка ботов подразумевает либо полную блокировку какого-то трафика, либо ввод каптчи. А чем меньше кликов и других действий делает обычный пользователь - тем лучше.
▲В чем опасность блокировки ботов
Прежде чем отладить и довести до совершенства свой фильтр мне пришлось наломать дров.
Первая опасность - можно случайно забанить "хороших" ботов.
Не все помнят, но я напомню, что у каждой поисковой системы не один и не два бота, а с десяток, а то и с два. Основной индексирующий бот, бот для получения картинок, рекламный бот, бот для фидов, блогов, новостной бот и так далее. И у каждого свой юзер агент и, возможно, IP.
Второй риск - под фильтр могут попасть обычные пользователи. Но это менее страшно, так как те, кто не смог нажать на галочку "я не бот", возможно слишком ленивые и от них и так было бы мало пользы )))
Третье - лишняя логика. Я всегда стремлюсь выполнять правило: чем проще - тем лучше. Дополнительные фильтры усложняют логику работы сайта. О них можно легко забыть, а потом встретить непредвиденные, неочевидные проблемы. И эти проблемы не сразу можно будет связать с фильтрацией трафика. Самый простой пример - какие-то верификации сайта на сервисах (подтверждение владением).
▲Как заблокировать ботов?
Есть очень большое количество сопобов блокировки. Можно блочить по IP, маскам, провайдерам и прочим параметрам, но все эти способы подразумевают знание того, что Вы делаете. И тут риск ошибки возрастает в разы.
Поэтому пойдём моим любимым путём, выбрав самое простое и действенное решение.
Для этого нам понадобится подключить сайт к Cloudflare.
Статья в тему: как обойти блокировку ECH от Cloudflare.
Далее порядок действий следующий:
- Выбираем добавленный домен в Cloudflare.
- В панели слева выбираем Security > Security rules.
- Нажимаем кнопку Create rule > Custom rule.
WAF расшифровывается, как Web Application Firewall, что переводится, как Брандмауэр веб-приложения.
Примечание: клауд немного изменил интерфейс в одном из своих последних обновлений, теперь некоторые кнопки, формы и заголовки немного по другому называются. Например вместо WAF сейчас в заголовке страницы написано "New Custom Rule". Возможны и другие изменения, но сам принцип остался прежним, а мне, если честно, очень влом переделывать все скриншоты.
Откроется вот такая страница:

- Rule name - название правила, ни на что не влияет, можно написать любое, например "Bot fight".
- Ниже расположен конструктор правил. При желании можно воспользоваться им и настроить правила вручную.
Но я же знаю, насколько ты ленивая жопа, поэтому список правил можно будет импортировать списком. О правилах будет ниже.
- Choose action - здесь можно выбрать действие, которое будет применяться к трафику, который будет соответствовать критериям указанных правил.
Чтобы оставить возможность обычным пользователям посещать сайт, если их визит будет похож на ботовый, лучше выбрать тут Managed challenge - это ввод каптчи.
Либо, если на 100% уверены в своих правилах, можно выбрать Block, но я крайне не рекомендую это делать.
- Place at. Select order - каким по счету будет выполнено это правило (целиком). Если у Вас нет других правил, то не важно, что тут выбирать. Если есть другие правила, то борьбу с ботами можно выполнить на первом месте.
Правила WAF фильтра
Это универсальные и самые "лёгкие" правила. При желании там можно накрутить разного и ужесточить фильтрацию ботов.
Так же обратите внимание на то, что боты, а точнее их создатели могут быть весьма упоротыми личностями и в зависимости от важности захаживания на Ваш сайт эта борьба может затянуться. На каждое Ваше действие возможна ответочка с их стороны.
Но чаще этим никто не заморачивается и ботоводы просто забивают на Ваш сайт. Если это не конкуренты, конечно.
Нажимаем кнопку Edit expression, откроется текстовое поле, в которое вставляем следующее содержимое (ниже пояснение, что это всё означает):
(not http.user_agent contains "yandex.com/bots" and not http.user_agent contains "google.com/bot" and not http.user_agent contains "google.com/mobile/adsbot" and not http.user_agent contains "Google-Site-Verification" and not http.user_agent contains "Google-Read-Aloud" and not http.user_agent contains "Googlebot" and not http.user_agent contains "Storebot-Google" and not http.user_agent contains "Google-InspectionTool" and not http.user_agent contains "GoogleOther" and not http.user_agent contains "Google-CloudVertexBot " and not http.user_agent contains "Google-Extended" and not http.user_agent contains "APIs-Google" and not http.user_agent contains "AdsBot-Google" and not http.user_agent contains "Mediapartners-Google" and not http.user_agent contains "Google-Safety" and not http.user_agent contains "FeedFetcher-Google" and not http.user_agent contains "GoogleProducer" and not http.user_agent contains "bing.com/bingbot" and not http.user_agent contains "MicrosoftPreview" and http.referer eq "")
Переключившись обратно, нажав на Use expression builder, должны увидеть такую картину:

Что означают эти правила
Проанализировав десятки тысяч посещений ботов я выявил паттерн их поведения - в 90% случаев они заходят на сайт без реферера, то есть из закладок.
Но проблема в том, что и хорошие боты поисковых систем могут заходить без реферера.
Поэтому нужно исключить хороших ботов, а сделать это проще всего, указав их User-agent.
Списки юзер агентов:
- Яндекс боты - https://yandex.ru/support/webmaster/robot-workings/check-yandex-robots.html#robot-in-logs
- обычные Google боты - https://developers.google.com/search/docs/crawling-indexing/google-common-crawlers
- специальные Google боты - https://developers.google.com/search/docs/crawling-indexing/google-special-case-crawlers
- Google боты, активируемые пользователями - https://developers.google.com/search/docs/crawling-indexing/google-user-triggered-fetchers
- Bing боты - https://www.bing.com/webmasters/help/which-crawlers-does-bing-use-8c184ec0
Перечисленные боты НЕ будут блокироваться моими правилами.
Если нужны какие-то более специфические боты, нужно будет добавить их в список самостоятельно.
▲Как понять, что блокировка работает?
После создания правила в WAF, через некоторое время будет отображаться статистика за последние сутки:

- CSR - Challenge solved rate, коэффициент решения каптчи, чем меньше - тем лучше (значит, что правила работают). Формула: (решенных каптч) \ (всего показанных каптч).
- Activity last 24 hours - активность за последние 24 часа. По клику можно попасть на страницу Security > Events со списков всех событий, связанных с безопасностью, где можно в частности посмотреть подробности по каждому срабатыванию WAF фильтров (ip, user agent, страницу входа и тд).
Результаты
Правила блокировок проходили несколько итераций. Для каждого сайта возможен индивидуальный подход.
На скриншотах вертикальными красными линями я обозначил выкатывание двух основных версий правил блокировок ботов.
Прямые заходы на сайт с 2000 до 500, а затем и до 20:

Доля визитов с роботами с 50-80% до 5%:

Время на сайте выросло с 15-20 секунд до 30-50 секунд в среднем и в пике до 1,5 минут:

Отказы с 70% до 50%, а после последних правок до рекордных 15-20%:

В вебвизоре наконец-то исчезли посещения с нулевым временем визитов.
Картина ДО:

После блокировки ботов выросла, как активность, так и время на сайте:

Повлияло ли на позиции и трафик?
Прошло мало времени, результатов еще нет.
Обновлю статью через какое-то время, когда будет чем поделиться.
▲
Комментарии
К сожалению все меняется... Как и боты....
Добавить комментарий