Nginx ist ein schneller, ressourcenschonender Webserver und Reverse Proxy, der oft als Alternative zu Apache genutzt wird. Diese Anleitung zeigt, wie Nginx auf einem Ubuntu-Server installiert, konfiguriert und abgesichert wird.
Voraussetzungen
- Ubuntu 22.04 oder neuer
- Benutzer mit
sudo
-Rechten - Aktive Internetverbindung
1. Nginx installieren
Aktualisieren der Paketlisten und Installation von Nginx:
sudo apt update && sudo apt upgrade -y sudo apt install nginx -y
2. Nginx-Dienst verwalten
Nginx starten, stoppen und aktivieren:
sudo systemctl start nginx # Starten sudo systemctl stop nginx # Stoppen sudo systemctl restart nginx # Neustarten sudo systemctl enable nginx # Automatischen Start aktivieren
3. Firewall für Nginx konfigurieren
Falls ufw
(Uncomplicated Firewall) aktiv ist:
sudo ufw allow 'Nginx Full' sudo ufw enable sudo ufw status
4. Nginx testen
Aufrufen der Server-IP im Browser:
http://<deine-server-ip>
Die IP kann mit folgendem Befehl ermittelt werden:
ip a | grep inet
5. Standard-Webseite anpassen
Bearbeiten der Standard-Webseite:
sudo nano /var/www/html/index.html
Ersetzen des Inhalts mit:
<!DOCTYPE html> <html> <head> <title>Mein Nginx Server</title> </head> <body> <h1>Willkommen auf meinem Nginx-Server!</h1> </body> </html>
Speichern mit STRG + X
, Y
und Enter
.
6. Eigene Serverblöcke (Virtual Hosts) konfigurieren
Erstellen einer neuen Konfigurationsdatei:
sudo nano /etc/nginx/sites-available/meineseite
Einfügen folgender Konfiguration (Domain anpassen):
server { listen 80; server_name meineseite.de www.meineseite.de; root /var/www/meineseite; index index.html; location / { try_files $uri $uri/ =404; } }
Speichern und das Webseitenverzeichnis erstellen:
sudo mkdir -p /var/www/meineseite sudo chown -R www-data:www-data /var/www/meineseite echo "<h1>Meine eigene Webseite</h1>" | sudo tee /var/www/meineseite/index.html
Konfiguration aktivieren:
sudo ln -s /etc/nginx/sites-available/meineseite /etc/nginx/sites-enabled/ sudo nginx -t sudo systemctl restart nginx
7. Nginx mit SSL/TLS absichern (Let’s Encrypt)
Installation von Certbot:
sudo apt install certbot python3-certbot-nginx -y
SSL-Zertifikat für die Domain anfordern:
sudo certbot --nginx -d meineseite.de -d www.meineseite.de
Automatische Zertifikatserneuerung testen:
sudo certbot renew --dry-run