Zweck der Verwendung von Nginx Lassen Sie uns zunächst über den Hintergrund des Autors zur Verwendung von Nginx sprechen, indem wir den Alibaba Cloud ECS-Cloud-Server verwenden. Nach der Initialisierung von ECS wird eine öffentliche IP-Adresse generiert. Die Standardzugriffs-IP-Adresse greift automatisch auf Port 80 zu. Zu diesem Zeitpunkt können Sie über die IP-Adresse direkt auf den auf Port 80 gestarteten Dienst zugreifen. Wenn Sie den Domänennamen in die aktuelle IP-Adresse auflösen, können Sie über den Domänennamen direkt auf den Dienst am Port 80 zugreifen. Dann tritt jedoch ein Problem auf: Jeder kann den Domänennamen in die IP-Adresse auflösen, was bedeutet, dass auf die Dienste auf Ihrem ECS über andere Domänennamen zugegriffen werden kann. Was den Zweck betrifft, ist diese Angriffsmethode zu offensichtlich. Sie wollen wahrscheinlich Domänennamen sammeln und diese dann verkaufen (ich vermute, wer viel Fantasie hat, teilt uns bitte seine Meinung mit). Es gibt viele Möglichkeiten, diesen Angriff zu vermeiden. Den Antworten im Internet zufolge ist die Konfiguration von Nginx die bequemste und schnellste. Die allgemeine Idee ist wie folgt: Der Webdienst wird mit einem Port ungleich 80 gestartet (kann nicht direkt über die IP-Adresse aufgerufen werden) und Nginx konfiguriert einen Forward-Proxy, um den Domänennamen an den Domänennamen + Port weiterzuleiten. Ergebnis: Nach der Auflösung ist der direkte Zugriff über den eigenen Domänennamen möglich, der grundsätzlich auf die IP-Adresse + Port weitergeleitet wird. Für andere Domänennamen ist keine Portweiterleitung konfiguriert, deshalb werden sie blockiert. Es gibt viele Szenarien für die Verwendung von Nginx, wie z. B. Reverse-Proxy, Lastenausgleich usw., und die Verhinderung böswilliger Analyse ist nur eines davon. Vielleicht können wir in Zukunft unsere technischen Erfahrungen mit Nginx erweitern, aber Code ist nur ein Werkzeug. Technologie wird nur dann einen Mehrwert schaffen, wenn sie echte Probleme löst. Andernfalls ist sie nur Gerede auf dem Papier und bedeutungslos. Ich habe schon einmal einen Artikel gelesen, in dem zwei Entwickler über die Auswahl einer Technologie diskutierten. Einer von ihnen entschied sich für das unpopuläre Lua, und der andere war verwirrt, warum sie sich nicht für eine beliebte Technologie mit besserer Leistung und besserer Entwicklungserfahrung entschieden hatten. Ihre Antwort war jedoch: Solange es unser Problem lösen kann. Ich verfiel in tiefes Nachdenken. Außerdem verfolgte ich die Welle der Mikroservice-Architektur, die 2019 aufkam. Ich lernte viele neue Technologien und Begriffe und fühlte mich sehr erfüllt. Es ist jedoch schwierig, dies auf die tatsächliche Projektentwicklung anzuwenden. Hohe Parallelität und Mikrodienste sind entweder eine Technologie oder ein Kapital zum Angeben. Sie lösen praktische Probleme im Projekt oder Beschäftigungsprobleme. Es ist nichts falsch daran, zu lernen, aber bevor ich lerne, werde ich darüber nachdenken, ob ich das Gelernte anwenden werde oder ob es mich bindet. Das ist alles für jetzt. Hier sind einige allgemeine Befehle für Nginx unter Linux und die Konfigurationsdatei, die ich kopiert habe (nginx.conf). Liste der allgemeinen Befehle yum install nginx //Nginx installieren (CentOS) //Beim Booten automatisch starten systemctl enable nginx systemctl deaktiviert nginx //Überprüfen Sie den Nginx-Status systemctl status nginx //Starten, stoppen, neu starten systemctl start nginx systemctl stoppt nginx systemctl startet nginx neu //Konfiguration neu laden systemctl reload nginx //Der Standardspeicherort der Konfigurationsdatei /etc/nginx Hauptkonfigurationsdatei nginx.conf Verhindern Sie böswilliges Parsen der Konfiguration Server { hören Sie 80 Standardserver; Servername _; Zugriff_Abmeldung; Rückgabe 444; } # Weitere Informationen zur Konfiguration finden Sie unter: # * Offizielle englische Dokumentation: http://nginx.org/en/docs/ # * Offizielle russische Dokumentation: http://nginx.org/ru/docs/ Benutzer nginx; Arbeiterprozesse automatisch; Fehlerprotokoll /var/log/nginx/error.log; pid /run/nginx.pid; # Dynamische Module laden. Siehe /usr/share/doc/nginx/README.dynamic. schließen Sie /usr/share/nginx/modules/*.conf ein; Ereignisse { Arbeiterverbindungen 1024; } http { log_format main '$remote_addr - $remote_user [$time_local] "$request" ' '$status $body_bytes_sent "$http_referer" ' '"$http_user_agent" "$http_x_forwarded_for"'; Zugriffsprotokoll /var/log/nginx/access.log Haupt; sendfile an; tcp_nopush ein; tcp_nodelay ein; KeepAlive-Timeout 65; Typen_Hash_max_Größe 2048; /etc/nginx/mime.types einschließen; Standardtyp Anwendung/Oktett-Stream; # Laden Sie modulare Konfigurationsdateien aus dem Verzeichnis /etc/nginx/conf.d. # Siehe http://nginx.org/en/docs/ngx_core_module.html#include # für weitere Informationen. schließen Sie /etc/nginx/conf.d/*.conf ein; Server { hören Sie 80 Standardserver; Servername _; Zugriff_Abmeldung; Rückgabe 444; } Server { hören Sie 80; Servername www.zkrun.top; Standort / { Proxy-Passwort http://www.zkrun.top:8080; } Fehlerseite 404 /404.html; Standort = /40x.html { } Fehlerseite 500 502 503 504 /50x.html; Standort = /50x.html { } } # Einstellungen für einen TLS-fähigen Server. # # Server { # abhören 443 ssl http2 Standardserver; # hören [::]:443 ssl http2 Standardserver; # Servername _; # root /usr/share/nginx/html; # # SSL-Zertifikat "/etc/pki/nginx/server.crt"; # ssl_certificate_key "/etc/pki/nginx/private/server.key"; # ssl_session_cache geteilt:SSL:1m; # SSL-Sitzungstimeout 10 m; # ssl_ciphers HOCH:!aNULL:!MD5; # ssl_prefer_server_ciphers ein; # # # Konfigurationsdateien für den Standardserverblock laden. # /etc/nginx/default.d/*.conf einschließen; # # Standort / { # } # # Fehlerseite 404 /404.html; # Standort = /40x.html { # } # # Fehlerseite 500 502 503 504 /50x.html; # Standort = /50x.html { # } # } } Zusammenfassen Dies ist das Ende dieses Artikels zur Verwendung von Nginx, um die böswillige Auflösung von IP-Adressen zu verhindern. Weitere Informationen zur Verwendung von Nginx, um die böswillige Auflösung von IP-Adressen zu verhindern, finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder in den folgenden verwandten Artikeln. Ich hoffe, Sie werden 123WORDPRESS.COM auch in Zukunft unterstützen! Das könnte Sie auch interessieren:
|
>>: Eine kurze Diskussion über die Lösung von Axios zum Entfernen doppelter Anfragen
Es gibt einen großen Unterschied zwischen der Sch...
1. Was ist Master-Slave-Replikation? Mithilfe der...
Inhaltsverzeichnis 1 Versprechen Unterbrechen Sie...
Um folgende Ziele zu erreichen: Die MySQL-Datenba...
Ich habe node.js zum Erstellen des Servers gewähl...
Meine Umgebung: 3 centos7.5 1804 Meister 192.168....
Inhaltsverzeichnis LAMP-Architektur 1.Lampeneinfü...
Inhaltsverzeichnis 1. Übersicht 2. Verwenden Sie ...
Inhaltsverzeichnis Warum brauchen wir eine Materi...
Inhaltsverzeichnis 1. Zahlen in JavaScript 2. Mat...
Es gibt viele XHTML-Tags: div, ul, li, dl, dt, dd...
Durch die Aggregierung von Daten aus verschiedene...
Schnelle Lösung zum Vergessen des MySQL-Datenbank...
1. PC-Reset Initialisierung im PC-Stil /* normali...
Anmeldung + SessionStorage Effektanzeige Nach ein...