На уязвимости мне пофиг, я больше страдаю от того что тащат у меня все разные умельцы.
Чтобы спарсить пару сотен тысяч страниц (а у меня их более 200.000).
Вот я и пытаюсь усложнить парсинг до "экономически не выгодно" или "млять там этот дебил такого накрутил, я задолбался уже"
по 3-5 запросов, это на прокси разоришься. + HTTP/2.0 у меня разрешен из небольшого числа стран, а это еще очень сильно сужает возможности использования прокси.
Я же хочу ввести два лимита (в минуту и в час)
+ я все же планирую прикрутить еще пару мулек, по типу бана тех кто не загружает стили, мож еще че-то придумаю.
Только шумиха и массовый позор в СМИ заставят их шевелиться.
Если бы крупные СМИ подняли тему, лавочку быстро бы прикрыли.
Давайте начнем с Хабра.
Да, с кукой не вариант. Либо проверять вообще любую куку (но я так и не смог понять как правильно это записать) либо не использовать это.
У меня еще идея родилась.
HTTP/1.0 - выключен
HTTP/1.1 - лимитирован так что там фиг пролезешь
HTTP/2.0 - тут живые юзеры и сюда же придет нормальный кодер, через пол часика/час, когда поймет что ему мешает парсить ваш сайт. Да он тоже лимитирован, но значительно слабее, чтобы не мешать нормальным людям. И при желании за несколько дней можно вытянуть весь сайт.
Идея вот какая, на протоколе HTTP/2.0 если идет более
15 запросов в минуту + если более 500 в час - юзеру показывать страницу в гуглкапчей.
И пока не пройдет дальше не пускать.
Как это можно реализовать?
Сорее второй вариант - в бан их!
Ну че-то подозрительно сотни (а то и более 1000) запросов на мой скромный сайт от офисного планктона Майкрософта.... за пол дня....
А вот пример - 13.93.82.28 , написано Microsoft Corporation, а рефер такой
Это нормально? Почему не пишет что бот?
еще пример 52.169.88.181, написано Microsoft Corporation, а рефер такой
52.164.240.201, написано Microsoft Corporation, а рефер такой
52.174.145.81, написано Microsoft Corporation, а рефер такой
О спасибо, просто сервис которым я проверял IP не писал что это MSN, щас внесу их в белый спискок.
По прошествии 8 часов по протоколу 1.1 заблокировано чуть более 1000 запросов (0,3% от всего).
Надо заметить что это не весь протокол 1,1 а минус реальные поисковые боты и минус явные сканеры отсеянные по реферу.
Т.е. сегодня пробовал чистить тех кто прошли основной грубый фильтр и косили под реальных юзеров, не делали частых запросов и пытались вести себя культурно.
Важно: просмотрев статистику метрики за последний квартал значительно расширил локацию map $geoip_country_code для протокола HTTP/2.0. Прежде чем пользоваться ей - изучите свою статистику!
Неожиданно для меня 90% мусорного трафика из США. Вот топ ботов на сегодня у меня кол-во запросов / ip
А я вот еще что придумал. пересобрал nginx с модулем --with-http_geoip_module
+ в нужный хост
503 ошибку сделал специально ибо у меня лог отдельный идет
+ еще обший лог для протокола 1,1
Сижу просматриваю кто "попался" - очень много разных сканеров из США и Европы (по протоколу 1,1) + совсем немного живых людей.
Вайтлист обновил этим
Конечно стоит и лично я очень прошу Вас это сделать!