Боты рвут сервер...

123
A
На сайте с 19.07.2010
Offline
130
#11
denis716:
а POST или GET запрос типа myvar=coccoc файрвол с такими настройками пропустит?

не пропустит, еще:

* аплоады

* если используется аякс - тоже блок

* также не даст возможности разместить страничку о "снежном человеке" http://...../Yeti.html

* и заблокирует переходы с сайтов о "снежном человеке" (поле реферер в запросе), кстати увидел в правилах блок Nigma.ru, т.е. с нигмы на сайт перейти тоже будет нельзя.

* куки - тоже блок

ps: такими правилами файрвола хорошо настраивать сервер для врага своего, а не себе. 😂

upd: это только то, что лежит на поверхности. с сервера софт полезет за апдейтами CMS или системы куда-то на 80-й порт?

будет прямо как ходьба по минному полю... yum, apt-get и прочие апдейтеры панелек, антивирусов, цмсок и т.д.

.............
AlexStep
На сайте с 23.03.2009
Offline
354
#12
El Marshal Che:
Гуглбот crawl-delay не понимает. Нужно в https://www.google.com/webmasters/tools/home выставлять.

Где конкретно находится эта настройка? Не могу найти ничего похожего..

Russ1an
На сайте с 25.03.2015
Offline
60
#13

Тоже на одном большом сайте было как у автора, парсили все кому не лень. Боролся баном по айпи постепенно, сейчас парсят, но не так много, забил на них.

Достойный дом для любимых проектов https://clck.ru/PT7Vo
G-and-Y
На сайте с 29.06.2013
Offline
156
#14

admak, а если так? Заметил что блокируется только поиск по слову Yeti(post запрос), переход с сайта нигма.ру норм, так же стр /Yeti.html открывается.

iptables -I INPUT -p tcp -m string --algo bm --string "Yeti" -j DROP
Абузо-устойчивые впс в Нидерландах от 5$/мес (https://cp.inferno.name/aff.php?aff=2991)
mendel
На сайте с 06.03.2008
Offline
183
#15

G-and-Y, не нужно скакать с уровня на уровень. А если https? Тоже iptables?

Это файрвол транспортного уровня. Пусть в транспортном и остается.

Если хотите что-то подобное блокировать на уровне сервера, то используйте например fail2ban. Там и протоколы распарсены по полочкам, и регулярки (вроде?) можно...

Шутку любишь над Фомой, так люби и над собой. (с) народ. Бесплатные списки читабельных(!) свободных доменов (http://burzhu.net/showthread.php?t=2976) (5L.com) Сайты, All inclusive. 5* (/ru/forum/962215)
Arakss
На сайте с 24.03.2016
Offline
36
#16
Matas:
Для тех, кто по каким либо причинам не использует nginx можно сделать фильтрацию нежелательных ботов через фаервол на сервере. Для этого добавляем такие строки:


-A INPUT -p tcp -m string --string "AhrefsBot" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "Baiduspider" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "bingbot" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "BLEXBot" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "BuddhaBot" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "Butterfly" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "coccoc" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "Ezooms" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "meanpathbot" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "METASpider" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "MetaURI" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "MJ12bot" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "Moreover" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "msnbot" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "Nekstbot" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "Nigma.ru" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "NING" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "PaperLiBot" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "QuerySeekerSpider" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "rogerbot" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "SemrushBot" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "SeznamBot" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "SolomonoBot" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "SputnikBot" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "TurnitinBot" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "TweetmemeBot" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "Twitterbot" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "UnwindFetchor" --algo kmp --to 65535 -m tcp --dport 80 -j DROP
-A INPUT -p tcp -m string --string "Yeti" --algo kmp --to 65535 -m tcp --dport 80 -j DROP


в файле /etc/sysconfig/iptables сохраняем изменения и перезапускаем службу
/etc/init.d/iptables restart
все, боты будут блокироваться на уровне фаервола сервера.

А если nginx работает, как этих ботов отвадить? Только по IP банить?

То, есть то тому как он представляется не получиться блокировать?

Dokkino.org (http://dokkino.org)
Aisamiery
На сайте с 12.04.2015
Offline
293
#17
mendel:
G-and-Y, не нужно скакать с уровня на уровень. А если https? Тоже iptables?
Это файрвол транспортного уровня. Пусть в транспортном и остается.
Если хотите что-то подобное блокировать на уровне сервера, то используйте например fail2ban. Там и протоколы распарсены по полочкам, и регулярки (вроде?) можно...

fail2ban собственно в iptables заносит за вас на основе каких либо данных. Для этого обычно используют логи, например сервера, и да, регулярками логи и парсятся.

Разработка проектов на Symfony, Laravel, 1C-Bitrix, UMI.CMS, OctoberCMS
mendel
На сайте с 06.03.2008
Offline
183
#18
Aisamiery:
fail2ban собственно в iptables заносит за вас на основе каких либо данных. Для этого обычно используют логи, например сервера, и да, регулярками логи и парсятся.

Именно что приложение высокого уровня работает с данными обработанными соответствующим высокоуровневым софтом, и отдает команду низкоуровневому файрволу. Это именно что его задача, и правильный инструмент. Невозможно придумать правила для iptables которые будут банить по юзерагенту, если протокол будет https. Без DPI не разрулить. А по логам - запросто.

С другой стороны глубокий анализ, с расшифровкой всея, регулярки по нему и т.п. - ресурсоемки. Зато бан по IP уже занесенному в таблицу iptables - операция стравнительно дешевая.

Aisamiery
На сайте с 12.04.2015
Offline
293
#19
mendel:
Именно что приложение высокого уровня работает с данными обработанными соответствующим высокоуровневым софтом, и отдает команду низкоуровневому файрволу. Это именно что его задача, и правильный инструмент. Невозможно придумать правила для iptables которые будут банить по юзерагенту, если протокол будет https. Без DPI не разрулить. А по логам - запросто.
С другой стороны глубокий анализ, с расшифровкой всея, регулярки по нему и т.п. - ресурсоемки. Зато бан по IP уже занесенному в таблицу iptables - операция стравнительно дешевая.

Так никто не спорит. Просто кто такие боты? Гости сайта неаторизованные, для них динамика то и не нужна, то есть в большинстве случаев хватает статического кэша на фронте, если конечно это не ддос и не ложится сеть от этого. И банить никого не надо :)

A
На сайте с 19.07.2010
Offline
130
#20
G-and-Y:
admak, а если так? Заметил что блокируется только поиск по слову Yeti(post запрос), переход с сайта нигма.ру норм, так же стр /Yeti.html открывается.

зачем нужна подобная рулетка с iptables?

nginx работает шустро, нагрузку держит отлично, правильно разбирает все заголовки, в том числе и https. еще удобно в nginx-е настроить отдельный лог для непотребного трафика и иногда просматривать его, для дальнейшего подкручивания фильтров. ведь случайно гайки можно и пережать...

123

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