netwind

Рейтинг
419
Регистрация
06.05.2007

Andreyka, может быть, вы не любите пролетариат ? (с) в смысле не оказываете услуги действительно широким массам клиентов.

myhand:
не всегда может и не всегда должен. "пачками" (iptables-restore, например) отправлять
на бан IP/подсети обычно гораздо лучше, чем дергать на каждый чих iptables

iptables-restore не добавляет правила, а перезаписывает всю таблицу. Ро мере роста списка придется постоянно перезаписывать одни и те же IP. Выгоднее запустить одну команду iptables. На больших объемах уже выгоднее ipset.

ТС уже признал, что просто не осилил sudo. Откуда у вас это стремление оставить за собой последнее слово?

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

Теоретически, на неком синтетическом тесте, если на сервере множество разных сайтов с разными сайтопользователями и нагрузка распределена на них всех равномерно, обычный apache с mod_php может даже обойти php-fpm, за счет отсутствия необходимости порождать процессы каждый раз под разными пользователями. То есть, эта связка даже хуже :)

Если не требуется разграничение прав, то лучше использовать nginx и обычный mod_php.

Неужели с такими параметрами VPS вы еще и собираетесь хостинг устраивать? причем бы тут apache2-itk ?

myhand:
до того, как ТС упомянул про mod_evasive - это было не очевидно.

Если кто-то хочет формировать команды для iptables из под рута, не имея рута - скорее всего, что он делает это из под apache. Иначе их можно просто запустить. В простых решениях вообще не делают разграничений. Есть root и пользователь_для_php - вот и все.

myhand:
ведь можно себе представить другой способ формирования списка IP для бана,
работающий в итоге от root и создающий файлик соответствующий, нет?

На практике такое не нужно - скрипт от рута может (и должен) уже сразу по обнаружении запускать команды iptables и блокировать гораздо быстрее чем по cron.

В mod_evasive прописывается реакция на атаку в виде программы. Обычно это sudo +iptables с аргументами. Аргумент командной строки переданный в программу перебить нельзя и никаких race conditions не возникает.

myhand, а я и обратил. Это подтверждает, что вы, ориентируясь только на известные условия, не видите в чем конечная цель.

Разумеется в /tmp создается скрипт из под пользователя apache как и результат работы всех остальных скриптов или, например, модуля mod_evasive.

Я уж молчу про классический race condition в таких унылскриптах проверяющих владельца и разрешения.

sudo не просто так рекомендован.

myhand, смотрите ширше - товарищ защиту от ддос делает и запись у него в /tmp. Доверия к контенту скрипта в /tmp как раз нет. Изначально в руководствах для mod_evasive все-таки sudo. То, что кто-то не смог в нем разобраться, это другой вопрос.

Если "добрый друг" пущеный похоститься закачает скрипт в /tmp или в другое место, где создаются команды для рута - все закончится плачевно.

Я правильно понимаю, что вы не нашли другого способа запускать iptables из под рута кроме как через cron ?

Похоже, вам стоит изучить запуск команд через sudo. А то в /tmp вам понапишут однажды скриптов.

Вообще это НЕ GeoIP, а база в текстовом виде. GeoIP специальным образом упаковывают и поиск по ней относительно быстр.

Всего: 6293