Server-Sicherheit für Einsteiger

KAPITEL 15 · SERVER-INFRASTRUKTUR

Server-Sicherheit für Einsteiger

Die wichtigsten Sicherheitsmaßnahmen für deinen Server – von SSH-Keys über Firewalls und Updates bis zu Backups und Monitoring. Schütze deinen Server vor den häufigsten Bedrohungen!

SSH & Firewall Updates Passwörter Backups Monitoring

Inhaltsverzeichnis

Schnellübersicht

Auf dieser Seite lernst du die wichtigsten Grundlagen der Server-Sicherheit:

  • Warum Sicherheit wichtig ist: Die Folgen von Sicherheitslücken
  • CIA-Triade: Vertraulichkeit, Integrität, Verfügbarkeit
  • Häufigste Bedrohungen: DDoS, Brute-Force, Malware, Phishing
  • Basis-Absicherung: SSH, Firewall, Updates, Fail2Ban
  • Passwörter & Authentifizierung: Starke Passwörter, 2FA
  • Backups: Die 3-2-1-Regel und Backup-Strategien
  • Monitoring & Logging: Angriffe erkennen
  • Best Practices: Die wichtigsten Regeln
  • Checkliste: Schritt-für-Schritt zur Absicherung
  • FAQ: Häufige Fragen

1. Warum ist Server-Sicherheit wichtig?

Die Realität der Bedrohungen

Ein unsicherer Server ist wie ein offenes Haus ohne Tür – früher oder später wird jemand eindringen. Die Folgen können verheerend sein: Datenverlust, gestohlene Passwörter, erpresste Daten (Ransomware), Missbrauch für Spam oder DDoS-Angriffe, rechtliche Konsequenzen (DSGVO-Verstöße) und Rufschädigung.

Die gute Nachricht: Die meisten Angriffe richten sich gegen schlecht gesicherte Server. Mit einigen grundlegenden Maßnahmen kannst du 90%+ aller automatisierten Angriffe abwehren. Diese Seite zeigt dir, wie du deinen Server effektiv schützt – auch als Einsteiger!

Erschreckende Statistiken

  • ~30.000 Websites werden täglich gehackt
  • 95% aller Sicherheitsvorfälle sind auf menschliches Versagen zurückzuführen
  • Ein unsicherer Server wird innerhalb von 5 Minuten nach dem Online-Gang angegriffen
  • Die durchschnittlichen Kosten eines Datenlecks liegen bei 4,35 Mio. € (IBM 2023)
  • 60% der kleinen Unternehmen gehen innerhalb von 6 Monaten nach einem schweren Hack pleite

2. Die CIA-Triade – Die 3 Säulen der Sicherheit

Die CIA-Triade ist das fundamentale Modell der Informationssicherheit. Jede Sicherheitsmaßnahme dient einem oder mehreren dieser drei Ziele:

Confidentiality

Vertraulichkeit

Daten sind nur für autorisierte Personen zugänglich. Unbefugte dürfen keine sensiblen Informationen einsehen.

  • Verschlüsselung (SSL/TLS, AES)
  • Zugriffskontrollen (Berechtigungen)
  • Starke Authentifizierung (Passwörter, 2FA)
  • Firewalls & Netzwerk-Segmentierung

Integrity

Integrität

Daten sind korrekt und unverändert. Niemand kann sie unbemerkt manipulieren oder löschen.

  • Hash-Werte & digitale Signaturen
  • Backups & Versionierung
  • File Integrity Monitoring (FIM)
  • Schreibschutz für kritische Dateien

Availability

Verfügbarkeit

Systeme und Daten sind immer verfügbar, wenn sie benötigt werden. Ausfälle werden minimiert.

  • Redundanz (mehrere Server)
  • Backups & Disaster Recovery
  • DDoS-Schutz
  • USV (unterbrechungsfreie Stromversorgung)

Praxis-Beispiel

Stell dir einen Web-Server mit Kundendaten vor:

  • Vertraulichkeit: Nur du und autorisierte Mitarbeiter dürfen die Daten sehen (Passwörter, Verschlüsselung)
  • Integrität: Die Daten dürfen nicht unbemerkt verändert werden (Backups, Hash-Prüfungen)
  • Verfügbarkeit: Die Website muss 24/7 erreichbar sein (Redundanz, DDoS-Schutz)

