v3.2.0 heruntergeladen https://coreruleset.org/installation/ Befolgen Sie die Anweisungen in der Datei INSTALL
Aber Apache kann nicht gestartet werden und gibt diesen Fehler zurück -
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
dies ist meine apache2.conf-Datei für 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>
Nach dieser Ausgabehttps://github.com/SpiderLabs/ModSecurity/issues/1227
Ich habe es „gelöst“, indem ich Folgendes kommentierte:
Schließen Sie /etc/httpd/modsecurity-crs/base_rules/modsecurity_crs_21_protocol_anomalies.conf ein.
aber da ich eine neuere Version verwende, gibt es keine solche Regel, die Regeln sind jetzt alle anders, also kann ich beim besten Willen nicht herausfinden, was los ist.
Ich habe modsecurity-crs/bionic,bionic,now 3.0.2-1 alles [installiert] wie in der Installationsanleitung gefordert
Für jede Hilfe wäre ich dankbar. Bisher habe ich im Internet nichts zu einem solchen Problem mit dieser Version gefunden.
Antwort1
Könnten Sie überprüfen, ob Sie die Datei modsecurity.conf mit einer Zeile wie dieser einbinden: Include "/etc/apache2/modsecurity.d/modsecurity.conf"
bevor Sie crs-setup.conf einbinden? Verwenden Sie die Ubuntu-Repo-Version von modsecurity oder haben Sie diese sowie die Regeln aus dem Git-Repo gezogen? Die Ubuntu-Repo-Version wird die Konfiguration in „ /etc/modsecurity/modsecurity.conf
Ich weiß nicht, wo Sie diese Datei abgelegt haben, aber Ihre Conf-Datei könnte so aussehen“ ablegen. Hinweis: Wenn Sie die Git-Repo-Version von modsecurity verwenden, müssen Sie möglicherweise einige zusätzliche Bibliotheken laden.
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>
Das geht zwar nicht wirklich auf Ihre Frage ein, aber Sie brauchen diese Datei. Apache kann nicht gestartet werden, da es zwei Regeln mit derselben ID-Nummer gibt. ModSecurity lässt das nicht zu. Sie müssen lediglich die doppelte Regelnummer finden und ändern. Gemäß den Modsecurity-Standards dürfen Sie keine der vorhandenen conf-Dateien im Verzeichnis /rules ändern. Sie können und sollten die Dateien modsecurity.conf
und ändern crs-setup.conf
. Sie haben eine doppelte Regel-ID-Nummer. on line 800 of /etc/apache2/crs/crs-setup.conf
Bedenken Sie, dass die Zeilennummern möglicherweise nicht genau übereinstimmen. Ich glaube, dass diese als eine Zeile gezählt werden, wenn Zeilen mit maskiert werden \
. Standardmäßig crs-setup.conf.example
sind alle Regeln auskommentiert, außer der letzten, die die Version der von Ihnen ausgeführten Regeln auflistet. Prüfen Sie Ihre crs-setup.conf
Datei und sehen Sie nach, was Sie auskommentiert haben. Wenn Sie verdächtige Regel-ID-Nummern finden, können Sie alle Ihre Regeln mit etwas wie diesem auf Duplikate überprüfen (natürlich unter Änderung der gesuchten Regelnummer):
grep -r '900990' /etc/apache2/crs/rules/*
Wenn Sie nur alle Regel-ID-Nummern in den Dateien finden möchten, könnte dies hilfreich sein:
grep -ho 'id:[0-9]*' /etc/apache2/crs/rules/* | sort | uniq -c | less