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:
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.
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.
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.
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!