3. Die häufigsten Bedrohungen

Um deinen Server zu schützen, musst du wissen, wovor du ihn schützt. Hier die häufigsten Angriffsarten:

DDoS-Angriffe

Distributed Denial of Service: Der Server wird mit so vielen Anfragen überflutet, dass er für legitime Nutzer nicht mehr erreichbar ist.

HOHES RISIKO

Brute-Force-Angriffe

Automatisierte Versuche, Passwörter durch Ausprobieren aller Kombinationen zu knacken. Besonders bei SSH beliebt.

HOHES RISIKO

Malware & Ransomware

Schädliche Software, die Daten verschlüsselt und Lösegeld fordert, oder den Server für Botnetze missbraucht.

HOHES RISIKO

Phishing & Social Engineering

Täuschung von Benutzern zur Preisgabe von Passwörtern oder sensiblen Daten. Oft per E-Mail.

MITTLERES RISIKO

Insider-Bedrohungen

Angriffe von innen – durch Mitarbeiter, ehemalige Kollegen oder kompromittierte Accounts.

MITTLERES RISIKO

Zero-Day-Exploits

Nutzung unbekannter Sicherheitslücken, bevor ein Patch verfügbar ist. Schwer zu verhindern.

SEL TEN, ABER GEFÄHRLICH

Gut zu wissen

Die meisten Angriffe sind automatisiert! Bots durchsuchen das Internet 24/7 nach schlecht gesicherten Servern. Ein unsicherer Server wird oft innerhalb von Minuten nach dem Online-Gang angegriffen. Die gute Nachricht: Mit einfachen Maßnahmen kannst du die meisten automatisierten Angriffe abwehren.

4. Die 8 wichtigsten Sicherheitsmaßnahmen

Diese Maßnahmen bilden das Fundament einer sicheren Server-Konfiguration. Jede einzelne ist wichtig!

MASSNAHME 01

SSH absichern

Der erste Verteidigungspunkt

SSH ist das Haupteinfallstor für Angreifer. Richtig konfiguriert, ist es sehr sicher.

  • SSH-Keys statt Passwörter nutzen
  • Root-Login deaktivieren
  • Standard-Port (22) ändern
  • Nur SSH Protocol 2 erlauben
  • Idle-Timeout setzen
MASSNAHME 02

Firewall konfigurieren

Nur notwendige Ports öffnen

Eine Firewall blockiert alle Verbindungen, die nicht explizit erlaubt sind.

  • UFW (Ubuntu) oder firewalld (RHEL)
  • Default-Deny Policy
  • Nur benötigte Ports öffnen
  • Regelmäßig Regeln prüfen
  • Logging aktivieren
MASSNAHME 03

Regelmäßige Updates

Schließe Sicherheitslücken

Veraltete Software ist eine der häufigsten Ursachen für Sicherheitsvorfälle.

  • Automatische Security Updates
  • Regelmäßige System-Updates
  • Kernel-Updates nicht vergessen
  • Software-Versionen prüfen
  • Unnötige Software deinstallieren
MASSNAHME 04

Starke Passwörter & 2FA

Die erste Verteidigungslinie

Passwörter sind oft das schwächste Glied in der Sicherheitskette.

  • Mindestens 16 Zeichen
  • Mix aus Groß-/Klein, Zahlen, Symbolen
  • Passwort-Manager verwenden
  • 2-Faktor-Authentifizierung (2FA)
  • Keine Passwörter wiederverwenden
MASSNAHME 05

Regelmäßige Backups

Deine Lebensversicherung

Backups sind deine letzte Verteidigungslinie gegen Datenverlust, Ransomware und Katastrophen.

  • 3-2-1-Regel beachten
  • Automatische Backups einrichten
  • Backups verschlüsseln
  • Regelmäßig Recovery testen
  • Off-Site Backups (Cloud)
MASSNAHME 06

Monitoring & Logging

Angriffe früh erkennen

Ohne Monitoring bemerkst du einen Angriff oft erst, wenn es zu spät ist.

  • Log-Dateien überwachen
  • Alerts bei verdächtigen Aktivitäten
  • Resource-Monitoring (CPU, RAM)
  • Intrusion Detection (Fail2Ban)
  • Zentrale Log-Sammlung
