С
Статьи
650
15 Июня
0

Как заблокировать ботов на сайте? Семь способов защиты от накрутки ботов и атак

Roma

Вебмастера всегда рады новым пользователям, зашедшим на сайт. Вот только среди них могут присутствовать не только заинтересованные в релевантном контенте читатели, но и неживые сущности… Боты, сующие свой нос во все аспекты работы площадки и повышающие потребление серверных мощностей. В общем, надоедливые паразиты, от которых следует избавляться.

Кто такие боты и что они делают на моем сайте?

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

Например, темы для создания свежего контента, уникальные фичи в дизайне, содержимом CTA-элементов и т.д.

Боты, посещающие интернет-ресурсы, подразделяются на следующие типы:

Поисковые краулеры – роботы поисковиков, приходящие на сайт с благими намерениями. При этом поисковики используют разных ботов для индексации разных типов контента. Например: Googlebot, Googlebot-Video, Googlebot-Image и т.д.

Боты рекламных платформ – наведывается на сайт для проверки качества транслируемой на нем рекламы. А также для сбора аналитических данных по эффективности кампаний. Например: Mediapartners-Google,AdsBot-Google-Mobile и другие.

Боты крупных аналитических платформ – парсят сайты в коммерческих целях для предоставления информации о площадках в ответ на запросы своих клиентов. Например: SemrushBot, AhrefsBot и т.д.

Самописные парсеры – боты, создаваемые разработчиками в индивидуальном порядке, для сканирования определенного сегмента сайтов. Например, сервисов объявлений и площадок риэлтерских контор для формирования выдачи на специализированном сайте-агрегаторе. 

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

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

Патогенное воздействие роботов на интернет-ресурс и авторитет бренда, который он представляет, не ограничивается плагиатом контента и дизайна. Некоторые боты при визите на сайт могут запрашивать большое количество информации и генерировать одновременно тысячи запросов к серверу. Что по своему эффекту сравнимо со средней по силе DoS-атакой, в результате которой площадка становится временно недоступной для обычных пользователей. Поскольку все мощности сервера, выделенные хостером в рамках приобретенного тарифа, уходят на обработку запросов, посылаемых ботом.

При этом виновником такого «торжества» может быть парсер, принадлежащий не только хакерской группировке, но и вполне добропорядочной аналитической платформе. Например, всем известной SEMrush.

А вы не знали, откуда SEO-платформы берут данные для своих инструментов? Конечно же, добывают с помощью своих ботов. И чем больше клиентов у таких платформ, тем сильнее их парсеры нагружают посещаемые сайты.

Cпособы блокировки ботов на сайте

К сожалению, роботы не понимают человеческого языка. И табличку «на дверях» сайта, информирующую о запрете неживым сущностям посещать площадку, они проигнорируют. Поэтому для блокировки ботов используются другие, более действенные способы:

Nginx.

Через директивы, заданные в файле .htacces.

Через файл robot.txt.

С помощью Cloudflare.

Используя специализированные плагины.

Нанять для решения проблемы профессионала.

Но какое из перечисленных антиботовых средств больше подходит для конкретной площадки? Чтобы понять это, рассмотрим каждое из них более подробно…

Блокировка ботов с помощью Nginx

Этот метод борьбы с ботами доступен только клиентам, арендующим VPS или отдельный физический сервер. Поскольку nginx представляет собой программное обеспечение для развертывания на серверах. То есть, для запуска на отдельных экземплярах физических или виртуальных машин. Поэтому использование данного метода ограничено. Но при этом отличается более высокой эффективностью. Устанавливаемые с его помощью ограничения блокируют негативное воздействие ботов на весь сервер, а не только на отдельные сайты.

Для применения данного средства:

В файловой системе сервера в папке /etc/nginx создаем отдельный конфигурационный файл с расширением .conf.

И в директиве if ($http_user_agent ~* "name_bot") {return 403;} вместо name_bot подставляем имя бота, которого будем банить.

Блокировка ботов с помощью файла .htaccess

