Page 1 of 1
Блокировка плохих ботов
Posted: Sun Sep 30, 2018 11:17 am
by Alex-vi
Нужно заблокировать на сервере ботов SemrushBot, AhrefsBot и тд
добавил в шаблон /usr/local/vesta/data/templates/web/nginx/php-fpm проверку
Code: Select all
server {
listen %ip%:%web_ssl_port% http2;
server_name %domain_idn% %alias_idn%;
root %sdocroot%;
index index.php index.html index.htm;
access_log /var/log/nginx/domains/%domain%.log combined;
error_log /var/log/nginx/domains/%domain%.error.log error;
ssl on;
ssl_certificate %ssl_pem%;
ssl_certificate_key %ssl_key%;
location / {
if ($http_user_agent ~* (SemrushBot|AhrefsBot) ) {
return 403;
}
сделал и v-rebuild-web-domains admin
и service nginx restart
в конфиге /home/admin/conf/web условие появилось
но в логе всё также поевляются записи
Code: Select all
46.229.168.142 - - [30/Sep/2018:13:59:37 +0300] "GET /hdd HTTP/1.1" 403 706 "-" "Mozilla/5.0 (compatible; SemrushBot/2~bl; +http://www.semrush.com/bot.html)"
что не так делаю?
Re: Блокировка плохих ботов
Posted: Sun Sep 30, 2018 12:47 pm
by Ddd
Я делал так (пути указаны для Debian):
в etc/nginx/nginx.conf в секцию http{} добавить
Code: Select all
# Bots list
map $http_user_agent $limit_bots {
default 0;
~*(htmlparser|libwww|python|perl|urllib|scan|Curl|wget|email|PycURL|PyQ|WebCollector|WebCopy|webcraw|uCrawler) 1;
~*(DotBot|AhrefsBot|Seopult|MegaIndex|Uptimebot|MJ12bot|BUbiNG|AlphaBot|SemrushBot|spbot|IndeedBot) 1;
}
и для каждого сайта в файле home/sitename/conf/web/nginx.conf в секцию location / {}
Code: Select all
# Access deny for bots
# See bots list in the /etc/nginx/nginx.conf
if ($limit_bots = 1) {
return 403;
}
Re: Блокировка плохих ботов
Posted: Sun Sep 30, 2018 2:14 pm
by yariksat
Как забанить этого тупого бота Cobion.com?
Паскуда ни на что не реагирует.
Re: Блокировка плохих ботов
Posted: Sun Sep 30, 2018 2:42 pm
by Alex-vi
Ddd wrote: Sun Sep 30, 2018 12:47 pm
Я делал так
да, видел этот вариант на форуме в другой теме. пробовал - не помогло. даже и не знаю что не так. SemrushBot непрерывно бомбит и ничего сделать не получается
Re: Блокировка плохих ботов
Posted: Sun Sep 30, 2018 8:24 pm
by Alex-vi
чёт затупил, всё ж работает отдаёт 403 статус как и прописано.
Вот бы ещё и в лог не писать, а то только от одного SemrushBot 6тыс записей примерно за 2 часа
за день до 100 -200 мб разрастается access_log.
Re: Блокировка плохих ботов
Posted: Fri Dec 27, 2019 1:52 pm
by Duck83
Подскажите пж, возникла проблема с данным способом блокировки, а именно после всех манипуляций не запускается nginx. Перелопатил все способы и методы (те что нашел) на данном форуме - не помогает. Сначала все ок, когда на сервере один сайт, но после добавления, например, 5 шт - nginx не хочет работать. Проверил весь синтаксис - все правильно, как написано в топике. Возможно кто-то подскажет, почему ботов стоит писать в несколько строк, ну, или как в данном примере в две:
Code: Select all
# Bots list
map $http_user_agent $limit_bots {
default 0;
~*(htmlparser|libwww|python|perl|urllib|scan|Curl|wget|email|PycURL|PyQ|WebCollector|WebCopy|webcraw|uCrawler) 1;
~*(DotBot|AhrefsBot|Seopult|MegaIndex|Uptimebot|MJ12bot|BUbiNG|AlphaBot|SemrushBot|spbot|IndeedBot) 1;
}
Re: Блокировка плохих ботов
Posted: Sun Apr 05, 2020 2:46 pm
by mr_denisters
Нашел решение для блокировки на стороне сервера, чел пишет что все работает и отсортировано.
https://github.com/mitchellkrogza/nginx ... ot-blocker
Пробуйте, описывайте кто как настраивал на каком стеке.
Re: Блокировка плохих ботов
Posted: Sun Apr 05, 2020 3:23 pm
by grayfolk
А какой может быть стек, если решение для nginx?
Re: Блокировка плохих ботов
Posted: Fri Apr 10, 2020 7:59 pm
by zabudkin
Alex-vi wrote: Sun Sep 30, 2018 11:17 am
Нужно заблокировать на сервере ботов SemrushBot, AhrefsBot и тд
добавил в шаблон /usr/local/vesta/data/templates/web/nginx/php-fpm проверку
Code: Select all
location / {
if ($http_user_agent ~* (SemrushBot|AhrefsBot) ) {
return 403;
}
сделал и v-rebuild-web-domains admin
и service nginx restart
в конфиге /home/admin/conf/web условие появилось
но в логе всё также поевляются записи
Code: Select all
46.229.168.142 - - [30/Sep/2018:13:59:37 +0300] "GET /hdd HTTP/1.1" 403 706 "-" "Mozilla/5.0 (compatible; SemrushBot/2~bl; +http://www.semrush.com/bot.html)"
что не так делаю?
Вы не отключили лог:
access_log off;
Code: Select all
location / {
if ($http_user_agent ~* (SemrushBot|AhrefsBot) ) {
access_log off;
return 403;
}
Re: Блокировка плохих ботов
Posted: Mon May 04, 2020 7:19 pm
by mr_denisters
Пробуйте, описывайте кто как настраивал на каком стеке.
А какой может быть стек, если решение для nginx?
Там есть и для апачи, я просто блокирую iP через фаервол, а это решение не пробовал, нет возможности испытать.