MASSNAHME 07

HTTPS / SSL/TLS

Verschlüsselte Verbindungen

Jede Web-Verbindung sollte verschlüsselt sein – besonders bei sensiblen Daten.

  • Let's Encrypt (kostenlose Zertifikate)
  • HTTP → HTTPS Redirect
  • Moderne TLS-Versionen (1.2+)
  • HSTS Header setzen
  • Regelmäßige Zertifikat-Erneuerung
MASSNAHME 08

Fail2Ban & Intrusion Detection

Automatischer Schutz

Fail2Ban blockiert IPs nach fehlgeschlagenen Login-Versuchen automatisch.

  • Fail2Ban installieren
  • SSH, Web-Server, Mail schützen
  • Ban-Zeiten konfigurieren
  • Whitelist für eigene IP
  • Logs regelmäßig prüfen

5. SSH absichern – Schritt für Schritt

SSH (Secure Shell) ist das wichtigste Werkzeug für die Server-Verwaltung. Hier die wichtigsten Schritte:

SSH-Keys generieren und nutzen

SSH-Keys sind sicherer als Passwörter. Erstelle ein Key-Pair auf deinem lokalen Computer:

BASH # Auf deinem lokalen Computer (NICHT auf dem Server!) ssh-keygen -t ed25519 -C "dein-email@beispiel.de" # Folge den Anweisungen: # - Speicherort: Standard (~/.ssh/id_ed25519) # - Passphrase: Starkes Passwort eingeben! # Public Key auf den Server kopieren ssh-copy-id benutzer@dein-server.de # Jetzt kannst du dich ohne Passwort einloggen ssh benutzer@dein-server.de

SSH-Konfiguration härten

Bearbeite die SSH-Konfigurationsdatei auf dem Server:

BASH # SSH-Konfiguration öffnen sudo nano /etc/ssh/sshd_config # Wichtige Einstellungen: Port 2222 # Nicht-Standard-Port PermitRootLogin no # Root-Login deaktivieren PasswordAuthentication no # Nur SSH-Keys erlauben PubkeyAuthentication yes # SSH-Keys aktivieren Protocol 2 # Nur SSH Protocol 2 MaxAuthTries 3 # Max. Login-Versuche ClientAliveInterval 300 # Timeout nach 5 Min AllowUsers dein-benutzer # Nur bestimmte User # SSH-Dienst neu starten sudo systemctl restart sshd

WICHTIG: Teste zuerst!

Bevor du SSH änderst:

  1. Öffne eine zweite SSH-Sitzung (als Backup)
  2. Teste die Konfiguration mit sshd -t
  3. Stelle sicher, dass du dich mit SSH-Key einloggen kannst
  4. Erst dann Passwort-Authentifizierung deaktivieren!

6. Firewall konfigurieren – UFW Beispiel

UFW (Uncomplicated Firewall) ist die einfachste Firewall für Ubuntu/Debian. Hier ein typisches Setup:

BASH # UFW installieren (falls nicht vorhanden) sudo apt install ufw # Standard-Regeln setzen sudo ufw default deny incoming # Alles blockieren sudo ufw default allow outgoing # Alles erlauben # Wichtige Ports öffnen sudo ufw allow ssh # Oder: sudo ufw allow 2222/tcp sudo ufw allow http # Port 80 sudo ufw allow https # Port 443 # Optional: Spezifische IP erlauben sudo ufw allow from 192.168.1.100 # UFW aktivieren sudo ufw enable # Status prüfen sudo ufw status verbose

Welche Ports braucht dein Server?

  • SSH: 22 (oder dein geänderter Port)
  • HTTP: 80 (Web-Server)
  • HTTPS: 443 (Web-Server mit SSL)
  • Mail: 25, 587, 993, 995 (nur wenn Mail-Server)
  • DNS: 53 (nur wenn DNS-Server)
  • Datenbank: 3306, 5432 (nur intern, NICHT öffentlich!)

Regel: Öffne nur Ports, die du wirklich brauchst. Weniger ist mehr!

7. Starke Passwörter – So geht's richtig

Passwort-Stärke-Stufen

Nicht alle Passwörter sind gleich sicher. Hier die verschiedenen Stufen:

