Борьба с роботностью

CN
На сайте с 12.12.2008
Offline
144
#11
yalol :

server {
if ($http_user_agent ~* (FriendlyCrawler/1.0|Go-http-client|ChatGLM-Spider|InternetMeasurement|tphotobot|DataForSeoBot|ElevenlabsCrawler|ShapBot|QlyzeBot|PetalBot|bingbot/2.0|meta-webindexer/1.1|PerplexityBot|ClaudeBot|ExaSearchBot|Reflectionbot|LinkupBot|weborama-fetcher|MJ12bot|ImagesiftBot|SemrushBot/7~bl|Barkrowler/0.9|Amazonbot/0.1|msnbot/2.0b|SeznamBot/4.0|matlistan/1.0|BLEXBot/1.0|coccocbot-web/1.0) ) {
return 403;

Я уже написал в другой теме... Nginx туго переваривает такие вещи, лучше использовать Iptables. Для начала лучше заблокировать сегменты стран Азии (Китай, Сингапур и т.д.).

По логике у тебя должен остаться трафик из России и стран СНГ.  По большей части роботы отдают user_agent как у обычного пользователя или вообще пустой, т.е. легко обходят твою проверку.

Анализируй с каких сегментов идут пользователи, точно не из серверных сегментов различных хостингов. Пользователи в КВН отдельная тема, но сейчас в основном маршрутизируют их на сервере.

K4
На сайте с 29.01.2020
Offline
92
#12
yalol #:

Поэтому немного спорные советы.

Ясно, забей на мои советы. 😂


TB
На сайте с 16.01.2009
Offline
311
#13
ChristmasNet #:
Nginx туго переваривает такие вещи, лучше использовать Iptables. Для начала лучше заблокировать сегменты стран Азии (Китай, Сингапур и т.д.).
Зато это просто даже для тех, кто не разбирается в администрировании серверов.  а с Iptables не так просто разобраться начинающему
CN
На сайте с 12.12.2008
Offline
144
#14
TonyBlackberry #:
Зато это просто даже для тех, кто не разбирается в администрировании серверов.  а с Iptables не так просто разобраться начинающему

Сейчас же не используются SSH по хардкору, в основном установлены панели управления сервером, там все более менее интуитивно.

Купил на месяц лицензию на Ispmanager, настроил и забыл, потом уже можно по SSH что-то докрутить.

Mik Foxi
На сайте с 02.03.2011
Offline
1291
#15
ChristmasNet #:
Я уже написал в другой теме... Nginx туго переваривает такие вещи, лучше использовать Iptables.

не советуй ерунды, nginx норм работает, но лучше конечно через map в нем блочить, а не такой регуляркой, но это больше про красоту и идеологическую правильность, технически и такое условие что в стартпосте будет работать.

iptables не предназначен для блокировки юзерагентов, это вообще даже уровень  другой (L3/L4, а юзерагент находится на L7), еще он давно deprecated, вместо него nftables, который также не предназначен для блокировок по юзерагенту. 

Антибот, антиспам, веб фаервол, защита от накрутки поведенческих: https://rus.antibot.cloud/ (9 лет на защите сайтов).
CN
На сайте с 12.12.2008
Offline
144
#16
Mik Foxi #:

не советуй ерунды, nginx норм работает, но лучше конечно через map в нем блочить, а не такой регуляркой, но это больше про красоту и идеологическую правильность, технически и такое условие что в стартпосте будет работать.

iptables не предназначен для блокировки юзерагентов, это вообще даже уровень  другой (L3/L4, а юзерагент находится на L7), еще он давно deprecated, вместо него nftables, который также не предназначен для блокировок по юзерагенту. 

Я написал про сегменты, а не про юзерагентов. Nginx работает, но ты закинь ему все сегменты из Азии, работать будет но не быстро :)

То что я предлагаю отсечет весь трафик, даже не дойдя до nginx, а далее уже можно и в nginx правила придумывать.

TB
На сайте с 16.01.2009
Offline
311
#17
ChristmasNet #:
Сейчас же не используются SSH по хардкору, в основном установлены панели управления сервером, там все более менее интуитивно.
более менее интуитивно - это if ($http_user_agent ~* .   а когда надо сначала какой-то модуль установить, то неопытный с этим не разберется..  к примеру, у меня fastpanel.  ну и что в настройках надо прописать, чтобы блокировать по Iptables?
Mik Foxi
На сайте с 02.03.2011
Offline
1291
#18
ChristmasNet #:

Я написал про сегменты, а не про юзерагентов. Nginx работает, но ты закинь ему все сегменты из Азии, работать будет но не быстро :)

То что я предлагаю отсечет весь трафик, даже не дойдя до nginx, а далее уже можно и в nginx правила придумывать.

тянуть километры ip подсетей чтоб банить регионы сомнительная идея, лучше в nginx поставить geo модуль, чтоб там была обнолвяемая база и банить по коду страны на уровне nginx.
C
На сайте с 13.01.2017
Online
93
#19
Я вот так блокирую страны https://searchengines.guru/ru/forum/1143966 ipv6 отключен
CN
На сайте с 12.12.2008
Offline
144
#20
TonyBlackberry #:
более менее интуитивно - это if ($http_user_agent ~* .   а когда надо сначала какой-то модуль установить, то неопытный с этим не разберется..  к примеру, у меня fastpanel.  ну и что в настройках надо прописать, чтобы блокировать по Iptables?

Я не использую fastpanel, поэтому мне наверно проще. Для блокировки по странам используется Ipset, он вообще тоннами переваривает IP-адреса.

Вот как это выглядит в https://www.ispmanager.ru/news/zashchita-servera-v-ispmanager-s-pomoshchyu-ip2location

Защита сервера в ispmanager с помощью IP2Location | ispmanager
  • 2024.07.25
  • Редакция блога ispmanager
  • www.ispmanager.ru
С помощью IP2Location заблокировать доступ пользователям из определенных стран и так защитить сервер от атаки. Обновление вышло в релизе 6.102. Подключили IP2Location как альтернативу MaxMind. В ispmanager по-прежнему можно использовать MaxMind, если у вас есть лицензионный ключ. Подробнее в документации ispmanager → Как настроить IP2Location в...

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий