Help Center /Anleitungen /UFW-Firewall einrichten unter Ubuntu und Debian

UFW-Firewall einrichten unter Ubuntu und Debian

UFW unter Ubuntu und Debian einrichten: zuerst SSH freigeben, Ports öffnen, Regeln prüfen und löschen, IPv6, ufw limit und die Docker-Falle.

Updated 23.10.2026

UFW (Uncomplicated Firewall) ist die einfachste Firewall für Ubuntu und Debian. Sie steuert iptables bzw. nftables, ohne dass du deren Syntax lernen musst.

Die Firewall lässt nur SSH und Web-Ports durch und sperrt alles andere

Installieren

Unter Ubuntu ist UFW meist schon installiert, aber ausgeschaltet. Unter Debian installierst du es:

apt install -y ufw

Wichtig: zuerst SSH erlauben

Achtung: Schaltest du UFW ein, ohne SSH freizugeben, sperrst du dich aus. Deshalb immer zuerst:

ufw allow OpenSSH

OpenSSH steht für Port 22. Hast du den SSH-Port geändert, zum Beispiel auf 2222, gibst du stattdessen diesen frei:

ufw allow 2222/tcp

Auf welchem Port SSH läuft, zeigt sshd -T | grep -i '^port'.

Standardregeln und Einschalten

ufw default deny incoming
ufw default allow outgoing
ufw enable

Die Rückfrage, ob bestehende SSH-Verbindungen gestört werden können, bestätigst du mit y, wenn SSH wie oben freigegeben ist. Die Regeln gelten sofort und auch nach jedem Neustart.

Weitere Ports freigeben

  • Webserver: ufw allow 80/tcp und ufw allow 443/tcp
  • WireGuard: ufw allow 51820/udp
  • Minecraft: ufw allow 25565/tcp
  • Nur von einer IP erlauben: ufw allow from 203.0.113.5 to any port 3306
  • Eine IP ganz sperren: ufw insert 1 deny from 203.0.113.5. Die Regel muss ganz oben stehen, weil die erste passende Regel gilt.

App-Profile

Viele Pakete bringen ein Profil mit, das ihre Ports kennt. ufw app list zeigt die vorhandenen Profile, ufw app info "Nginx Full" die Ports dahinter. Nach der Installation von Nginx gibst du HTTP und HTTPS so in einem Schritt frei:

ufw allow "Nginx Full"

Regeln prüfen

ufw status verbose

Das zeigt, ob UFW aktiv ist, welche Standardregeln gelten und welche Ports offen sind. Steht dort Status: inactive, ist die Firewall aus.

Regeln löschen

ufw status numbered
ufw delete 3

Nach jedem Löschen rücken die Nummern nach. Lass dir die Liste deshalb vor jedem weiteren delete neu anzeigen. Ist IPv6 aktiv, steht jede Regel zweimal in der Liste, einmal mit (v6). Einfacher ist es, die Regel selbst anzugeben. Das entfernt beide Einträge auf einmal:

ufw delete allow 80/tcp

IPv6 nicht vergessen

Damit deine Regeln auch für IPv6 gelten, muss in /etc/default/ufw diese Zeile stehen:

IPV6=yes

Unter Debian und Ubuntu ist das der Standard. Steht dort no, nimmt der Server bei eingeschalteter Firewall über IPv6 keine Verbindungen an. Nach einer Änderung schaltest du UFW einmal aus und wieder ein: ufw disable, dann ufw enable.

Login-Versuche bremsen mit ufw limit

ufw limit OpenSSH

Bei abweichendem Port entsprechend ufw limit 2222/tcp. UFW blockiert dann eine IP-Adresse, die innerhalb von 30 Sekunden sechs oder mehr Verbindungen aufbaut. Das bremst Passwort-Rater, ersetzt aber keinen SSH-Key und kein Fail2ban. Vorsicht bei Werkzeugen, die viele Verbindungen schnell hintereinander öffnen, etwa Deploy-Skripte: Sie können sich damit selbst aussperren.

Und die Firewall im Panel?

Für KVM-Server gibt es im XionHosting-Panel unter Firewall zusätzlich eine Firewall vor deinem Server. Sie arbeitet unabhängig von UFW. Steht sie auf „Eingehend: Geschlossen“, kommt nur durch, was dort eine Regel erlaubt. Gibst du in UFW einen neuen Port frei, lege dann auch im Panel eine Regel dafür an. Steht sie auf „Offen“, lässt sie alles durch, was du dort nicht ausdrücklich sperrst.

Achtung bei Docker

Docker schreibt eigene iptables-Regeln und umgeht dabei UFW. Ein Container mit -p 8080:80 ist von außen erreichbar, auch wenn UFW den Port nicht freigibt, und ufw status zeigt davon nichts. Binde solche Ports an localhost (-p 127.0.0.1:8080:80) und leite sie über einen Reverse Proxy nach außen.

Ausgesperrt?

Über die Konsole im XionHosting-Panel kommst du auch ohne SSH auf den Server. Dort schaltest du die Firewall mit ufw disable ab, gibst SSH frei und schaltest sie mit ufw enable wieder ein.

Die weiteren Schritte für einen neuen Server stehen in Linux-Server absichern.

Did this help?