Heim Betrieb und Instandhaltung Nginx So erstellen Sie eine sichere VPS-Umgebung mit NGINX und PM2

So erstellen Sie eine sichere VPS-Umgebung mit NGINX und PM2

Sep 27, 2023 am 08:01 AM
nginx (Zeichen): Webserver pm (Wörter): Prozessmanager Sicherheit (Wörter): VPS-Schutz

So erstellen Sie eine sichere VPS-Umgebung mit NGINX und PM2

So erstellen Sie eine sichere VPS-Umgebung mit NGINX und PM2

Mit der Popularität des Internets ist VPS (Virtual Private Server) zur bevorzugten Bereitstellungsumgebung für viele Websites und Anwendungen geworden. Allerdings gewinnen Sicherheitsaspekte zunehmend an Bedeutung. In diesem Artikel besprechen wir die Verwendung von NGINX und PM2 zum Aufbau einer sicheren VPS-Umgebung und stellen spezifische Codebeispiele bereit.

NGINX ist ein schneller, leistungsstarker HTTP- und Reverse-Proxy-Server, der uns dabei helfen kann, einen Lastausgleich zu erreichen und Server vor böswilligen Angriffen zu schützen. PM2 ist ein moderner Node.js-Anwendungsprozessmanager, der sicherstellen kann, dass unsere Node.js-Anwendung immer stabil auf dem Server läuft.

Im Folgenden sind die spezifischen Schritte zum Aufbau einer sicheren VPS-Umgebung aufgeführt:

  1. NGINX installieren
    Zuerst müssen wir NGINX auf dem VPS installieren. Spezifische Installationsschritte finden Sie in der offiziellen NGINX-Dokumentation. Nachdem die Installation abgeschlossen ist, müssen wir die Sicherheitsparameter konfigurieren, indem wir die NGINX-Konfigurationsdatei bearbeiten.
  2. HTTPS konfigurieren
    Das HTTPS-Protokoll gewährleistet eine sichere Kommunikation zwischen Websites und Anwendungen. Wir können HTTPS mit kostenlosen Let's Encrypt-Zertifikaten implementieren. Zuerst müssen wir das Certbot-Tool installieren und darüber Zertifikate beantragen und erneuern.

    sudo apt-get install certbot 
    sudo certbot certonly --nginx

    Dieser Befehl konfiguriert das Zertifikat automatisch mithilfe des NGINX-Plugins.

  3. Konfigurieren eines Reverse-Proxys
    Reverse-Proxys können zusätzliche Sicherheits- und Leistungsvorteile bieten. Wir können NGINX als Reverse-Proxy-Server verwenden, um Anfragen an die Node.js-Anwendung weiterzuleiten, die auf PM2 ausgeführt wird. Hier ist eine Beispiel-NGINX-Konfigurationsdatei:

    server {
        listen 80;
        server_name example.com;
    
        location / {
            proxy_pass http://localhost:3000;  # 此处的3000是Node.js应用程序的端口
            proxy_http_version 1.1;
            proxy_set_header Upgrade $http_upgrade;
            proxy_set_header Connection 'upgrade';
            proxy_set_header Host $host;
            proxy_cache_bypass $http_upgrade;
        }
    }

    Diese Konfigurationsdatei leitet alle Anfragen von example.com an die Node.js-Anwendung weiter, die auf localhost ausgeführt wird.

  4. Firewall konfigurieren
    Firewalls sind ein wichtiger Bestandteil beim Schutz Ihres Servers vor böswilligen Angriffen. Wir können UFW (Uncomplicated Firewall) verwenden, um Firewall-Regeln zu konfigurieren.

    sudo ufw allow OpenSSH  # 允许SSH访问
    sudo ufw allow 'Nginx HTTP'  # 允许HTTP访问
    sudo ufw enable  # 启用防火墙

    Mit den oben genannten Befehlen können wir SSH- und HTTP-Zugriff zulassen und der Firewall ermöglichen, andere fehlerhafte Verbindungen zu filtern und zu blockieren.

  5. Verwenden Sie PM2 zum Verwalten von Node.js-Anwendungen
    PM2 kann sicherstellen, dass unsere Node.js-Anwendungen immer stabil auf dem Server laufen und die Anwendungen automatisch starten und überwachen. Hier sind die Beispielbefehle zum Verwalten Ihrer Anwendung mit PM2:

    pm2 start app.js --name myapp  # 启动应用程序
    pm2 list  # 查看当前运行的应用程序
    pm2 restart myapp  # 重启应用程序

    PM2 bietet viele weitere Befehle und Funktionen, die je nach Bedarf geändert und angepasst werden können.

Durch die oben genannten Schritte können wir NGINX und PM2 verwenden, um eine sichere VPS-Umgebung aufzubauen. Dies ist natürlich nur ein grundlegendes Konfigurationsbeispiel. Sie können es entsprechend Ihren spezifischen Anforderungen ändern und verbessern. Bitte lesen Sie die entsprechende Dokumentation sorgfältig durch und befolgen Sie bei der Verwendung die besten Sicherheitspraktiken.

Das obige ist der detaillierte Inhalt vonSo erstellen Sie eine sichere VPS-Umgebung mit NGINX und PM2. 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

Undress AI Tool

Undress AI Tool

Ausziehbilder kostenlos

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.

Stock Market GPT

Stock Market GPT

KI-gestützte Anlageforschung für intelligentere Entscheidungen

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)

Was sind die Vorteile der Verwendung von Nginx als API -Gateway? Was sind die Vorteile der Verwendung von Nginx als API -Gateway? Aug 31, 2025 am 09:17 AM

