Блокировка плохих ботов
Блокировка плохих ботов
Нужно заблокировать на сервере ботов SemrushBot, AhrefsBot и тд
добавил в шаблон /usr/local/vesta/data/templates/web/nginx/php-fpm проверку
сделал и v-rebuild-web-domains admin
и service nginx restart
в конфиге /home/admin/conf/web условие появилось
но в логе всё также поевляются записи
что не так делаю?
добавил в шаблон /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;
}
и 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: Блокировка плохих ботов
Я делал так (пути указаны для Debian):
в etc/nginx/nginx.conf в секцию http{} добавить
и для каждого сайта в файле home/sitename/conf/web/nginx.conf в секцию location / {}
в 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;
}
Code: Select all
# Access deny for bots
# See bots list in the /etc/nginx/nginx.conf
if ($limit_bots = 1) {
return 403;
}
Re: Блокировка плохих ботов
Как забанить этого тупого бота Cobion.com?
Паскуда ни на что не реагирует.
Паскуда ни на что не реагирует.
Re: Блокировка плохих ботов
чёт затупил, всё ж работает отдаёт 403 статус как и прописано.
Вот бы ещё и в лог не писать, а то только от одного SemrushBot 6тыс записей примерно за 2 часа
за день до 100 -200 мб разрастается access_log.
Вот бы ещё и в лог не писать, а то только от одного SemrushBot 6тыс записей примерно за 2 часа
за день до 100 -200 мб разрастается access_log.
Re: Блокировка плохих ботов
Подскажите пж, возникла проблема с данным способом блокировки, а именно после всех манипуляций не запускается 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;
}
-
- Posts: 28
- Joined: Sat Jan 21, 2017 1:02 pm
Re: Блокировка плохих ботов
Нашел решение для блокировки на стороне сервера, чел пишет что все работает и отсортировано.
https://github.com/mitchellkrogza/nginx ... ot-blocker
Пробуйте, описывайте кто как настраивал на каком стеке.
https://github.com/mitchellkrogza/nginx ... ot-blocker
Пробуйте, описывайте кто как настраивал на каком стеке.
-
- Support team
- Posts: 1111
- Joined: Tue Jul 30, 2013 10:18 pm
- Contact:
- Os: CentOS 6x
- Web: nginx + php-fpm
Re: Блокировка плохих ботов
А какой может быть стек, если решение для nginx?mr_denisters wrote: ↑Sun Apr 05, 2020 2:46 pmНашел решение для блокировки на стороне сервера, чел пишет что все работает и отсортировано.
https://github.com/mitchellkrogza/nginx ... ot-blocker
Пробуйте, описывайте кто как настраивал на каком стеке.
Re: Блокировка плохих ботов
Вы не отключили лог:Alex-vi wrote: ↑Sun Sep 30, 2018 11:17 amНужно заблокировать на сервере ботов SemrushBot, AhrefsBot и тд
добавил в шаблон /usr/local/vesta/data/templates/web/nginx/php-fpm проверкусделал и v-rebuild-web-domains adminCode: Select all
location / { if ($http_user_agent ~* (SemrushBot|AhrefsBot) ) { return 403; }
и 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;
}
-
- Posts: 28
- Joined: Sat Jan 21, 2017 1:02 pm
Re: Блокировка плохих ботов
Пробуйте, описывайте кто как настраивал на каком стеке.
Там есть и для апачи, я просто блокирую iP через фаервол, а это решение не пробовал, нет возможности испытать.А какой может быть стек, если решение для nginx?