Heim Betrieb und Instandhaltung Nginx So fangen Sie einen bestimmten Benutzeragenten in Nginx ab

So fangen Sie einen bestimmten Benutzeragenten in Nginx ab

May 13, 2023 am 10:25 AM
nginx

Spezifische Benutzeragenten in Nginx auf die schwarze Liste setzen

Um die Sperrliste für Benutzeragenten zu konfigurieren, öffnen Sie die Nginx-Konfigurationsdatei Ihrer Website und suchen Sie den Abschnitt mit den Serverdefinitionen. Diese Datei kann je nach Nginx-Konfiguration oder Linux-Version an verschiedenen Orten abgelegt werden (z. B. /etc/nginx/nginx.conf, /etc/nginx/sites-enabled/,/usr /local/ nginx/conf/nginx.conf,/etc/nginx/conf.d/).

Kopieren Sie den Code. Der Code lautet wie folgt:

server {
listen 80 default_server;
server_name xmodulo.com;
root /usr/share/nginx/html;
....
}

Öffnen Sie die Konfigurationsdatei Suchen Sie den Serverabschnitt und fügen Sie die folgende if-Anweisung irgendwo im Abschnitt hinzu.

Kopieren Sie den Code. Der Code lautet wie folgt:

server {
listen 80 default_server;
server_name xmodulo.com; Sensibles Matching
                                                if ($http_user_agent ~ (antivirx|arian ) {
                 return 403; 
                                                                                                                                            return 403;
       }
       ... .

}

Wie Sie sich vorstellen können, verwenden diese if-Anweisungen reguläre Ausdrücke, um jede fehlerhafte Benutzerzeichenfolge abzugleichen und einen 403-HTTP-Statuscode an das übereinstimmende Objekt zurückzugeben. $http_user_agent ist eine Benutzeragentenzeichenfolge, die in der http-Anfrage enthalten ist Der Operator „~“ führt eine Übereinstimmung mit der Zeichenfolge des Benutzeragenten durch, während der Operator „~*“ eine Übereinstimmung unabhängig von der Groß- und Kleinschreibung durchführt, sodass Sie ihn in einer if-Anweisung verwenden können Blockieren Sie sie alle.

Nachdem Sie die Konfigurationsdatei geändert haben, müssen Sie Nginx neu laden, um die Blockierung zu aktivieren:

 $ sudo /path/to/nginx -s reload
Nach dem Login kopieren
Nach dem Login kopieren

Sie können dies tun, indem Sie die Option „--user-agent“ verwenden, um die Benutzeragentenblockierung zu testen

Verwalten der User-Agent-Blacklist in Nginx

Bisher habe ich gezeigt, wie man einige User-Agents für HTTP-Anfragen in Nginx blockiert.

Seit der User-Agent-Blacklist Wenn sie sehr groß werden, ist es keine gute Idee, sie im Serverteil von Nginx abzulegen. Stattdessen können Sie eine separate Datei erstellen, in der alle blockierten Benutzeragenten aufgeführt sind .rules und definieren Sie ein Diagramm, das alle blockierten Benutzeragenten im folgenden Format definiert:

 $ wget --user-agent "malicious bot" http://<nginx-ip-address>
Nach dem Login kopieren

Kopieren Sie den Code:

map $http_user_agent $badagent {So fangen Sie einen bestimmten Benutzeragenten in Nginx ab default 0;

~*bösartig 1;

~* Hintertür 1;                                         Die Zeile „Standard 0“ bedeutet, dass alle Benutzeragenten zugelassen werden, die nicht in anderen Dateien aufgeführt sind.

Öffnen Sie als Nächstes die Nginx-Konfigurationsdatei Ihrer Website, suchen Sie den Abschnitt mit http und fügen Sie dann irgendwo im http-Abschnitt die folgende Zeile hinzu.如 Kopieren Sie den Code wie folgt:

http {

.....

include /etc/nginx/useraurs.rules
}

Beachten Sie, dass die Include-Anweisung vor dem Server erscheinen muss (aus diesem Grund fügen wir sie hinzu). um es hinzuzufügen, um es hinzuzufügen, um es hinzuzufügen, um es dem http-Teil hinzuzufügen).

Öffnen Sie nun den Abschnitt der Nginx-Konfiguration, der Ihren Server definiert, und fügen Sie die folgende if-Anweisung hinzu:

Kopieren Sie den Code. Der Code lautet wie folgt:

server {

       ....

          if ($badagent) {

. ...
}

Zum Schluss Nginx neu laden.

 $ sudo /path/to/nginx -s reload
Nach dem Login kopieren
Nach dem Login kopieren

Jetzt wird jeder Benutzeragent, der in /etc/nginx/useragent.rules aufgeführte Schlüsselwörter enthält, automatisch von nginx gesperrt.

Das obige ist der detaillierte Inhalt vonSo fangen Sie einen bestimmten Benutzeragenten in Nginx ab. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn

Heiße KI -Werkzeuge

Undresser.AI Undress

Undresser.AI Undress

KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover

AI Clothes Remover

Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

Clothoff.io

Clothoff.io

KI-Kleiderentferner

AI Hentai Generator

AI Hentai Generator

Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

R.E.P.O. Energiekristalle erklärten und was sie tun (gelber Kristall)
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Beste grafische Einstellungen
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. So reparieren Sie Audio, wenn Sie niemanden hören können
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Chat -Befehle und wie man sie benutzt
1 Monate vor By 尊渡假赌尊渡假赌尊渡假赌

Heiße Werkzeuge

Notepad++7.3.1

Notepad++7.3.1

Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version

SublimeText3 chinesische Version

Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1

Senden Sie Studio 13.0.1

Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6

Dreamweaver CS6

Visuelle Webentwicklungstools

SublimeText3 Mac-Version

SublimeText3 Mac-Version

Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

So überprüfen Sie, ob Nginx gestartet wird So überprüfen Sie, ob Nginx gestartet wird Apr 14, 2025 pm 01:03 PM

So bestätigen Sie, ob Nginx gestartet wird: 1. Verwenden Sie die Befehlszeile: SystemCTL Status Nginx (Linux/Unix), Netstat -ano | FindStr 80 (Windows); 2. Überprüfen Sie, ob Port 80 geöffnet ist; 3. Überprüfen Sie die Nginx -Startmeldung im Systemprotokoll. 4. Verwenden Sie Tools von Drittanbietern wie Nagios, Zabbix und Icinga.

So starten Sie Nginx unter Linux So starten Sie Nginx unter Linux Apr 14, 2025 pm 12:51 PM

Schritte zum Starten von Nginx unter Linux: Überprüfen Sie, ob Nginx installiert ist. Verwenden Sie SystemCTL Start Nginx, um den Nginx -Dienst zu starten. Verwenden Sie SystemCTL aktivieren NGINX, um das automatische Start von NGINX beim Systemstart zu aktivieren. Verwenden Sie den SystemCTL -Status NGINX, um zu überprüfen, ob das Startup erfolgreich ist. Besuchen Sie http: // localhost in einem Webbrowser, um die Standard -Begrüßungsseite anzuzeigen.

So konfigurieren Sie Nginx in Windows So konfigurieren Sie Nginx in Windows Apr 14, 2025 pm 12:57 PM

Wie konfiguriere ich Nginx in Windows? Installieren Sie NGINX und erstellen Sie eine virtuelle Hostkonfiguration. Ändern Sie die Hauptkonfigurationsdatei und geben Sie die Konfiguration der virtuellen Host ein. Starten oder laden Nginx neu. Testen Sie die Konfiguration und sehen Sie sich die Website an. Aktivieren Sie selektiv SSL und konfigurieren Sie SSL -Zertifikate. Stellen Sie die Firewall selektiv fest, damit Port 80 und 443 Verkehr.

Wie kann ich überprüfen, ob Nginx begonnen wird? Wie kann ich überprüfen, ob Nginx begonnen wird? Apr 14, 2025 pm 12:48 PM

Verwenden Sie unter Linux den folgenden Befehl, um zu überprüfen, ob Nginx gestartet wird: SystemCTL -Status Nginx Richter basierend auf der Befehlsausgabe: Wenn "aktiv: aktiv (lief) angezeigt wird, wird Nginx gestartet. Wenn "Active: Inactive (Dead)" angezeigt wird, wird Nginx gestoppt.

So lösen Sie Nginx403 -Fehler So lösen Sie Nginx403 -Fehler Apr 14, 2025 pm 12:54 PM

Der Server verfügt nicht über die Berechtigung, auf die angeforderte Ressource zuzugreifen, was zu einem NGINX 403 -Fehler führt. Zu den Lösungen gehören: Überprüfung der Dateiberechtigungen. Überprüfen Sie die Konfiguration .htaccess. Überprüfen Sie die Nginx -Konfiguration. Konfigurieren Sie Selinux -Berechtigungen. Überprüfen Sie die Firewall -Regeln. Fehlerbehebung bei anderen Ursachen wie Browserproblemen, Serverausfällen oder anderen möglichen Fehlern.

So lösen Sie das Problem der Nginx Cross-Domain So lösen Sie das Problem der Nginx Cross-Domain Apr 14, 2025 am 10:15 AM

Es gibt zwei Möglichkeiten, das Problem mit dem Cross-Domain-Problem mit dem NGINX-Problem zu lösen: Änderungen der Cross-Domänen-Antwort-Header: Fügen Sie Anweisungen hinzu, um Cross-Domain-Anforderungen zu ermöglichen, zulässigen Methoden und Header anzugeben und die Cache-Zeit festzulegen. Verwenden Sie das CORS-Modul: Aktivieren Sie Module und konfigurieren Sie die CORS-Regeln, um Cross-Domain-Anforderungen, Methoden, Header und Cache-Zeit zu ermöglichen.

So lösen Sie Nginx403 So lösen Sie Nginx403 Apr 14, 2025 am 10:33 AM

Wie fixiere ich Nginx 403 Verbotener Fehler? Überprüfen Sie die Datei- oder Verzeichnisberechtigungen; 2.Htaccess -Datei prüfen; 3. Überprüfen Sie die Konfigurationsdatei der Nginx; 4. Starten Sie Nginx neu. Weitere mögliche Ursachen sind Firewall -Regeln, Selinux -Einstellungen oder Anwendungsprobleme.

So starten Sie den Nginx -Server So starten Sie den Nginx -Server Apr 14, 2025 pm 12:27 PM

Das Starten eines Nginx-Servers erfordert unterschiedliche Schritte gemäß verschiedenen Betriebssystemen: Linux/UNIX-System: Installieren Sie das NGINX-Paket (z. B. mit APT-Get oder Yum). Verwenden Sie SystemCTL, um einen Nginx -Dienst zu starten (z. B. sudo systemctl start nginx). Windows -System: Laden Sie Windows -Binärdateien herunter und installieren Sie sie. Starten Sie Nginx mit der ausführbaren Datei nginx.exe (z. B. nginx.exe -c conf \ nginx.conf). Unabhängig davon, welches Betriebssystem Sie verwenden, können Sie auf die Server -IP zugreifen

See all articles