Beispiel für das Einrichten einer Whitelist in Nginx mithilfe des Geomoduls

Beispiel für das Einrichten einer Whitelist in Nginx mithilfe des Geomoduls

Ursprüngliche Konfiguration:

http {
......
Verbindungslimitzone $binary_remote_addr Zone=eins:10m;
limit_req_zone $binary_remote_addr Zone=fifa:10m Rate=5r/s;
......
Server {
......
limit_conn eins 5;
limit_req-Zone = FIFA-Burst = 100;
......
}}

Whitelist-Konfiguration:

http {
......
geo$whiteiplist {
 Standardwert 1;
 127.0.0.1 0;
 10.10.0.0/24 0;
}
Karte $whiteiplist $limit {
 1 $binäre_Remote_Adresse;
 0 "";
}
Verbindungslimitzone $limit zone=one:10m;
limit_req_zone $limit zone=fifa:10m Rate=5r/s;
......
Server {
......
limit_conn eins 5;
limit_req Zone=Fifa Burst=100;
......
}}

veranschaulichen:

Die Geo-Direktive definiert eine Whitelist $whiteiplist, der Standardwert ist 1 und alle sind eingeschränkt. Wenn die Client-IP mit der in der Whitelist aufgeführten IP übereinstimmt, beträgt der $whiteiplist-Wert 0, was bedeutet, dass keine Einschränkung vorliegt.

Der Map-Befehl ordnet den Wert 1 von $whiteiplist, also die eingeschränkte IP, der Client-IP zu. Ordnen Sie den $whiteiplist-Wert 0, also die Whitelist-IP, einer leeren Zeichenfolge zu.

Die Anweisungen „Limit_conn_zone“ und „limit_req_zone“ mit leeren Schlüsseln werden ignoriert, sodass es keine Beschränkung für die aufgelisteten IPs gibt.

Das obige Beispiel für die Whitelist-Einrichtung durch Nginx über das Geomodul ist alles, was ich mit Ihnen teilen möchte. Ich hoffe, es kann Ihnen als Referenz dienen. Ich hoffe auch, dass Sie 123WORDPRESS.COM unterstützen werden.

Das könnte Sie auch interessieren:
  • So legen Sie eine Verzeichnis-Whitelist und eine IP-Whitelist in Nginx fest
  • So fügen Sie Nginx dynamisch eine Zugriffs-Whitelist hinzu
  • Konfigurieren Sie eine Firewall mit Blacklist- oder Whitelist-Funktion für den Nginx-Server
  • Detaillierte Erklärung der Whitelist-Regeln von nginx-naxsi

<<:  JS realisiert einfachen Bildkarusselleffekt

>>:  Mysql-Lösung zur Verbesserung der Effizienz beim Kopieren großer Datentabellen

Artikel empfehlen

MySql-Anmeldekennwort vergessen und Lösung für vergessenes Kennwort

Methode 1: MySQL bietet einen Befehlszeilenparame...

Docker stop stoppt/remove löscht alle Container

In diesem Artikel wird hauptsächlich das Stoppen/...

CSS3 Flexible Box Flex, um ein dreispaltiges Layout zu erreichen

Wie der Titel schon sagt: Die Höhe ist bekannt, d...

MySQL-Batch löschen großer Datenmengen

MySQL-Batch löschen großer Datenmengen Angenommen...

JS-Implementierung eines Karussellbeispiels

In diesem Artikel wird der spezifische JS-Code zu...

Einführung in Container-Datenvolumes in Docker

Inhaltsverzeichnis Datenvolumen des Docker-Contai...

Detaillierte Installation und Konfiguration von Subversion (SVN) unter Ubuntu

Wenn Sie Softwareentwickler sind, müssen Sie mit ...