Хочу поделиться своим опытом борьбы со спам-ботами, маскирующимися под Гугл-бот.
Не знаю, что они хотели на моём сайте, но нагрузку оказывали впечатляющую. Было их примерно 2 тысячи, запрашивали ежесекундно десятки страниц и пытались отправить почту на разные адреса.
Решил их отсечь с помощью Nginx.
Нужно было определить, что user-agent написано Googlebot, и что его IP к Google не имеет отношения (из просмотра логов, я понял, что настоящий Googlebot приходит только с 66.249.64.0/19)
Итак, вот, что получилось. Это добавил в конфиг своего сайта:
Код: Выделить всё
set $notbot "";
if ($remote_addr !~ "66\.249\.[0-9]{1,3}\.[0-9]{1,3}") {
set $notbot 1;
}
if ($http_user_agent ~* "Googlebot") {
set $notbot 1$notbot;
}
if ($notbot ~ "11") { return 403; }
Надеюсь моё опыт кому-то поможет. А может кто-то сделает лучше, буду только рад обмену решениями!