ModSecurity для Apache 2.4.34 Сбой из-за недопустимой команды 'SecRuleEngine'

У меня есть сервер Ubuntu 18.04, установлен Apache 2.4.34 и скомпилирован ModSecurity 3 с модулем apache.

Я могу успешно загрузить модуль, добавив:

LoadModule security3_module modules / mod_security3.so

в мой httpd.conf

и тестирование с помощью httpd -M показывает, что модуль загружается

enter image description here

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

Как только я пытаюсь загрузить конфигурацию, я получаю:

AH00526: Syntax error on line 7 of /opt/ModSecurity/modsecurity.conf:
Invalid command 'SecRuleEngine', perhaps misspelled or defined by a module not included in the server configuration

, и моя конфигурация проста:

<IfModule security3_module>
    IncludeOptional /opt/ModSecurity/modsecurity.conf
</IfModule>

Где /opt/ModSecurity/modsecurity.conf содержит стандартный материал из репозитория.

Что я делаю не так?

(дайте мне знать, если вам нужна дополнительная информация)

0
задан 27 December 2018 в 18:29
1 ответ

Вы должны включить ModSecurity в контексте, например:

<VirtualHost *:80>
    ServerName foobar.com
    ...
    <Directory /path/to/docroot>
        ...
        modsecurity on
        modsecurity_rules_file /path/to/modsecurity.conf
        # optional:
        modsecurity_rules_file /path/to/crs-rules.load
    </Directory>
    ....
</VirtualHost>

Но если вы примете мой хороший совет, вы не используете модуль ModSecurity3 Apache - это не производство еще готов.

0
ответ дан 5 December 2019 в 04:46

Теги

Похожие вопросы