Nginx Installationsanleitung: Schritt-für-Schritt für Anfänger

Meistern Sie die Ersteinrichtung Ihres Hochgeschwindigkeits-Webservers! Diese umfassende Anleitung führt Anfänger durch die präzise, schrittweise Installation von Nginx sowohl auf Debian/Ubuntu- als auch auf CentOS/RHEL-Systemen. Lernen Sie wichtige Befehle zum Starten, Stoppen und Überprüfen des Dienstes sowie die entscheidende Firewall-Konfiguration, um die sofortige Erreichbarkeit zu gewährleisten. Bringen Sie Ihren Nginx-Webserver in wenigen Minuten zum Laufen.

Nginx-Installationsanleitung: Schritt-für-Schritt für Anfänger

Sie benötigen Nginx installiert, laufend und erreichbar, bevor Sie es als Webserver, Reverse-Proxy, Lastverteiler oder Cache verwenden können. Diese Nginx-Installationsanleitung führt durch die grundlegende Paketmanager-Einrichtung auf Debian/Ubuntu- und RHEL-basierten Linux-Systemen und zeigt dann, wie Sie den Dienst überprüfen und die Firewall öffnen.

Die folgenden Befehle setzen einen systemd-basierten Server und einen Benutzer mit sudo-Zugriff voraus.


Voraussetzungen

Bevor Sie beginnen, stellen Sie sicher, dass Sie Folgendes haben:

  • Einen Server oder eine virtuelle Maschine mit Ubuntu, Debian, RHEL, CentOS Stream, Rocky Linux, AlmaLinux oder einer ähnlichen Distribution.
  • Einen Nicht-Root-Benutzer mit sudo-Berechtigungen.
  • Shell-Zugriff über SSH oder ein lokales Terminal.

Installation auf Debian/Ubuntu-Systemen

Auf Debian-basierten Systemen ist Nginx in den Standard-Repositories verfügbar. Aktualisieren Sie zuerst den Paketindex, damit apt die aktuellen Paketmetadaten sieht.

Schritt 1: Paketlisten aktualisieren

Führen Sie die folgenden Befehle aus, um Ihren lokalen Paketindex zu aktualisieren:

sudo apt update

Schritt 2: Nginx installieren

Verwenden Sie den Befehl apt install, um Nginx und seine Abhängigkeiten herunterzuladen und zu installieren:

sudo apt install nginx

Schritt 3: Installationsstatus überprüfen

Nach Abschluss der Installation wird der Dienst normalerweise automatisch gestartet. Sie können seinen Status mit systemctl überprüfen:

sudo systemctl status nginx

Sie sollten eine Ausgabe sehen, die anzeigt, dass der Dienst active (running) ist.

Installation auf CentOS/RHEL-Systemen

Auf RHEL-basierten Systemen verwenden Sie dnf auf aktuellen Versionen und yum auf älteren. Einige Distributionen enthalten Nginx in ihren eigenen Repositories; andere benötigen möglicherweise EPEL oder ein offizielles Anbieter-Repository. Wenn dnf install nginx das Paket nicht finden kann, aktivieren Sie EPEL oder überprüfen Sie die Nginx-Paketierungshinweise Ihrer Distribution.

Schritt 1: EPEL-Repository installieren

Wenn Ihr System EPEL benötigt, installieren Sie es zuerst.

Für CentOS/RHEL 7:

sudo yum install epel-release

Für CentOS/RHEL 8/9 (mit DNF):

sudo dnf install epel-release

Schritt 2: Nginx installieren

Installieren Sie nun Nginx mit yum oder dnf:

# Mit yum (ältere Systeme)
sudo yum install nginx

# ODER mit dnf (neuere Systeme)
sudo dnf install nginx

Schritt 3: Nginx-Dienst starten und aktivieren

Im Gegensatz zu Debian/Ubuntu startet Nginx auf RHEL-basierten Systemen möglicherweise nicht automatisch nach der Installation. Sie müssen es manuell starten und für den automatischen Start beim Systemboot aktivieren:

# Dienst sofort starten
sudo systemctl start nginx

# Sicherstellen, dass es beim Neustart startet
sudo systemctl enable nginx

# Status überprüfen
sudo systemctl status nginx