Als API -Gateway hat NginX die Vorteile von hoher Leistung, geringer Latenz, Lastausgleich und Sicherheitskontrolle. 1. Übernehmen Sie eine ereignisgesteuerte Architektur, unterstützt hohe Parallelitäts- und geringe Ressourcenverbrauch und verbessert die API-Reaktionsgeschwindigkeit. 2. unterstützt mehrere Lastausgleichsstrategien und Gesundheitsprüfungen, um eine hohe Verfügbarkeit von Dienstleistungen zu gewährleisten. 3. kann URLs anhand von Regeln wie Pfaden und Domain -Namen weiterleiten und neu schreiben, um die API -Versionsverwaltung zu erleichtern. V. 5. Support Response Caching, reduziert den Back-End-Druck und verbessert die lessintensive API-Leistung. 6. Passen Sie die Protokollformate an, um die Integration in Überwachungssysteme wie Elche und Grafana zu erleichtern. 7. Unterstützt HTTP/2, HTTP/3 und WebSocket.

Wie verwenden Sie das GEO -Modul in Nginx? Wie verwenden Sie das GEO -Modul in Nginx? Aug 29, 2025 am 08:02 AM

Das GGINX -GEO -Modul wird verwendet, um Variablen basierend auf der Client -IP -Adresse zu erstellen. 1. Die Zuordnung des IP -Bereichs und der variablen Werte kann über die GEO -Anweisungen im HTTP -Block definiert werden, z. 2. Wenn Geolokalisierung auf nationaler Ebene erforderlich ist, unterstützt das native GEO-Modul keine direkte Abfrage der GEOIP-Datenbank und hängt vom Drittanbietermodul NGX_HTTP_GEOIP2_MODUL ab. Native GEO gilt nur für die manuelle Konfiguration des CIDRIP -Segments (wie das russische IP im Beispiel), aber die Wartung ist schwierig und für die Verwendung in Produktionsumgebungen nicht empfohlen. 3. Die Best Practice ist es, Kartenanweisungen zu kombinieren, um die Flexibilität zu verbessern, z. B. das Festlegen von GEO zuerst.

Was sind die Auswirkungen auf die Leistungsmarkierung in Nginx? Was sind die Auswirkungen auf die Leistungsmarkierung in Nginx? Aug 22, 2025 am 11:58 AM

Diski/ooverheadisthemainperformanceConcern, ashighrequestvolumsincreaseWriteoperationen, potenziellbottlenckingsloworoveredDisks;

Wie kann ich Limit -Anforderungen mit Nginx bewerten? Wie kann ich Limit -Anforderungen mit Nginx bewerten? Aug 23, 2025 am 12:54 AM

DefinearatelimitzoneIngimit_Req_zoneinThttpblockWithakeylike $ BINARY_REMOTE_ADDR, AzonenAmeAndsize, Andarate (z. B. Rate = 10R/ s); 2.ApplythelimitusingLimit_ReqinThedEredLocationBlock, optional settingBurStandNodelaytomanagetemporarytrafficSpikes; 3.OP

Welche Rolle spielt die Master- und Arbeiterprozesse in Nginx? Welche Rolle spielt die Master- und Arbeiterprozesse in Nginx? Aug 22, 2025 pm 01:45 PM

NginxuSaMaster-ArbeiterarchitectureForHighperformanceAndStability; themastrocessManAgheServerByReadingConfigurations, BindingPorts, Anbieter und Handlingsignals, während ArbeiterprozessschandleClientRequestSindependententententanvent-driden, nonbloen, nonblo

Wie kann ich Umgebungsvariablen in meiner Nginx -Konfiguration verwenden? Wie kann ich Umgebungsvariablen in meiner Nginx -Konfiguration verwenden? Aug 21, 2025 am 07:48 AM

NginxdoesNotnativsupportalenvironmentvariableInitsConfigurationFiles, ButyoucanworkaroundThislimitutSuveralMethods: 1.UstheenvdirectivetopassSpecificenvironmentvariablestoworkerProceses thisdocalalowdirectusefvariablesInendirektive

Wie kann ich eine Django -Anwendung mit Nginx bereitstellen? Wie kann ich eine Django -Anwendung mit Nginx bereitstellen? Aug 23, 2025 pm 04:26 PM

Die Bereitstellung von Django -Anwendungen erfordert eine Konfiguration der Produktionsumgebung, Gunicorn und Nginx Reverse Proxy. 1. Setzen Sie Debug = false, konfigurieren Sie erlaubte_hosts, definieren Sie static_root und run scollectStatic, um statische Dateien zu sammeln. 2. Installieren Sie Gunicorn und testen Sie und führen Sie es aus. Nachdem bestätigt wurde, dass es korrekt ist, verwalten Sie den Dienst über systemd. 3. Erstellen Sie die Systemd -Dienstdatei. Konfigurieren Sie Gunicorn so, dass sie mit UNIX -Sockets beginnen, den richtigen Pfad festlegen und den Dienst nach dem Benutzer aktivieren. 4. Installieren Sie Nginx und erstellen

Wie kann ich den Zugriff auf bestimmte Teile einer Website mit Nginx einschränken? Wie kann ich den Zugriff auf bestimmte Teile einer Website mit Nginx einschränken? Aug 14, 2025 pm 02:16 PM

UseHttpBasicauthenticationWithTpasswdtopassword-Protektlokationen; 2.RestrictByipuselow/Denyrulen; 3.CombineBothWithSatiFyallfordualVerification; 4.BLOCKSITIONSITISCHFILEVIAREGEXordirectoryNies; 5. UseGeGeo/MapModulesForcuntry-basierte REARExordirectoryDeies; 5. Usegeo/mapmodulesForCountry-basierte REFICERICTIONS;

See all articles