Когда вы сталкиваетесь с сообщением о том, что ваш IP-адрес заблокирован, то в голове возникает пара закономерных вопросов: «Как долго продлится бан IP, если он обозначен как временный?» и «Как обойти блокировку, если у вас постоянный бан или вы не хотите долго ждать разблокировки?».
Этот материал посвящён разбору причин временных блокировок, возможной длительности банов, а также вариантам обхода блокировок / восстановления доступа к нужным вам страницам, сайтам или веб-сервисам.
Временный бан IP означает, что блокировка будет снята через время. Обычно этот процесс автоматизирован.
Перманентный бан – это вечная блокировка. Она снимается только после разбирательств в ручном режиме.
Почти никогда вы не сможете получить чёткого ответа, например, «Ваш IP-адрес будет разблокирован через N-часов…». Чтобы лучше разобраться в деталях и получить адекватное понимание реалистичных сроков разблокировки, нужно погрузиться в тему.
Самое главное по существу блокировок IP-адресов:
|
Причина / триггер блокировки IP |
Показываемая ошибка (сообщение) |
Примерная длительность блока |
Обратимость (возможность отмены) |
|
Превышение частоты запросов (Rate limit) |
429 Too Many Requests |
1-15 минут (автоматически) |
Да (истекает сама) |
|
WAF или правила безопасности сервера (Cloudflare, ModSecurity и т.п.) |
403 Forbidden или 1020/1021 Cloudflare |
От нескольких минут до нескольких часов, иногда бессрочно |
Обычно – да |
|
Перебор пароля / много неудачных попыток авторизации |
403 Forbidden или 401 Unauthorized |
От 5-60 минут до нескольких дней или до ручной разблокировки |
Зависит от настроек правил безопасности |
|
Плохая репутация IP / наличие в чёрных списках и спам-базах (Spamhaus, AbuseIPDB и др.) |
403 или 451 Unavailable for legal reasons |
Бессрочно или до удаления из блэклиста |
Нет (только через обращение в поддержку спам-баз) |
|
Гео-блокировка |
403 Forbidden или Not available in this region |
Бессрочно или до снятия санкций |
Нет |
|
Сильная загрузка сервера |
429 или 503 Service Unavailable |
От нескольких минут до нескольких часов |
Обычно – да |
|
Бан от администратора ресурса |
403 Forbidden |
Бессрочно или до снятия ручной блокировки |
Нет (только через личные обращения к администратору) |
Если подвести краткий итог, то:
Очень редко случается так, что целевой сайт или сервис прямо говорит о конкретном таймере бана. Это делается намеренно – чтобы владельцы сетей ботов не подстраивали свои скрипты и не создавали паразитной нагрузки на серверы / хостинг.
Согласитесь, стартовая таблица добавила совсем немного конкретики по времени разблокировки, поэтому разберём наиболее частые типы банов и их последствия.
Этот вид бана IP наиболее распространён.
Во-первых, владельцы сайта и владельцы хостинга не заинтересованы в том, чтобы все вычислительные ресурсы сервера выделялись на обслуживание буквально нескольких клиентов. Это слишком дорого. Поэтому они анализируют типовые действия своих пользователей и понимают, что они обращаются к страницам примерно раз в 5-10 секунд, а одновременных сессий (вкладок или браузеров) открывают не более 7.
Если ваши действия превышают установленные лимиты, то сайт может временно блокировать подключения. Так он защищает остальных клиентов и обеспечивает общую доступность.
После бана IP пользователю при попытке обращения выдаётся страница-заглушка с ошибкой. Чаще всего это (для HTTP-протокола):
Cloudflare показывает свои коды, например, 102x.
Иногда система защиты может добавлять свои заголовки в HTTP-ответы сервера. Например:
При этом время временной блокировки будет варьироваться в широких пределах – от 5 минут до нескольких дней.
Почему так происходит?
Ответ одновременно и простой, и сложный. Всё зависит от настроек скриптов безопасности.
Например, сайт защищается по числу подключений с помощью штатного модуля веб-сервера NGINX – limit_req_module. Дефолтных значений в конфигах для него нет, поэтому администратор прописывает свои значения вручную – при создании нового сайта. Пусть это будут:
rate=10r/s;
burst=20 nodelay;
Настройки означают, что в среднем сервер будет считать нормальным до 10 запросов в секунду с одного IP-адреса. Но эпизодически он может допустить всплеск (burst) до 20 запросов. Если после 20 «быстрых» запросов частота обращений не нормализуется, то IP будет заблокирован.
Существует очень много решений для защиты сайтов:
На уровне модулей веб-сервера
На уровне сервера, но с помощью сторонних решений:
На уровне приложения / для защиты бэкенда:
CDN и WAF-сервисы:
Каждое из решений настраивается индивидуально – в зависимости от особенностей аудитории и архитектуры самого сайта.
Поэтому точное время блокировки IP никто и никогда вам не назовёт.
Тут больше подойдут общие рекомендации для сисадминов, которыми они делятся на профильных форумах:
Первичный автоматический бан обычно делают на короткое время – до 15-60 минут. Но при повторном нарушении IP блокируется уже на долгое время – от 1 до 3 дней. Это помогает кратно разгрузить сервер от ботов. Если нарушения слишком частые, то может накладываться постоянный бан.
Правила срабатывания веб-фаерволов заметно сложнее, чем в штатных модулях защиты веб-серверов.
Здесь анализируются уже не только число обращений или сессий в единицу времени, но и:
Некоторые WAF считают совокупный рейтинг пользователя. Благодаря этому владелец сайта может выстраивать более сложные алгоритмы защиты. Например, кто-то будет ждать максимальной суммы баллов, а кому-то достаточно уровня доверия в 80%, чтобы заблокировать пользователя.
Каждое правило блокировки может быть связано с разными типами действий. За какие-то будут назначаться временные блокировки с автоматическим снятием через заданное время, а где-то будет максимально жёсткое наказание в виде вечного бана.
Обходите временные блокировки и баны IP с помощью резидентных адресов.
Определить тип вашей блокировки можно только по косвенным признакам. Если ваш IP был временно заблокирован, то вы скорее всего увидите соответствующее сообщение на странице ошибки или в личном кабинете пользователя. Но не ждите дополнительных подробностей от провайдера. Это не в его интересах. Если он сообщит причину и сроки снятия блока IP, то этим вполне могут воспользоваться злоумышленники.
Если говорить об HTTP-ответах сервера:
Чтобы определить тип блокировки точнее, нужно:
Как можно было понять из вышесказанного, блок IP – это сигнал о том, что сайт пытается защититься от злонамеренных и просто вредных для него действий. Ниже типовые причины блокировок:
Сервер ограничивает количество обращений от одного IP за определённый период времени, чтобы защититься от перегрузки и автоматизированных запросов. Выявить достаточно просто: бан появляется, если вы слишком часто открываете страницы или совершаете слишком много переходов по ссылкам внутри. Аналогичные проблемы могут возникать при работе по API, а также при открытии нескольких браузеров или при работе с одним и тем же сайтом с разных своих устройств / из локальной сети / за одним роутером.
Реже – проблема в архитектуре сети вашего провайдера, если один IP выдаётся сразу на много пользователей (это так называемые «серые динамические IP»).
Тоже логичная реакция. Если пользователь слишком часто обращается к странице входа или к странице восстановления пароля, это сильно похоже на перебор паролей или на попытку взлома. В норме пользователь авторизуется один раз, а затем просто работает с сайтом. Даже если попытки входа успешные, то система безопасности может обоснованно заподозрить пользователя в проверке чужих учётных записей.
Живой человек всегда имеет свой предел активности. Даже если параметры подключения вписываются в rate-limits, WAF-системы всё равно могут выдать бан, если заподозрят автоматизацию действий. Ни один человек не сможет просмотреть тысячи однотипных страниц за короткое время. Деятельность ботов обычно строго регламентируется директивами файла robots.txt и правилами пользования (ToS). Алгоритмы выявления автоматического трафика могут быть очень сложными: по цифровых отпечаткам, браузерным профилям, токенам, HTTP-заголовкам и пр.
Если ротация IP и браузерного профиля сбрасывает ошибку, то причина точно в обнаружении парсера / автоматических запросов (иногда их отправляют вирусы и различные скрипты, о которых пользователь даже не подозревает).
Гео-блокировки могут быть связаны с особенностями работы самого сайта, а также с требованиями законов. Плюс владелец ресурса может вручную заблокировать трафик тех стран и регионов, которые он не рассматривает на роль полезных (там нет его потенциальной аудитории).
Факт выявляется сменой IP в привязке к разным локациям.
Адрес может быть заблокирован из-за действий предыдущих пользователей. Так бывает. Проверить причину блокировки можно прогоном своего IP по известным спам-базам.
Характер блокировки из-за работы вредоносного ПО или скриптов будет совпадать с тем, что мы описали для парсинга. Единственно отличие – вы точно знаете, что не пользуетесь парсером. Но при этом вам всё равно выдают временный или постоянный бан, который уходит после смены IP через прокси. Через непродолжительное время новый IP опять блокируется.
Ниже предметные шаги и рекомендации по снятию/обходу временных блокировок:
Советы простые. Чтобы не напроситься на бан IP, следует придерживаться следующих правил:
Смотрите также: Гайд по успешному парсингу без блокировок.