Schwach

Weniger als 8 Zeichen, nur Buchstaben oder Zahlen, häufige Wörter

passwort123
Mäßig

8-12 Zeichen, Mix aus Buchstaben und Zahlen

MeinPass1
Gut

12-16 Zeichen, Mix aus Groß-/Klein, Zahlen, Symbolen

S!cher3sP@ss
Stark

16+ Zeichen, komplexe Kombinationen, keine Wörterbuch-Wörter

K9#mP$2xL!qR7@vN
Sehr stark (Passphrase)

4+ zufällige Wörter, lang aber merkbar, mit Symbolen/Zahlen

correct-horse-battery-staple-42!

Tipps für starke Passwörter

  • Passphrase-Methode: 4 zufällige Wörter + Zahlen + Symbole (leicht zu merken, schwer zu knacken)
  • Passwort-Manager: Bitwarden, KeePass, 1Password – generiert und speichert starke Passwörter
  • Niemals wiederverwenden: Jedes Konto braucht ein eigenes Passwort
  • 2FA aktivieren: Selbst wenn das Passwort geknackt wird, ist der Account geschützt
  • Regelmäßig ändern: Mindestens alle 90 Tage (oder bei Verdacht auf Kompromittierung)

8. Backup-Strategie – Die 3-2-1-Regel

Die goldene Regel: 3-2-1

Eine bewährte Backup-Strategie, die vor fast allen Datenverlust-Szenarien schützt:

3
3 Kopien

Halte mindestens 3 Kopien deiner Daten (1 Original + 2 Backups)

2
2 Medien

Speichere auf 2 verschiedenen Medien (z.B. NAS + Cloud, oder HDD + SSD)

1
1 Off-Site

Mindestens 1 Kopie an einem anderen Ort (Cloud, anderer Standort, Safe)

Einfache Backup-Lösung mit rsync

BASH # Backup-Script erstellen nano ~/backup.sh # Inhalt: #!/bin/bash BACKUP_DIR="/backup/$(date +%Y-%m-%d)" SOURCE="/home /etc /var/www" # Backup-Verzeichnis erstellen mkdir -p $BACKUP_DIR # rsync Backup durchführen rsync -av --delete $SOURCE $BACKUP_DIR/ # Alte Backups löschen (älter als 30 Tage) find /backup -type d -mtime +30 -exec rm -rf {} \; # Script ausführbar machen chmod +x ~/backup.sh # Cron-Job für tägliches Backup (um 2 Uhr nachts) crontab -e # Füge hinzu: 0 2 * * * /root/backup.sh

Backups regelmäßig testen!

Ein Backup, das nie getestet wurde, ist kein Backup. Teste mindestens monatlich:

  • Kannst du die Dateien wiederherstellen?
  • Sind alle wichtigen Daten enthalten?
  • Funktioniert die Wiederherstellung schnell genug?
  • Sind die Backups verschlüsselt und sicher?

9. Best Practices – Die wichtigsten Regeln

Diese Regeln sollten immer beachtet werden, unabhängig von der Server-Größe:

SSH-Sicherheit

  • SSH-Keys statt Passwörter
  • Root-Login deaktivieren
  • Nicht-Standard-Port
  • Idle-Timeout setzen
  • Nur bestimmte User erlauben

Firewall-Regeln

  • Default-Deny Policy
  • Nur nötige Ports öffnen
  • Regeln dokumentieren
  • Regelmäßig prüfen
  • Logging aktivieren

Update-Management

  • Automatische Security Updates
  • Wöchentliche System-Updates
  • Kernel-Updates priorisieren
  • Changelogs prüfen
  • Rollback-Plan bereithalten

Passwort-Politik

  • Mindestens 16 Zeichen
  • Passwort-Manager nutzen
  • 2FA überall aktivieren
  • Keine Wiederverwendung
  • Regelmäßig ändern

Backup-Strategie

  • 3-2-1-Regel anwenden
  • Automatische Backups
  • Verschlüsselung nutzen
  • Monatlich testen
  • Off-Site Backups

Monitoring & Logging

  • Logs zentral sammeln
  • Alerts konfigurieren
  • Ressourcen überwachen
  • Fail2Ban einsetzen
  • Regelmäßig Logs prüfen

