Боты и защита

Защита сайта от ботов: все способы

Способов защиты от ботов много, и у каждого своя цена: одни мешают людям, другие обходятся за минуту. Собрали всё в одном месте — от бесплатных настроек до антибот-сервисов.

Обновлено 11 ноября 20263 мин чтенияКоманда nbots

Содержание
  1. robots.txt — только для честных роботов
  2. Блокировка по IP и User-Agent
  3. Ограничение частоты запросов
  4. Капча
  5. Скрытое поле и проверка времени
  6. Поведенческий анализ и антибот-сервисы
  7. Сравнение способов
  8. Что выбрать
  9. Частые вопросы

Коротко

  • robots.txt и блокировка по User-Agent работают только против честных роботов.
  • Капча защищает форму, но мешает людям и не чистит Метрику и рекламу.
  • Надёжнее всего — оценка по браузеру, сети и поведению с проверкой для сомнительных посетителей.

robots.txt — только для честных роботов

Файл robots.txt просит роботов не заходить в определённые разделы. Его соблюдают поисковики и большинство SEO-сервисов. Вредные боты его просто игнорируют, поэтому как защита он не работает — это способ снизить нагрузку от «вежливых» краулеров. Готовые правила можно собрать в генераторе блокировки ботов.

Блокировка по IP и User-Agent

В nginx, Apache или панели хостинга можно запретить доступ отдельным адресам, подсетям и строкам User-Agent.

  • Плюсы: бесплатно, работает мгновенно.
  • Минусы: User-Agent подделывается одной строкой, а IP-адреса у ботов меняются через прокси. Список приходится постоянно обновлять, и легко случайно заблокировать живых людей из той же подсети мобильного оператора.

Ограничение частоты запросов

Если с одного адреса приходит больше N запросов в секунду — притормаживать или отказывать. Хорошо защищает от грубого парсинга и перебора паролей, но почти не помогает против накрутки и скликивания: такие боты ходят медленно и с разных адресов.

Капча

Классическая защита форм. Современные капчи вроде Яндекс SmartCaptcha часто обходятся галочкой «Я не робот», но всё равно:

  • снижают конверсию — часть людей уходит, не дождавшись проверки;
  • не спасают от ботов, которые решают капчу через сервисы распознавания за копейки;
  • защищают только форму, а статистику и рекламу — нет.

Разбор вариантов — в статье «Капча для сайта: какую выбрать».

Скрытое поле и проверка времени

В форму добавляют поле, которое человек не видит, а бот заполняет. Плюс проверяют, сколько секунд прошло от открытия страницы до отправки: человек не заполнит форму за полсекунды. Способ бесплатный и незаметный для людей, отсекает простых спам-ботов, но не справляется с ботами на реальном браузере.

Поведенческий анализ и антибот-сервисы

Самый надёжный подход — оценивать каждого посетителя по десяткам признаков сразу:

  • браузер: нет ли следов автоматизации, совпадают ли заявленные и реальные возможности;
  • сеть: дата-центр, прокси, VPN, репутация адреса;
  • поведение: движения мыши, прокрутка, скорость действий;
  • история: как этот посетитель вёл себя раньше.

Так работают антибот-сервисы. Хороший сервис при этом не блокирует людей вслепую: сомнительному посетителю показывает короткую проверку, а поисковых роботов пропускает после проверки по DNS.

Подберите защиту под свою задачуОтветьте на 2 вопроса
Что беспокоит больше всего?
На чём сделан сайт?
Выберите ответы — подскажем решение

Сравнение способов

СпособПротив кого работаетМешает людямЦена
robots.txtТолько честные краулерыНетБесплатно
Блокировка IP и User-AgentГрубые боты с постоянных адресовИногдаБесплатно, но время на поддержку
Лимит запросовПарсеры, переборРедкоБесплатно
КапчаСпам в формахДаБесплатно или по запросам
Скрытое полеПростые спам-ботыНетБесплатно
Антибот-сервисНакрутка, скликивание, спам, парсингПочти нетОт 0 ₽ в месяц

Что выбрать

Для небольшого сайта разумная связка такая: robots.txt и лимиты на сервере — от грубой нагрузки, а антибот-сервис — от того, что действительно стоит денег: фейковых заявок, мусора в Метрике и скликивания рекламы. Начните с наблюдения: посмотрите, сколько ботов на самом деле, и только потом включайте блокировку.

Частые вопросы

Какой самый простой способ защитить сайт от ботов?

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

Защитит ли robots.txt от ботов?

Нет. Это просьба, а не запрет: её выполняют поисковики и честные сервисы, а вредные боты игнорируют.

Не пострадает ли SEO от защиты от ботов?

Не пострадает, если роботов Яндекса и Google пропускать. Правильная защита проверяет их по обратному и прямому DNS — так подделать поискового робота нельзя.

Нужен ли программист, чтобы защитить сайт от ботов?

Для наблюдения и режима защиты — нет: код ставится в шапку сайта, как счётчик Метрики. Для проверки заявок на своём сервере нужно добавить один запрос в обработчик формы.

Чем антибот отличается от защиты от DDoS?

DDoS-защита фильтрует огромные потоки трафика на уровне сети, чтобы сайт не упал. Антибот разбирается с отдельными посетителями: накрутка, спам, скликивание, парсинг. Это разные задачи.

Сколько стоит защита сайта от ботов?

Базовые меры бесплатны. Антибот-сервисы для небольших сайтов стоят от 0 до нескольких тысяч рублей в месяц в зависимости от трафика. У nbots есть бесплатный тариф до 3 000 визитов в месяц.

Не будет ли защита мешать клиентам?

Правильно настроенная — нет. Большинство людей ничего не замечают, а тех, кто похож на бота (например, из-за VPN), просят один раз нажать кнопку.

Читайте также