SSD Nodes Learn
Anleitungen Matt ConnorVon Matt Connor · Aktualisiert 2026-07-24

VPS absichern: Die ersten 10 Minuten

Schützen Sie Ihren neuen VPS sofort vor Angriffen. Dieses Runbook zeigt die Konfiguration von SSH-Keys, Deaktivierung von root und Firewall-Setup in 10 Minuten.

Die ersten 10 Minuten entscheiden über die Sicherheit Ihres Servers

Ein brandneuer VPS ist nicht sicher. Sobald er eine öffentliche IP hat, versuchen Scanner, sich einzuloggen. Das Standard-Image bietet ihnen ein großes Angriffsziel: root ist oft erreichbar, Passwörter sind oft erlaubt, es gibt keine Firewall und keine automatischen Patches. Die gute Nachricht ist, dass das Schließen dieser Sicherheitslücken etwa zehn Minuten und einige wenige Befehle dauert. Dies ist das Runbook, das ich auf jedem neuen Server ausführe, bevor ich Daten darauf speichere.

Arbeiten Sie die Schritte nacheinander ab, da die Schritte aufeinander aufbauen. Jeder Schritt hat eine eigene Anleitung, die verlinkt ist; diese Seite ist der Schnellweg, der alles verbindet.

Minute 1: Alles aktualisieren

Melden Sie sich mit den Zugangsdaten Ihres Providers als root an und bringen Sie das System vor allem anderen auf den neuesten Stand:

apt update && apt upgrade -y

Ein ungepatchtes System ist das einfachste Ziel, daher steht dieser Schritt an erster Stelle. Sobald dies abgeschlossen ist, richten Sie automatische Sicherheitsupdates ein, damit das System ohne manuelles Eingreifen aktuell bleibt.

Minute 2: Einen normalen Benutzer mit sudo erstellen

Arbeiten Sie nicht weiter als root. Erstellen Sie einen Benutzer für sich selbst und geben Sie ihm sudo-Rechte:

adduser matt
usermod -aG sudo matt

Melden Sie sich von hier aus als dieser Benutzer an und nutzen Sie sudo für Administratoraufgaben. Wenn Sie ständig als root arbeiten, bedeutet jeder Fehler und jede Kompromittierung volle Kontrolle über das System. Genau das soll das Arbeiten als unprivilegierter Benutzer verhindern.

Minute 4: SSH-Keys einrichten

Passwörter können erraten werden; Keys nicht. Wenn Sie auf Ihrem eigenen Laptop noch keinen Key haben, erstellen Sie einen:

ssh-keygen -t ed25519

Kopieren Sie dann den öffentlichen Teil auf den Server:

ssh-copy-id matt@YOUR_SERVER

ssh-copy-id erfordert die Aktivierung der Passwort-Anmeldung für den neuen Benutzer; falls diese bereits deaktiviert ist, kopieren Sie die ~/.ssh/authorized_keys von root nach /home/matt/.ssh/authorized_keys (gehört matt) oder fügen Sie Ihren öffentlichen Key manuell in diese Datei ein.

Das Konzept hinter diesem Schritt – ein Key pro Gerät, die Berechtigungen, die den Key-Login verhindern können, und das Widerrufen eines verlorenen Keys – wird in SSH-Key-Management Grundlagen behandelt.

Melden Sie sich als matt mit dem Key ab und wieder an. Bestätigen Sie die Funktion, bevor Sie mit dem nächsten Schritt fortfahren. Das Sperren von SSH, bevor der Key-Login funktioniert, führt dazu, dass man sich selbst aussperrt.

Minute 6: Root-Login und Passwörter deaktivieren

Da Ihr Key nun funktioniert, schließen Sie die zwei Türen, die Scanner nutzen. Verwenden Sie eine Drop-in-Datei, damit Paket-Updates diese nicht überschreiben. Nennen Sie sie 00-, damit sie vor 50-cloud-init.conf sortiert wird, welches in Ubuntu-Cloud-Images mit PasswordAuthentication yes geliefert wird. sshd verwendet den ersten gelesenen Wert; eine später sortierte Datei würde den Wert lautlos überschreiben:

sudo nano /etc/ssh/sshd_config.d/00-hardening.conf
PasswordAuthentication no
KbdInteractiveAuthentication no
PermitRootLogin no

Laden Sie dann SSH neu:

sudo systemctl restart ssh

Prüfen Sie anschließend die tatsächlich verwendeten Einstellungen von sshd, damit eine falsche Drop-in-Datei Sie nicht täuscht:

sudo sshd -T | grep -Ei 'passwordauthentication|permitrootlogin'

Wenn Passwörter deaktiviert und der Root-Login entfernt sind, kann der ständige Brute-Force-Verkehr gegen Ihren Server nicht mehr erfolgreich sein. Die vollständige Anleitung, inklusive einer optionalen Port-Änderung, finden Sie in SSH-Härtung auf einem VPS.

Minute 8: Die Firewall aktivieren

