Warum eine Firewall auf dem Server Pflicht ist
Sobald dein Server eine eigene IP-Adresse hat und im Internet erreichbar ist, klopfen automatisierte Scanner rund um die Uhr an alle erdenklichen Ports. Eine Firewall entscheidet, welche dieser Verbindungen überhaupt durchgelassen werden. Die Grundregel lautet: alles blockieren, was nicht ausdrücklich gebraucht wird. Genau dafür ist UFW (Uncomplicated Firewall) gemacht. UFW ist ein leicht bedienbares Frontend für iptables beziehungsweise nftables und auf Debian und Ubuntu mit wenigen Befehlen einsatzbereit.
Diese Anleitung richtet sich an alle, die einen Root-Server frisch aufgesetzt haben und die Grundlagen sauber verstehen wollen. Die Befehle gelten unverändert für Debian 12 und Ubuntu 24.04.
UFW installieren und Status prüfen
Auf Ubuntu ist UFW meist vorinstalliert, auf Debian musst du es oft nachinstallieren. Alle Befehle laufen als Root oder mit vorangestelltem sudo:
apt update && apt install ufw— Paket installierenufw status verbose— aktuellen Zustand anzeigen
Direkt nach der Installation ist UFW inaktiv. Die Ausgabe lautet dann schlicht Status: inactive. Schalte die Firewall jetzt aber noch nicht ein — vorher musst du unbedingt den SSH-Zugang freigeben, sonst sperrst du dich selbst aus.
Erst die wichtigste Regel: SSH nicht aussperren
Das ist der Fehler, der Einsteiger am häufigsten den Zugang kostet. Wenn du UFW mit der Standard-Policy alles eingehende blockieren aktivierst, ohne vorher SSH zu erlauben, fliegt deine eigene Verbindung sofort raus — und über SSH kommst du nicht mehr rein. Gib deshalb als allererstes den SSH-Port frei:
ufw allow OpenSSH— nutzt das hinterlegte Anwendungsprofilufw allow 22/tcp— gleicher Effekt über die Portnummer
Läuft dein SSH-Dienst auf einem abweichenden Port, musst du genau diesen Port freigeben, zum Beispiel ufw allow 2222/tcp. Prüfe im Zweifel mit grep Port /etc/ssh/sshd_config, welcher Port wirklich aktiv ist. Erst wenn die SSH-Regel steht, geht es weiter.
Standard-Policies festlegen
Die Standard-Policies bilden das Fundament: Sie bestimmen, was mit Verbindungen passiert, für die keine eigene Regel existiert. Die bewährte und sichere Kombination ist, eingehenden Verkehr grundsätzlich zu verbieten und ausgehenden zu erlauben:
ufw default deny incoming— alles Eingehende blockieren, außer du erlaubst es ausdrücklichufw default allow outgoing— dein Server darf nach außen kommunizieren (Updates, DNS, APIs)
Mit diesem Ansatz öffnest du gezielt nur die Dienste, die du wirklich brauchst, statt einzeln Löcher zu stopfen. Das ist deutlich sicherer als der umgekehrte Weg.
Ports mit allow und deny freigeben oder sperren
Jetzt öffnest du die Dienste, die dein Server anbieten soll. UFW versteht sowohl Portnummern als auch bekannte Dienstnamen aus /etc/services:
ufw allow 80/tcp— HTTP (Webserver)ufw allow 443/tcp— HTTPS (Webserver mit TLS)ufw allow 443— ohne Protokollangabe gilt die Regel für TCP und UDP
Soll ein Dienst nur für eine bestimmte Quelle erreichbar sein, schränkst du die Regel per IP ein. Das ist ideal, um etwa eine Datenbank nur für deine eigene Adresse zu öffnen:
ufw allow from 203.0.113.5 to any port 3306 proto tcp— MySQL nur von einer IPufw allow from 203.0.113.0/24 to any port 22— SSH nur aus einem ganzen Netzbereich
Mit deny sperrst du gezielt. Da eingehender Verkehr durch die Standard-Policy ohnehin blockiert ist, brauchst du deny vor allem, um einzelne Quellen gezielt auszuschließen, zum Beispiel ufw deny from 198.51.100.7. Wichtig ist die Reihenfolge: UFW arbeitet die Regeln von oben nach unten ab, die erste passende Regel gewinnt. Eine spezifische deny-Regel muss also vor einer allgemeineren allow-Regel stehen.
Regeln auflisten und gezielt löschen
Mit Nummern behältst du den Überblick und kannst einzelne Regeln sauber entfernen:
ufw status numbered— alle Regeln mit laufender Nummerufw delete 3— Regel mit Nummer 3 löschenufw delete allow 80/tcp— Regel über ihren Wortlaut löschen
UFW aktivieren und kontrollieren
Stehen SSH-Freigabe und Standard-Policies, schaltest du die Firewall scharf:
ufw enable— Firewall einschalten (startet auch nach einem Reboot automatisch)ufw status verbose— alle aktiven Regeln und Policies prüfen
UFW warnt beim Aktivieren, dass bestehende SSH-Verbindungen unterbrochen werden könnten — bestätige mit y. Teste danach unbedingt in einem zweiten Terminal, ob du dich noch per SSH einloggen kannst, bevor du die erste Sitzung schließt. So hast du immer einen Rückweg, falls eine Regel falsch sitzt. Mit ufw disable schaltest du die Firewall wieder ab, mit ufw reset setzt du alle Regeln zurück und beginnst von vorn.
Ein praktisches Sicherheitsnetz ist ufw logging on: Damit landen blockierte Verbindungen im System-Log (meist unter /var/log/ufw.log), und du siehst, was die Firewall tatsächlich abweist.
Typische Stolperfallen
- Falscher SSH-Port: Läuft SSH auf einem anderen Port, hilft die Freigabe von 22 nichts — gib den echten Port frei.
- Docker umgeht UFW: Container veröffentlichen Ports teils direkt über iptables und ignorieren UFW-Regeln. Prüfe nach dem Start von Containern mit
ufw statusgegen die tatsächlich erreichbaren Ports. - Regel-Reihenfolge: Eine zu früh stehende allgemeine
allow-Regel kann eine spezifischedeny-Regel aushebeln.
Mit Nytrix umsetzen
UFW spielt seine Stärke auf einem Server aus, auf dem du wirklich Root bist. Genau das bekommst du bei den vServern von Nytrix: voller Root-Zugriff per SSH, SSD/NVMe-Speicher und 5 TB Traffic im Monat inklusive. Der Einstieg gelingt mit dem No-IP-Tarif für 1,99 EUR (4 vCore, 4 GB RAM, 40 GB) über eine geteilte Subdomain; eine eigene IPv4 hast du ab BASIC-4 für 9,99 EUR, BASIC-6 für 17,00 EUR und BASIC-8 für 25,50 EUR. CPU und RAM lassen sich per Hot-Plug nachrüsten.
Per KVM-Konsole kommst du auch dann auf den Server, wenn eine Firewall-Regel den SSH-Zugang einmal blockiert — ein echtes Sicherheitsnetz für genau die Stolperfalle aus diesem Artikel. Bei der Neuinstallation stehen Debian 12 und Ubuntu 24.04 bereit, Docker ist mit aktiviertem Nesting und Keyctl nutzbar. Beachte: Port 25 (Mail) ist standardmäßig gesperrt. Alle Tarife laufen mit DDoS-Schutz (Voxility-Filterung), ohne Mindestlaufzeit und auf Prepaid-Basis — du lädst Guthaben auf und buchst, ohne Vertragsbindung. Brauchst du ein Ziel für eigene Backup-Skripte, bietet sich der FTP Storage ab 2,99 EUR/TB an. Weitere Praxis-Anleitungen findest du im Nytrix-Blog.