10. Sicherheits-Checkliste für neue Server

Nutze diese Checkliste, um jeden neuen Server systematisch abzusichern:

Schritt-für-Schritt zur Sicherheit

1. System aktualisieren

sudo apt update && sudo apt upgrade -y – Alle Pakete auf neuesten Stand bringen

2. Neuen Benutzer anlegen

Nicht als Root arbeiten! Benutzer mit sudo-Rechten erstellen

3. SSH-Keys einrichten

SSH-Key generieren, auf Server kopieren, Passwort-Authentifizierung testen

4. SSH härten

Root-Login deaktivieren, Passwort-Authentifizierung aus, Port ändern

5. Firewall konfigurieren

UFW aktivieren, nur nötige Ports öffnen (SSH, HTTP, HTTPS)

6. Fail2Ban installieren

Schutz gegen Brute-Force-Angriffe auf SSH und andere Dienste

7. Automatische Updates aktivieren

unattended-upgrades für automatische Security Updates

8. HTTPS/SSL einrichten

Let's Encrypt Zertifikat für alle Web-Dienste

9. Backups einrichten

Automatische Backups nach 3-2-1-Regel, Recovery testen

10. Monitoring aktivieren

Logs überwachen, Alerts konfigurieren, Ressourcen tracken

11. Unnötige Dienste deaktivieren

Nur benötigte Services laufen lassen (Prinzip der minimalen Oberfläche)

12. Dokumentation erstellen

Alle Änderungen, Konfigurationen und Passwörter dokumentieren

11. FAQ – Häufige Fragen

Häufige Fragen & Antworten

Brauche ich wirklich eine Firewall, wenn ich nur einen kleinen Server betreibe?

Ja, absolut! Jeder Server im Internet wird innerhalb von Minuten nach dem Online-Gang angegriffen. Eine Firewall ist wie eine Haustür – auch wenn du nur ein kleines Haus hast, lässt du die Tür nicht offen stehen. Die Einrichtung dauert nur wenige Minuten und schützt dich vor den häufigsten automatisierten Angriffen.

Wie oft sollte ich meinen Server updaten?

Security Updates: Sofort, sobald sie verfügbar sind (am besten automatisch).

System-Updates: Wöchentlich oder mindestens monatlich.

Kernel-Updates: So schnell wie möglich (erfordern Neustart).

Software-Updates: Bei neuen Versionen, besonders bei Web-Servern und Datenbanken.

Tipp: Aktiviere automatische Security Updates mit unattended-upgrades.

Ist es sicher, den SSH-Port zu ändern?

Ja, es hilft! Das Ändern des SSH-Ports von 22 auf einen anderen Port (z.B. 2222) reduziert die Anzahl der automatisierten Angriffe erheblich, da die meisten Bots nur den Standard-Port scannen. Es ist keine perfekte Lösung (Security through Obscurity), aber eine gute zusätzliche Schutzschicht. Wichtig: Vergiss nicht, den neuen Port in der Firewall zu öffnen!

Was ist besser: Password oder SSH-Key?

Eindeutig SSH-Keys! Hier die Vorteile:

  • Viel sicherer: 2048+ Bit vs. typischerweise 8-12 Zeichen
  • Resistent gegen Brute-Force: Praktisch unmöglich zu knacken
  • Bequemer: Kein Passwort eingeben (mit Passphrase + SSH-Agent)
  • Besser für Automatisierung: Scripts können sich ohne Interaktion einloggen

Best Practice: SSH-Keys verwenden UND Passwort-Authentifizierung deaktivieren.

Wie oft sollte ich Backups machen?

Das hängt von der Wichtigkeit und Änderungsrate deiner Daten ab:

  • Kritische Daten (Datenbanken): Stündlich oder täglich
  • Web-Server: Täglich
  • File-Server: Täglich oder wöchentlich
  • Konfigurationsdateien: Wöchentlich (oder bei Änderungen)
  • Gesamtes System: Monatlich

Wichtig: Backups automatisch einrichten und regelmäßig testen!

Was mache ich, wenn mein Server gehackt wurde?

