Лучший сервис для защиты от брутфорса/парсинга для вебсайта?
Для защиты от постоянного парсинга веб-проекта хочется реализовать довольно простую схему (полностью избавиться от этого не получится - знаем, но это и не нужно, главное максимально усложнить эту задачу):
Показывать каптчу всем пользователям, кто сделал больше 10 запросов к серверу за, например, 1 секунду.
Если пользователь разгадал каптчу и снова нарушил правила, то банить сначала на 1 минуту, потом на час и т.д.
Но есть один очень важный аспект: нельзя банить поисковых ботов.
Пробовали Cloudflare, но они не позволяют показывать каптчу, у них только опция бана. Остальные облачные фаерволы не дают четкого описания таких мелочей у себя на сайтах, поэтому если кто знает какие сервисы помогут решить такую задачу, то просим поделиться.
Либо, может, есть еще какие-то варианты решения таких задач?
lololololo, возможно. Я столкнулся с таким сервисом, который сам парсил. Для пользователя всё ок, но как только начал парсить - получил хороший облом.
Теперь думаю как у себя сделать еще лучше.
lololololo, на самом деле да, бывают случаи, когда это решает проблему. Дело ведь не в том, чтобы полностью избавиться от парсинга, а в том, чтобы сделать его трудным. Ведь спарсить сайт за 1 день и за полгода - это весьма существенная разница. Тем более, в контексте того, что контент сайта постоянно меняется.
- роботам ограничить аппетит в robots.txt адекватным rps/rpm
- выставить тот же адекватный rps/rpm на уровне сервера с помощью rate limiting
результат:
- роботы без проблем индексируют
- обычным пользователям никаких капч и неудобств
- особо активным и левым ботам с аппетитом выше rate limit - автоматический бан или просто сброс запросов свыше лимита (тут на выбор по вашему желанию)
Могу предложить использовать testcookie в nginx для отсеивания ботов(с белым списком для поисковиков), В кратце это работает так - перед заходом на сайт генерится кука , без неё попасть на сайт нельзя, для пользователей это не вызовет проблем(и пройдёт не заметно, а боты в большинстве своём не пройдут
Sanes про белый список сказано в первом предложении. ̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻ ҉ большинство ботов пройдут мимо, если кому-то нужно пропарсить то ничего не остановит, а так избавит от большинства парсеров(т.к проще переключится на другой сайт, чем разбиратся почему на вашем не работает)
̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻̻ ҉ большинство ботов пройдут мимо, если кому-то нужно пропарсить то ничего не остановит, а так избавит от большинства парсеров(т.к проще переключится на другой сайт, чем разбиратся почему на вашем не работает)
Иногда нужно парсить конкретный сайт.
если кому-то нужно пропарсить то ничего не остановит
Ну почему? Гуглокапча замедлит и усложнит парсинг(придётся платить индусам за разгадывание)
Златослав Десятников, но всё же стоит и если парсить очень много, то уже не копейки, плюс капча добавляет задержку на каждый запрос парсера, да и максимально возможное количество одновременных запросов ограничивается количеством индусов, работающих на сервисах по разгадыванию капчи.