Данный файл также является конфигурационным инструментов, действующим на уровне сервера. Но в отличие от упомянутого выше средства .htaccess позволяет задавать блокировки на уровне каталога. Поэтому широко используется для борьбы с ботами на сайтах, расположенных на одном сервере. Но заданные с помощью .htaccess блокировки будут применяться только к той площадке, в каталоге которого он размещен.

Чтобы блокировать ботов с помощью файла .htaccess, выполняем следующие действия:

Находим его в файловой системе сервера в папке с названием сайта.

Открываем файл и вставляем в него следующий код:

# BEGIN HanaBot Blocker

SetEnvIfNoCase User-Agent "bot name1|bot name2|bot name3|" kill_bot

Deny from env=kill_bot

# END HanaBot Blocker

Блокировка ботов с помощью файла robot.txt

Этот файл является специализированным решением для ограничения доступа ботов на сайты. Но в отличие от предыдущих двух методов с его помощью можно заблокировать посещение роботами не только всего ресурса, но и отдельных его каталогов. При этом заданные в нем ограничения будут действовать только на уровне домена, а не поддоменов.

Через robot.txt забанить ботов можно, используя директиву User-agent. Например:

User-agent: name_bot

Disallow: /

Справочная информация:

Чтобы понять, какие боты чаще всего атакуют сайт и пожирают ресурсы сервера, достаточно изучить статистику, предоставляемую хостером. Также в панели управления можно установить приложение AWStats, которое агрегирует подробную аналитику по сайту. В том числе и по посещающим его роботам и краулерам.

Cloudflare

Но перехватывать ботов на сайте можно не только через панель управления хостингом, а и через CDN. Сети доставки контента обеспечивают быстрый доступ к контенту площадки пользователям из разных стран. А также позволяют фильтровать получаемый ресурсом трафик с помощью правил, заданных на стороне брандмауэра CDN.

Самая популярная CDN – Cloudflare. Чтобы заблокировать в ней визиты на сайт злополучных роботов, выполняем следующие действия:

  • Подключаем сайт к CDN.
  • В боковом меню в разделе Security переходим на вкладку Firewall Rules.
  • Вводим название правила («1»).
  • В выпадающем списке Field выбираем User Agent. В качестве оператора используем equals, а в поле Value вводим имя бота. Чтобы одним правилом заблокировать сразу несколько краулеров, нажимаем Or и добавляем еще одну строку с условиями («2»).
  • Внизу выбираем нужное действие с ботами («3»).
  • Чтобы созданное правило вступило в силу, нажимаем внизу синюю кнопку («4»).

Как видите, настройка CDN на блокировку роботов - не такое уж легкое дело. Поэтому многим владельцам сайтов будет проще использовать специальные плагины… Или просто нанять спеца, который сделает за вас всю работу. Не знаете где искать профессионалов в данной отрасли? Подсказку на этот вопрос вы найдете в конце статьи.

Специализированные расширения

Как видите, большая часть противоботовых средств связано с прописыванием правил в конфигурационных файлах сайта. Но если ваша площадка развернута на основе популярного движка, то данный процесс можно упростить с помощью специализированных плагинов. Особенно много таких расширений создано для WordPress. Вот несколько проверенных решений:

  1. Blackhole for Bad Bots – более 30 тыс. установок.
  2. STOP BAD BOTS – плагин используют больше 10 тыс. сайтов.
  3. Spider Blocker – более 50 тыс. установок.

Где найти специалистов по борьбе с ботами на сайте?

Самостоятельная борьба с неживыми сущностями на своей интернет-площадке требует времени. А также серьезных навыков администрирования сайтов. К тому же в некоторых случаях может потребоваться комплексный подход к решению проблемы нашествия ботов. Поэтому если не уверены в своих возможностях, лучше обратиться к услугам профессионалов, которых можно за недорого нанять в Kwork.

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

А можно обойтись более традиционными средствами - запретами, заданными в конфигурационных файлаах. Стоимость таких кворков составляет всего 500 руб.

Нашествие ботов на сайт – это не обреченность и не злой рок, а лишь маленькая напасть… С которой, обладая минимальными знаниями и умениями, можно справиться буквально за несколько минут. Тем более что нужные сведения вы уже почерпнули из этого руководства по борьбе с ботами.

0 комментариев
Добавить комментарий