Итак, я уже несколько дней пытаюсь настроить безопасность модов на нашем сервере разработки, и с определенными правилами это приводит к зависанию apache при перезапуске.
Пример правила, из-за которого оно зависает:
SecRule REQUEST_HEADERS:Content-Type "text/xml" \
"id:'200000',phase:1,t:none,t:lowercase,pass,nolog,ctl:requestBodyProcessor=XML"
(кстати, это правило взято из modsecurity.conf-recommended
Пример правила, которое работает, если нет других правил, вызывающих зависание:
SecRule ARGS "\.\./" "t:normalisePathWin,id:99999,severity:2,msg:'Drive Access',phase:1,deny,status:400"
Настройка нашего сервера такая:
Debian 6 "Squeeze"
Apache 2.2.22 (Binary install located in /usr/local/apache2)
Mod security 2.7.2 (located in /usr/local/modsecurity)
Я убедился, что все зависимости установлены и имеют правильную версию (libxml2, mod_unique_id и т. д.).
В логах ничего не отображается, на экране никаких ошибок, просто зависает и фактически не перезагружается
изменение modsecurity.c и mod_security2.c для вывода информации. Я вижу, что она попадает в pfn_register в приложении c, но, похоже, там что-то не так (все еще пытаюсь определить местоположение)
Я действительно понятия не имею, что еще проверить или сделать, я смог настроить его на своем ноутбуке довольно быстро и без проблем. Это просто на нашем реальном сервере он облажался.
Любая помощь будет оценена по достоинству!