Um die Situation zu demonstrieren, in der Nginx installiert ist, aber ModSecurity nicht hinzugefügt wurde, bestehen die folgenden Vorgänge darin, zuerst Nginx zu installieren und dann das ModSecurity-Modul hinzuzufügen. ModSecurity ist eine plattformübergreifende Open-Source-Web Application Firewall (WAF)-Engine, die perfekt mit nginx kompatibel ist. Es ist die von nginx offiziell empfohlene WAF und unterstützt OWASP-Regeln. Chinesische Website: http://www.modsecurity.cn Informationen zur praktischen Anwendung finden Sie unter: http://www.modsecurity.cn/practice/ 1. Herunterladen 1. Laden Sie Nginx herunter wget http://nginx.org/download/nginx-1.14.2.tar.gz 2. ModSecurity herunterladen wget http://www.modsecurity.cn/download/modsecurity/modsecurity-v3.0.4.tar.gz 2. Bereitstellung 1.Nginx-Bereitstellung 1.1 Installationsabhängigkeiten yum install -y pcre* openssl* gcc c++ make 1.2 Kompilieren und Installieren der dekomprimierten Dateien tar -xvf nginx-1.14.2.tar.gz cd nginx-1.14.2/ Konfigurationsmodul ./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module --with-http_gzip_static_module --http-client-body-temp-path=/var/tmp/nginx/client/ --http-proxy-temp-path=/var/tmp/nginx/proxy/ --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi --with-pcre Kompilierung ausführen machen installieren Erstellen Sie ein Konto und ein Verzeichnis Benutzeradd nginx -s /sbin/nologin mkdir /var/tmp/nginx/ 2. ModSecurity-Bereitstellung 2.1 Installationsabhängigkeiten yum install -y gcc-c++ flex bison yajl yajl-entwickeln curl-entwickeln curl GeoIP-entwickeln doxygen zlib-entwickeln pcre-entwickeln lmdb-entwickeln libxml2-entwickeln ssdeep-entwickeln lua-entwickeln libtool autoconf automake 2.2 Kompilieren und Installieren der dekomprimierten Dateien tar -xvf modsecurity-v3.0.4.tar.gz cd modsecurity-v3.0.4/ Kompilieren und installieren ./konfigurieren machen installieren cp modsecurity.conf-empfohlen /usr/local/modsecurity/modsecurity.conf cp unicode.mapping /usr/local/modsecurity/ 3. ModSecurity-Modul hinzufügen 3.1 Nginx-Kompilierungsparameter anzeigen /usr/local/nginx/sbin/nginx -V 3.2 ModSecurity-Modul herunterladen Git-Klon https://github.com/SpiderLabs/ModSecurity-nginx.git Oder laden Sie es von https://github.com/SpiderLabs/ModSecurity-nginx herunter. 3.3 Nginx neu kompilieren Dekomprimierungsmodul entpacken Sie ModSecurity-nginx-master.zip #Nur beim Herunterladen des Installationspakets, nicht erforderlich, wenn es sich um einen Git-Klon handelt Kompilieren und installieren ./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/sbin/nginx --conf-path=/usr/local/nginx/conf/nginx.conf --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --pid-path=/var/run/nginx/nginx.pid --lock-path=/var/lock/nginx.lock --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module --with-http_gzip_static_module --http-client-body-temp-path=/var/tmp/nginx/client/ --http-proxy-temp-path=/var/tmp/nginx/proxy/ --http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ --http-uwsgi-temp-path=/var/tmp/nginx/uwsgi --http-scgi-temp-path=/var/tmp/nginx/scgi --with-pcre --add-module=../ModSecurity-nginx #Notieren Sie hier/ModSecurity-nginx Pfad machen installieren /usr/local/nginx/sbin/nginx -V #Überprüfen Sie, ob das ModSecurity-Modul bereits verfügbar ist Hinzufügen eines Profils mkdir /usr/local/nginx/conf/modsecurity cp /usr/local/modsecurity/modsecurity.conf /usr/local/nginx/conf/modsecurity/ cp /usr/local/modsecurity/unicode.mapping /usr/local/nginx/conf/modsecurity/ 4. Konfigurieren Sie den virtuellen Nginx-Host 4.1 Virtuelle Host-Konfiguration vim /usr/local/nginx/conf/nginx.conf Modsecurity ein; modsecurity_rules_datei /usr/local/nginx/conf/modsecurity/modsecurity.conf; #Das Hinzufügen zum http-Knoten zeigt eine globale Konfiguration an, und das Hinzufügen zum Serverknoten zeigt eine Konfiguration für eine bestimmte Website an 4.2Modsecurity-Konfiguration vim /usr/local/nginx/conf/modsecurity/modsecurity.conf #Ändern Sie den folgenden Teil SecRuleEngine On SecAuditLogParts ABCDEFHZ #An die Konfigurationsdatei anhängen Include /usr/local/nginx/conf/modsecurity/crs-setup.conf Include /usr/local/nginx/conf/modsecurity/rules/*.conf 4.3 Regeldateien herunterladen wget http://www.modsecurity.cn/download/corerule/owasp-modsecurity-crs-3.3-dev.zip #ModsecurityChinesische Website zum Herunterladen von wget https://github.com/coreruleset/coreruleset #github herunterladen 4.4 Konfigurationsregeln entpacken Sie owasp-modsecurity-crs-3.3-dev.zip cd owasp-modsecurity-crs-3.3-dev/ cp crs-setup.conf.beispiel /usr/local/nginx/conf/modsecurity/crs-setup.conf cp -r Regeln /usr/local/nginx/conf/modsecurity/ cd /usr/local/nginx/conf/modsecurity/rules mv REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf.beispiel REQUEST-900-EXCLUSION-RULES-BEFORE-CRS.conf mv RESPONSE-999-EXCLUSION-RULES-AFTER-CRS.conf.beispiel RESPONSE-999-EXCLUSION-RULES-AFTER-CRS.conf 4.5 Testen #Browser- oder Curl-Zugriffstest, gibt 403 zurück curl -I 'http://localhost/?id=1 UND 1=1' Dies ist das Ende dieses Artikels über die Implementierung der Bereitstellung des Sicherheitsmoduls Nginx+ModSecurity. Weitere relevante Inhalte zur Bereitstellung von Nginx ModSecurity finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird! Das könnte Sie auch interessieren:
|
<<: So verarbeiten Sie sehr große Formularbeispiele mit Vue+ElementUI
>>: Was bedeutet es, nach der CSS-Linkadresse ein Fragezeichen (?) hinzuzufügen?
Code kopieren Der Code lautet wie folgt: <!--[...
Inhaltsverzeichnis 1. Digitale Aufzählung 2. Zeic...
Beim Erstellen eines Zeitfelds STANDARD CURRENT_T...
In horizontaler Richtung können Sie die Ausrichtu...
Ich habe bereits einige Nachforschungen zum Thema...
1. Überprüfen Sie, ob das Modul „Status prüfen“ i...
[Lösung 1: Padding-Implementierung] Prinzip: Wenn...
NodeJS kopiert die Dateien: Für den Kopiervorgang...
Der Fehler lautet wie folgt: Nicht abgefangener T...
Heute zeige ich Ihnen, wie Sie mit JavaScript ein...
In diesem Artikel wird der spezifische Code von j...
In diesem Artikelbeispiel wird der spezifische Co...
Vorwort Alle Hardwaregeräte im Linux-System werde...
Inhaltsverzeichnis Was sind Hooks? Klassenkompone...
einführen GitLab CE oder Community Edition ist ei...