скачал v3.2.0 https://coreruleset.org/installation/ следующие инструкции, расположенные в файле INSTALL
Но apache не может запуститься и возвращает эту ошибку -
AH00526: Syntax error on line 800 of /etc/apache2/crs/crs-setup.conf:
яну 19 01:36:09 VMhomeServer apachectl[20761]: ModSecurity: Found another rule with the same id
это мой файл apache2.conf для security2
LoadModule unique_id_module modules/mod_unique_id.so
LoadModule security2_module modules/mod_security2.so
<IfModule security2_module>
Include /etc/apache2/crs/crs-setup.conf
Include /etc/apache2/crs/rules/*.conf
</IfModule>
По этому вопросу https://github.com/SpiderLabs/ModSecurity/issues/1227
Я «решил», комментируя это:
Включите /etc/httpd/modsecurity-crs/base_rules/modsecurity_crs_21_protocol_anomalies.conf
но так как я использую более новую версию, такого правила нет, теперь все правила другие, поэтому я не могу понять, что происходит на всю мою жизнь.
У меня есть modsecurity-crs / bionic, bionic, теперь 3.0.2-1 все [установлено] в соответствии с требованиями руководства по установке
Любая помощь будет принята с благодарностью, я пока ничего не нашел о такой проблеме в этой версии в Интернете
Не могли бы вы убедиться, что вы включаете файл modsecurity.conf со строкой вроде: Include "/etc/apache2/modsecurity.d/modsecurity.conf"
перед включением crs-setup.conf. Используете ли вы версию modsecurity для репозитория Ubuntu или извлекли ее из репозитория git вместе с правилами? Версия репозитория Ubuntu поместит конфигурацию в /etc/modsecurity/modsecurity.conf
Я не знаю, куда вы поместили этот файл, но ваш файл conf может выглядеть так. Примечание: при использовании версии modsecurity для репозитория git вам может потребоваться загрузить некоторые дополнительные библиотеки.
LoadModule unique_id_module modules/mod_unique_id.so
LoadModule security2_module modules/mod_security2.so
<IfModule security2_module>
# Include the main modsecurity conf file
Include "/etc/apache2/modsecurity.d/modsecurity.conf"
# Include OWASP ModSecurity CRS rules from github
Include /etc/apache2/crs/crs-setup.conf
IncludeOptional /etc/apache2/crs/rules/REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf
Include /etc/apache2/crs/rules/*.conf
IncludeOptional /etc/apache2/crs/rules/RESPONSE-999-EXCLUSION-RULES-AFTER-CRS.conf
</IfModule>
Это не совсем отвечает на ваш вопрос, но вам нужен этот файл. Apache не запускается, потому что есть два правила с одинаковым идентификационным номером. ModSecurity этого не допустит. Вам просто нужно найти повторяющийся номер правила и изменить его. В соответствии со стандартами modsecurity вы не должны изменять какие-либо существующие файлы conf в каталоге / rules. Вы можете и должны изменить modsecurity.conf
и crs-setup.conf
файлы. У вас есть повторяющийся идентификатор правила on line 800 of /etc/apache2/crs/crs-setup.conf
Имейте в виду, что номера строк могут не совпадать. Я думаю, что они считаются одной строкой, когда строки экранируются с помощью \
. По умолчанию crs-setup.conf.example
закомментированы все правила, кроме последнего, в котором указана версия используемых вами правил. Проверьте свои crs-setup.conf
файл и посмотрите, что вы раскомментировали. Если вы обнаружите какие-то номера идентификаторов правил, которые могут показаться подозрительными, вы можете проверить все свои правила на наличие дубликатов примерно так (изменив номер правила, который вы ищете, конечно):
grep -r '900990' /etc/apache2/crs/rules/*
Если вы просто хотите найти все номера идентификаторов правил в файлах, это может помочь:
grep -ho 'id:[0-9]*' /etc/apache2/crs/rules/* | sort | uniq -c | less