[SOLVED] mod_security из portage - кто-нибудь реально использует?
Я в растерянности :(
Пытаюсь у себя на хостинге mod_security внедрить. Поставил свежайший 2.5.13, он подтянул по зависимостям пакет с правилами modsecurity-crs... Дописал -D SECURITY в /etc/conf.d/apache2... При перезапуске в error_log апача попадает:
[Thu Dec 30 13:32:06 2010] [notice] ModSecurity for Apache/2.5.13 (http://www.modsecurity.org/) configured.
Вроде всё нормально?
Но в его файле конфигурации (/etc/apache2/modules.d/mod_security/modsecurity_crs_10_config.conf) ни слова о том, куда лог писать.
Ладно, добавил в конфигурацию того хоста, к которому хочу modsecurity прикрутить, такую конструкцию:
<VirtualHost 127.0.0.1:8080> ... <IfModule mod_security.c> SecFilterEngine DetectionOnly SecAuditEngine RelevantOnly SecAuditLogType Serial SecAuditLog /var/log/apache2/modsecurity/host.tld_audit_log SecDebugLog /var/log/apache2/modsecurity/host.tld_debug_log SecDebugLogLevel 3 </IfModule> ... </VirtualHost>
/var/log/apache2/modsecurity создал сам.
modsecurity опять пишет в error_log апача, что сконфигурирован, но ничего в логи не пишет и даже создавать их не пытается!
Сделал SecAuditEngine On - по идее, должен _каждый_ запрос в аудитлог писать. Опять ничего...
Не понимаю... Чего ему не хватает? Когда-то делал по похожей схеме - работало, но modsecurity был гораздо более старым, и набор правил как-то по-другому выглядел...
кто знает, что я делаю не так? Объясните тупому, как с грабель сойти? Или хоть наведите на работающий пример конфига Gentoo style...
PS. Решил сам. "Ибо нефиг" (С) ;) втупую переписывать чужие примеры...
Фишка. В /etc/apache2/modules.d/99_mod_security.conf написано:
LoadModule security2_module modules/mod_security2.so
security2_module - это как раз название модуля, которое в IfModule проверяется... А у меня там вовсе mod_security.c написано было :( - пример от другого дистрибутива... Естественно, конфиг для несуществующего модуля игнорируется...
Оказалось вполне достаточно в конфиге виртуального хоста написать:
<IfModule security2_module> SecRuleEngine DetectionOnly SecRequestBodyAccess On </IfModule>
Возможно, вторая строка и не обязательна, сейчас уже не проверю...
Логи mod_security в гентушном пакете падают в apache error_log, не очень удобно, но допустимо, да и перестроить уже можно будет - заработало...
Сейчас другая проблема - выкинуть лишние с моей точки зрения правила так, чтобы оставшиеся нормально работали... Но это уже другая тема ;)
- Для комментирования войдите или зарегистрируйтесь