netwind

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

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

Boris A Dolgov

1 - это реально дебилом нужно быть, чтобы добровольно терять информацию об IP и заниматься блокировкой ботов. Так не бывает.

2 - понимаю, но это не отменяет всех ужасов C/C++.

T.R.O.N, писать на новом непонятном нишевом ASP или немного настроить mysql и написать на давно знакомом php . что проще для типичного вебмастера ?

myhand, проще блокировать. Думаю, мало кто этим заморачивается. Генерировать капчу это немало ресурсов нужно.

в конце концов, ради того чтобы не погружаться в C, можно опять же файрволом сделать редирект на специальный сайт со специальным обработчиком. Результат проверки тоже из логов достать.

А еще такой скрипт может легко взаимодействовать с текущими сессиями пользователей, которые хранятся в произвольном месте и заносить их в белый список. Тут вон на форуме полно жалоб на временную блокировку аккаунтов по причине агрессивного срабатывания защиты. И ведь свести на нет такие случаи легко.Интеграция разных систем - сильная сторона perl.

И С-джедай долбанется изучать библиотеки взаимодействия и обязательно что-нибудь не освободит. А, что хуже всего, может неаккуратным программированием завалить процесс вебсервера и тогда вообще все перестанет работать.

Вы, надеюсь, не будете спорить, что у самого веб сервера информации о запросе чуть поболее, чем он в принципе готов писать в логи?

Буду. Чего именно существенного нету в CustomLog http://httpd.apache.org/docs/2.0/mod/mod_log_config.html#formats ?

alexkv, все правильно понял.

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

5meoDIPT, может тебе еще и экспертное заключение на спину намазать?

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

И не понятно с чего это парсинг лога - куцый ? в лог довольно много можно информации записывать.

myhand, чтобы не писать свои модулу для nginx на С, на котором только курсовые пишут и линуксоиды.

Так можно придумать больше гибкости и потенциальных эвристик.

myhand, ну так не ведь perl не только для костылей. Не обязательно по крону запускать.

Можно нормального демона сделать и читающего access.log и с быстрым временем реакции.

Boris A Dolgov, почему бы нет для среднего кода на C и среднего же кода на PERL ?

perl компилируется в байт-код. Реализация хешей вылизана. Регулярные выражения предкомпилируемые и вылизаны в первую очередь.

Если не придираться к реализации,что действительно плохо в этой затее - запуск программы раз в минуту и анализ по моментальным счетчикам. Во-первых это означает высокую инерцию. Теоретически если атака стартует с новыми волнами ровно в первую секунду каждой минуты, она может задрючить сайт за оставшиеся 59 секунд. В идеале будет вполне достаточно N быстрых ботов для ddos продолжительностью N минут. Это совсем немного.

А во-вторых,в этом случае невозможно сформулировать четкие рамки для пользователей сайта типа "если запросов больше 10 в секунду - вас заблокируют", а только "ой, мы не знаем точно, но где то в районе 10, а может 30 запросов в секунду делать не надо".

Всего: 6293