Firewall-Konfiguration: HTTP und HTTPS zulassen

Stellen Sie nach der Installation sicher, dass Ihre Firewall Webverkehr zulässt. Wenn der Dienst läuft, aber Port 80 oder 443 blockiert ist, schlägt Ihre Browser-Überprüfung von außerhalb des Servers fehl.

Mit UFW auf Ubuntu/Debian

Das Nginx-Paket von Ubuntu registriert normalerweise UFW-Anwendungsprofile. Öffnen Sie sowohl HTTP als auch HTTPS, wenn Sie bald TLS hinzufügen möchten.

# Verfügbare Anwendungsprofile auflisten
sudo ufw app list

# Standard-Webverkehr zulassen (HTTP/HTTPS)
sudo ufw allow 'Nginx Full'

# Firewall neu laden, um Änderungen zu übernehmen
sudo ufw reload

Mit Firewalld auf RHEL-basierten Systemen

Firewalld verwendet Zonen zur Verwaltung von Regeln. Diese Befehle fügen die standardmäßigen http- und https-Dienste zur aktiven Standardzone hinzu.

# HTTP-Verkehr zulassen (Port 80)
sudo firewall-cmd --permanent --add-service=http

# HTTPS-Verkehr zulassen (Port 443)
sudo firewall-cmd --permanent --add-service=https

# Firewall-Regeln neu laden
sudo firewall-cmd --reload

Überprüfen, ob Nginx funktioniert

Nachdem das Paket installiert und die Firewall geöffnet ist, bestätigen Sie, dass Nginx die Standardseite ausliefert.

Methode 1: Webbrowser-Überprüfung

Öffnen Sie Ihren bevorzugten Webbrowser und navigieren Sie zur IP-Adresse oder Domain Ihres Servers:

http://IHRE_SERVER_IP_ADRESSE

Bei Erfolg sollten Sie die standardmäßige Nginx-Willkommensseite sehen. Der genaue Text und Dateipfad variieren je nach Distribution.

Methode 2: Befehlszeilen-Überprüfung

Verwenden Sie curl vom Server selbst, um den lokalen Listener zu überprüfen:

curl http://localhost

Dieser Befehl sollte HTML zurückgeben. Wenn er lokal fehlschlägt, überprüfen Sie systemctl status nginx und /var/log/nginx/error.log, bevor Sie DNS oder Cloud-Firewall-Regeln untersuchen.

Wichtige Nginx-Verwaltungsbefehle

Nach der Installation verwalten Sie Nginx normalerweise mit systemctl:

Aktion Befehl
Server starten sudo systemctl start nginx
Server stoppen sudo systemctl stop nginx
Neustarten (Stoppen dann Starten) sudo systemctl restart nginx
Neu laden (Konfigurationsänderungen ohne Ausfallzeit übernehmen) sudo systemctl reload nginx
Status überprüfen sudo systemctl status nginx
Autostart beim Booten deaktivieren sudo systemctl disable nginx

Testen Sie die Konfigurationssyntax vor jedem Neuladen:

sudo nginx -t
sudo systemctl reload nginx

Diese Gewohnheit fängt fehlende Semikolons, falsche Include-Pfade und doppelte listen-Konflikte ab, bevor sie den Verkehr unterbrechen.

Nächster Schritt: Einen Server-Block erstellen

Die Standardkonfiguration dient einer vom Paket bereitgestellten Willkommensseite. Auf Debian/Ubuntu befinden sich Webdateien normalerweise unter /var/www/html. Auf RHEL-basierten Systemen ist das Standard-Root-Verzeichnis oft /usr/share/nginx/html.

Ihr nächster Schritt ist die Erstellung eines Server-Blocks für Ihre Domain. Debian/Ubuntu-Layouts verwenden oft /etc/nginx/sites-available/ mit Symlinks nach /etc/nginx/sites-enabled/. RHEL-basierte Layouts verwenden häufiger Dateien unter /etc/nginx/conf.d/.

Danach fügen Sie TLS hinzu, weisen den DNS-Eintrag Ihrer Domain auf den Server und führen sudo nginx -t vor dem Neuladen aus. An diesem Punkt ist Ihre Nginx-Installation bereit für die eigentliche Site-Konfiguration.