Ruhe bewahren und systematisch vorgehen:

  1. Server vom Netz nehmen: Vom Internet trennen, um weiteren Schaden zu verhindern
  2. Forensik: Logs sichern, bevor du etwas änderst
  3. Angriffsvektor identifizieren: Wie ist der Angreifer eingedrungen?
  4. Passwörter ändern: Alle Passwörter auf betroffenen Systemen
  5. System neu aufsetzen: Im Zweifel: Komplette Neuinstallation (sauberste Lösung)
  6. Aus Backup wiederherstellen: Daten aus sauberem Backup zurückspielen
  7. Sicherheitslücken schließen: Die gefundene Schwachstelle beheben
  8. Benutzer informieren: Falls personenbezogene Daten betroffen sind (DSGVO!)
Brauche ich ein Antivirus auf meinem Linux-Server?

Im Allgemeinen: Nein. Linux-Server sind durch ihre Architektur und das Berechtigungssystem deutlich weniger anfällig für Viren als Windows. Wichtigere Maßnahmen sind:

  • Regelmäßige Updates
  • Firewall
  • SSH-Absicherung
  • Fail2Ban

Ausnahme: Wenn dein Server Dateien für Windows-Clients bereitstellt (File-Server, Mail-Server), kann ein Scanner wie ClamAV sinnvoll sein, um Windows-Malware zu erkennen und nicht weiterzuverbreiten.

Wie kann ich prüfen, ob mein Server sicher ist?

Regelmäßige Sicherheits-Audits durchführen:

  • Open Ports prüfen: sudo netstat -tulpn oder ss -tulpn
  • Logs analysieren: /var/log/auth.log, /var/log/syslog
  • Updates prüfen: sudo apt list --upgradable
  • Benutzer prüfen: cat /etc/passwd – Unbekannte User?
  • Online-Tools: SSL Labs Test, Security Headers Test
  • Externe Scans: nmap, Nikto, OpenVAS

Zusammenfassung

Die wichtigsten Punkte

  • CIA-Triade: Vertraulichkeit, Integrität, Verfügbarkeit – die 3 Säulen der Sicherheit
  • Häufigste Bedrohungen: DDoS, Brute-Force, Malware, Phishing
  • SSH absichern: Keys statt Passwörter, Root-Login aus, Port ändern
  • Firewall: Default-Deny, nur nötige Ports öffnen
  • Updates: Automatische Security Updates, regelmäßige System-Updates
  • Passwörter: 16+ Zeichen, Passwort-Manager, 2FA aktivieren
  • Backups: 3-2-1-Regel, automatisch, verschlüsselt, regelmäßig testen
  • Monitoring: Logs überwachen, Alerts konfigurieren, Fail2Ban nutzen
  • HTTPS: Let's Encrypt, HTTP→HTTPS Redirect, HSTS
  • Checkliste: Jeden neuen Server systematisch absichern
  • Im Ernstfall: Ruhe bewahren, systematisch vorgehen, im Zweifel neu aufsetzen
  • Security ist ein Prozess: Keine einmalige Maßnahme, sondern kontinuierliche Aufgabe

Die goldene Regel

"Security is not a product, but a process." – Bruce Schneier

Sicherheit ist kein einmaliges Projekt, sondern ein kontinuierlicher Prozess. Regelmäßige Updates, Backups, Monitoring und Anpassungen an neue Bedrohungen sind essenziell. Aber mit den hier vorgestellten Grundlagen bist du bereits deutlich besser geschützt als 90% aller Server im Internet!

Weiterführende Themen

Was ist ein Server?

Grundlagen zu Servern – Definition, Typen und Einsatzgebiete.

Zu Server-Grundlagen
Server-Typen

Alle Server-Kategorien im Überblick – nach Einsatzzweck, Formfaktor und Größe.

Zu Server-Typen
Server-Hardware

Hardware-Komponenten verstehen – CPU, RAM, Storage, Netzwerk.

Zu Server-Hardware
Server-Betriebssysteme

Linux, Windows Server, Unix – das richtige OS wählen.

Zu Server-Betriebssystemen
Portainer Projekte

10 Praxis-Projekte: WordPress, Nextcloud, Pi-hole und mehr.

Zu Server-Projekten
Server-FAQ & Tipps

Häufige Fragen und praktische Tipps für den Server-Betrieb.

Zu FAQ & Tipps