Blockieren Sie standardmäßig alles eingehende und erlauben Sie nur das Nötige. Erlauben Sie SSH, bevor Sie die Firewall aktivieren, sonst unterbrechen Sie Ihre eigene Verbindung:

sudo ufw default deny incoming
sudo ufw allow 22/tcp
sudo ufw enable

Fügen Sie allow-Regeln für alle Dienste hinzu, die Sie tatsächlich betreiben, wie zum Beispiel 80/tcp und 443/tcp für eine Website. Stellen Sie sicher, dass sowohl IPv4 als auch IPv6 abgedeckt sind, da eine Firewall, die nur IPv4 filtert, die IPv6-Seite offen lässt. Die vollständige Anleitung ist Firewalls 101 auf einem VPS.

Minute 10: Scanner mit Fail2ban verlangsamen

Fügen Sie schließlich Fail2ban hinzu, um Adressen zu sperren, die Ihre Ports angreifen:

sudo apt install -y fail2ban

Unter Ubuntu 24.04 schützt die Standardinstallation SSH bereits ab dem ersten Bootvorgang. Da Keys bereits erforderlich sind, dient dies als zusätzliche Absicherung, die Log-Rauschen reduziert und wiederholte Angreifer blockiert, anstatt die Hauptverteidigung zu bilden.

Ihre Checkliste

Das ist das Runbook. Nutzen Sie den untenstehenden Generator, um jeden Kontrollpunkt abzuhaken und eine personalisierte Checkliste für Ihren Server zu erstellen, inklusive des exakten Befehls für jeden Schritt:

ToolBuild your VPS hardening checklist

Führen Sie dies bei jedem neuen Server einmal durch, damit es zur Routine wird. Zehn Minuten Vorbereitung sparen Ihnen einen sehr schlechten Nachmittag, falls der Server kompromittiert wird.

Sobald die Grundlagen stehen, halten automatische Sicherheitsupdates auf Ubuntu den Server aktuell, ohne dass Sie sich neu anmelden müssen.

FAQ

Was sollte ich zuerst auf einem neuen VPS tun?

Aktualisieren Sie das System mit apt update && apt upgrade -y, erstellen Sie dann einen normalen Benutzer mit sudo und hören Sie auf, als root zu arbeiten. Richten Sie von dort aus SSH-Keys ein, deaktivieren Sie den Root-Login und die Passwort-Authentifizierung, aktivieren Sie eine Default-Deny-Firewall und installieren Sie Fail2ban. Wenn Sie diese Schritte in dieser Reihenfolge ausführen, ist jeder Schritt sicher und Sie sperren sich nicht aus.

Wie vermeide ich es, mich beim Härten von SSH auszusperren?

Richten Sie den SSH-Key-Login ein und testen Sie ihn, bevor Sie Passwörter oder Root deaktivieren. Melden Sie sich mit dem Key ab und wieder an, um die Funktion zu bestätigen, und deaktivieren Sie erst dann PasswordAuthentication und PermitRootLogin. Wenn Sie die Firewall aktivieren, erlauben Sie Port 22, bevor Sie ufw enable ausführen. Falls Sie sich doch aussperren, ermöglicht Ihnen die Web-Konsole Ihres Providers den Zugriff ohne SSH.

Brauche ich das alles wirklich auf einem kleinen Server?

Ja, da Scanner nicht darauf achten, wie klein Ihr Server ist. Sie versuchen es bei jeder öffentlichen IP auf die gleiche Weise. Das gesamte Runbook dauert etwa zehn Minuten und entfernt die einfachsten Angriffswege: kein Root-Login, kein Passworterraten, keine unnötig exponierten Dienste und automatisierte Patches für bekannte Bugs.

Was ist der wichtigste Schritt?

SSH nur mit Keys und deaktiviertem Root-Login. Die meisten Angriffe auf einen frischen VPS sind automatisierte Passwort-Guesses gegen root. Das Deaktivieren beider Funktionen macht diese gesamte Kategorie von Angriffen unmöglich. Die Firewall und Fail2ban begrenzen dann das Exponierte und verlangsamen verbleibende Angriffe.

Wie überprüfe ich, ob der Server tatsächlich abgesichert ist?

Prüfen Sie manuell drei Dinge, bevor Sie dem System vertrauen. Führen Sie sudo ss -tlnp aus und bestätigen Sie, dass nur die beabsichtigten Ports auf einer öffentlichen Adresse lauschen, ohne einen 0.0.0.0 oder [::] Dienst, den Sie vergessen haben. Führen Sie sudo ufw status verbose aus und bestätigen Sie, dass die Standard-Eingangsrichtlinie deny ist und sowohl die einfachen als auch die (v6)-Regeln vorhanden sind. Öffnen Sie immer eine zweite SSH-Sitzung, bevor Sie die erste schließen, damit ein Fehler in der SSH-Konfiguration Sie nicht vom Server aussperrt. Wenn alle drei Punkte korrekt sind, sind die Grundlagen eingerichtet.