🚀 Installation NGINX auf Ubuntu 24.04 – Schritt für Schritt

Als Fachinformatiker arbeite ich tagtäglich mit unterschiedlichen Webservern. In diesem Beitrag erkläre ich dir, wie du NGINX auf Ubuntu 24.04 installierst, einen Server Block einrichtest und das Ganze mit SSL absicherst. NGINX besticht durch seine hohe Performance und Flexibilität – ideal für moderne Webanwendungen und den Einsatz in KMU.


🔍 Voraussetzungen

Bevor du loslegst, stelle sicher, dass:

  • Ubuntu 24.04 auf deinem Server installiert ist.
  • Du Sudo-Rechte besitzt (als Administrator oder mit sudo).
  • Dein System auf dem neuesten Stand ist (siehe Schritt 1).
  • Eine feste IP-Adresse bzw. ein Domainname konfiguriert ist (für den späteren Server Block).

🛠️ Schritt 1️⃣: System aktualisieren

Aktualisiere zunächst die Paketliste und installiere alle Updates, um eine stabile Basis zu haben:

sudo apt update
sudo apt upgrade -y

🛠️ Schritt 2️⃣: NGINX installieren

NGINX ist im offiziellen Ubuntu-Repository enthalten. Installiere NGINX mit:

sudo apt install nginx -y

Überprüfe, ob der Dienst läuft:

sudo systemctl status nginx

Du solltest dabei „active (running)“ sehen.


🔒 Schritt 3️⃣: Firewall konfigurieren

Falls du UFW (Uncomplicated Firewall) nutzt, erlaube NGINX den Zugriff über HTTP und HTTPS:

sudo ufw allow 'Nginx Full'

Damit werden die Ports 80 und 443 geöffnet. Prüfe den Status mit:

sudo ufw status
sudo ufw status

📌 Schritt 4️⃣: NGINX konfigurieren – Einen Server Block erstellen

Um mehrere Webseiten auf einem Server zu hosten, verwendet man Server Blocks (ähnlich wie Virtual Hosts bei Apache). Im Folgenden zeige ich dir, wie du einen neuen Server Block einrichtest:

1. Web-Verzeichnis anlegen:
Erstelle das Verzeichnis für deine Website, z. B. für die Domain „meinewebsite.local“:

sudo mkdir -p /var/www/meinewebsite.local/html

2. Eigentümer und Rechte setzen:
Übernimm den Besitz (ersetze $USER durch deinen Benutzernamen, falls nötig):

sudo chown -R $USER:$USER /var/www/meinewebsite.local/html sudo chmod -R 755 /var/www/meinewebsite.local

3. Test-HTML erstellen:
Lege eine einfache „index.html“ an. Dies geht einfach mittels eines bevorzugten Texteditor wie vim. Dazu einfach : vi /var/www/meinewebsite.local/html/index.html und dann mit „Esc dann : und danach wq + Enter“.
Füge folgenden Inhalt ein:

<!DOCTYPE html> <html lang="de"> <head> <meta charset="UTF-8"> <title>Willkommen bei MeineWebsite</title> </head> <body> <h1>Hallo Welt!</h1> <p>NGINX läuft auf Ubuntu 24.04 – Installation erfolgreich!</p> </body> </html>

4. Server Block konfigurieren: Erstelle eine neue Konfigurationsdatei in /etc/nginx/sites-available/. Dazu einfach:

 vi /etc/nginx/sites-available/meinewebsite.local

Und folgenden vhost config angepasst abspeichern:

server { 
  listen 80; 
  listen [::]:80; 
  server_name meinewebsite.local www.meinewebsite.local; 
  root /var/www/meinewebsite.local/html; 
  index index.html index.htm; 
  location / { 
    try_files $uri $uri/ =404;
   } 
 }

5. Server Block aktivieren:
Erstelle einen symbolischen Link in das Verzeichnis „sites-enabled“ um die Webseite zu aktivieren:

 ln -s /etc/nginx/sites-available/meinewebsite.local /etc/nginx/sites-enabled/

6. NGINX-Konfiguration testen und neu laden:
Erstelle einen symbolischen Link in das Verzeichnis „sites-enabled“ um die Webseite zu aktivieren:

sudo nginx -t

Falls alles ok ist, lade NGINX neu:

systemctl reload nginx

🔒 Schritt 5️⃣: NGINX mit SSL absichern

Um die Kommunikation zu verschlüsseln, installiere ein SSL-Zertifikat – beispielsweise über Let’s Encrypt.

1. Certbot installieren:
Installiere Certbot und das NGINX-Plugin:

 apt install certbot python3-certbot-nginx -y

2. SSL-Zertifikat anfordern: Fordere ein Zertifikat für deine Domain an (ersetze „meinewebsite.local“ durch deinen tatsächlichen Domainnamen):

 apt install certbot python3-certbot-nginx -y

Folge den interaktiven Anweisungen (E-Mail eingeben, Nutzungsbedingungen akzeptieren usw.). Certbot konfiguriert NGINX automatisch für HTTPS.

3. Automatische Zertifikatserneuerung testen:

sudo certbot renew --dry-run

📌 Fazit

Mit NGINX auf Ubuntu 24.04 hast du einen leistungsstarken Webserver installiert, der sich durch hohe Performance und Flexibilität auszeichnet – ideal für moderne Webanwendungen in KMU.
Als Fachinformatiker weiß ich, wie wichtig Stabilität und Sicherheit sind. Mit den oben beschriebenen Schritten richtest du einen neuen Server Block ein und sicherst den Datenverkehr mit einem kostenlosen SSL-Zertifikat ab.

Hast du Fragen oder eigene Tipps? Teile deine Erfahrungen und Anregungen in den Kommentaren!

🚀 Installation Fail2ban und ssh absichern – Schritt für Schritt

In diesem Beitrag erfährst du, wie du Fail2Ban – ein leistungsstarkes Tool zur Abwehr von Brute-Force-Angriffen – auf deinem Ubuntu-Server installierst und konfigurierst. Fail2Ban überwacht deine Logdateien und blockiert wiederholte, fehlgeschlagene Anmeldeversuche temporär, um unerwünschte Zugriffe effektiv zu verhindern.


🔒 Schritt u1: Fail2Ban installieren

Beginne mit der Installation von Fail2Ban. Öffne dazu ein Terminalfenster auf deinem Ubuntu-Server und führe folgenden Befehl aus:

sudo apt install fail2ban -y

Nach erfolgreicher Installation ist Fail2Ban bereit, konfiguriert zu werden.


🛠️ Schritt u2: Konfiguration anpassen

Um die Standardkonfiguration anzupassen, kopiere zunächst die Originaldatei jail.conf in eine lokale Konfigurationsdatei jail.local. So bleiben Updates unberührt:

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

Öffne nun die Datei /etc/fail2ban/jail.local mit deinem bevorzugten Editor, zum Beispiel mit vi oder nano, um den [sshd]-Abschnitt anzupassen:

sudo vi /etc/fail2ban/jail.local

Stelle sicher, dass der [sshd]-Abschnitt in etwa folgendermaßen konfiguriert ist:

[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/auth.log
maxretry = 5
bantime = 600

Speichere die Datei nach deinen Anpassungen ab.


🔄 Schritt u3: Fail2Ban neu starten und Status prüfen

Nachdem du die Konfiguration angepasst hast, starte Fail2Ban neu, damit die Änderungen wirksam werden:

sudo systemctl restart fail2ban

Überprüfe anschließend den Status des Fail2Ban-Dienstes für den SSH-Dienst:

sudo fail2ban-client status sshd

📌 Fazit

Mit Fail2Ban hast du ein zusätzliches Sicherheitstool eingerichtet, das deinen Server aktiv vor Brute-Force-Angriffen schützt. Durch die Überwachung der Authentifizierungsversuche und das temporäre Sperren verdächtiger IP-Adressen wird die Angriffsfläche erheblich reduziert. So erhöhst du die Sicherheit deines Servers nachhaltig.

Hast du Fragen oder weitere Tipps zur Konfiguration von Fail2Ban? Teile deine Erfahrungen und Anregungen gern in den Kommentaren!