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
mr_denisters wrote: Sun Apr 05, 2020 2:46 pm Нашел решение для блокировки на стороне сервера, чел пишет что все работает и отсортировано.
https://github.com/mitchellkrogza/nginx ... ot-blocker
Пробуйте, описывайте кто как настраивал на каком стеке.
А какой может быть стек, если решение для 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 через фаервол, а это решение не пробовал, нет возможности испытать.