Linux Security

UFW unter Debian 13 installieren und konfigurieren – Die einfache Linux-Firewall

Eine Firewall gehört zu den wichtigsten Sicherheitsmaßnahmen eines Linux-Servers. In diesem Artikel erfährst du Schritt für Schritt, wie du die UFW Firewall unter Debian 13 installierst, konfigurierst und optimal absicherst – inklusive SSH-Schutz, Logging, IPv6-Unterstützung und Fail2Ban-Integration.

3 min Lesezeit
Grafik: UFW Firewall unter Debian 13 sicher einrichten

Eine Firewall gehört zu den wichtigsten Sicherheitsmaßnahmen eines Linux-Servers. Sie kontrolliert, welche Netzwerkverbindungen erlaubt oder blockiert werden und schützt so vor unbefugten Zugriffen aus dem Internet.

Unter Debian 13 ist die Uncomplicated Firewall (UFW) die einfachste Möglichkeit, eine leistungsfähige Firewall einzurichten. UFW basiert auf den Linux-Technologien Netfilter und nftables beziehungsweise iptables, bietet jedoch eine deutlich einfachere Bedienung.

In diesem Artikel zeige ich Schritt für Schritt, wie du UFW unter Debian 13 installierst, konfigurierst und sicher betreibst.


Was ist UFW?

UFW steht für Uncomplicated Firewall und wurde ursprünglich für Ubuntu entwickelt. Mittlerweile ist sie auch auf Debian weit verbreitet.

Vorteile:

  • Einfache Bedienung
  • Schnelle Einrichtung
  • Unterstützung für IPv4 und IPv6
  • Ideal für Server und VPS-Systeme
  • Integration mit Fail2Ban
  • Übersichtliche Regelverwaltung

System aktualisieren

Vor der Installation solltest du dein System auf den aktuellen Stand bringen.

sudo apt update
sudo apt upgrade -y

UFW installieren

Die Installation erfolgt direkt über die Paketverwaltung.

sudo apt install ufw -y

Nach der Installation kannst du die Version prüfen:

ufw version

Beispielausgabe:

ufw 0.36.x

Aktuellen Status prüfen

Standardmäßig ist UFW nach der Installation deaktiviert.

sudo ufw status

Ausgabe:

Status: inactive

Standardrichtlinien festlegen

Eine sichere Grundkonfiguration lautet:

Eingehende Verbindungen blockieren

sudo ufw default deny incoming

Ausgehende Verbindungen erlauben

sudo ufw default allow outgoing

Dadurch werden grundsätzlich alle eingehenden Verbindungen blockiert, solange sie nicht explizit erlaubt werden.


SSH-Zugriff freigeben

Wichtig!

Bevor du UFW aktivierst, musst du deinen SSH-Port freigeben. Andernfalls sperrst du dich selbst aus.

Standard-SSH-Port 22

sudo ufw allow 22/tcp

Alternativer SSH-Port 2222

Falls du SSH auf Port 2222 betreibst:

sudo ufw allow 2222/tcp

Status prüfen:

sudo ufw status numbered

HTTP und HTTPS freigeben

Für Webserver werden folgende Ports benötigt:

HTTP

sudo ufw allow 80/tcp

HTTPS

sudo ufw allow 443/tcp

Alternativ:

sudo ufw allow "Apache Full"

UFW aktivieren

Nun kann die Firewall aktiviert werden.

sudo ufw enable

Beispiel:

Command may disrupt existing ssh connections.
Proceed with operation (y|n)?

Mit:

y

bestätigen.


Firewall-Regeln anzeigen

Einfache Übersicht:

sudo ufw status

Detaillierte Übersicht:

sudo ufw status verbose

Nummerierte Anzeige:

sudo ufw status numbered

Beispiel:

[1] 22/tcp ALLOW IN Anywhere
[2] 80/tcp ALLOW IN Anywhere
[3] 443/tcp ALLOW IN Anywhere

Regel löschen

Einzelne Regeln lassen sich anhand ihrer Nummer entfernen.

Beispiel:

sudo ufw delete 2

Alternativ:

sudo ufw delete allow 80/tcp

Zugriff auf bestimmte IP-Adressen beschränken

SSH nur für eine bestimmte IP erlauben:

sudo ufw allow from 203.0.113.10 to any port 22

Komplettes Netzwerk erlauben:

sudo ufw allow from 192.168.1.0/24

IP-Adresse blockieren

Einzelne IP sperren:

sudo ufw deny from 203.0.113.50

Subnetz sperren:

sudo ufw deny from 198.51.100.0/24

Rate-Limiting für SSH aktivieren

Eine sehr sinnvolle Schutzfunktion gegen Brute-Force-Angriffe:

sudo ufw limit ssh

oder

sudo ufw limit 22/tcp

Bei zu vielen Verbindungsversuchen wird die Quelle automatisch eingeschränkt.


IPv6-Unterstützung prüfen

UFW unterstützt IPv6 automatisch.

Konfiguration anzeigen:

sudo nano /etc/default/ufw

Folgende Zeile sollte vorhanden sein:

IPV6=yes

Logging aktivieren

Für die Fehleranalyse und Sicherheitsüberwachung empfiehlt sich das Logging.

sudo ufw logging on

Alternativ:

sudo ufw logging medium

Mögliche Stufen:

off
low
medium
high
full

UFW-Protokolle anzeigen

Die Firewall schreibt ihre Ereignisse nach:

/var/log/ufw.log

Live-Ausgabe:

sudo tail -f /var/log/ufw.log

oder:

sudo journalctl -u ufw -f

UFW zurücksetzen

Alle Regeln löschen:

sudo ufw reset

Anschließend erneut konfigurieren.


Nützliche Regeln für typische Server

Webserver

sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

Mailserver

sudo ufw allow 25/tcp
sudo ufw allow 465/tcp
sudo ufw allow 587/tcp
sudo ufw allow 993/tcp

Nextcloud-Server

sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

Zammad-Server

sudo ufw allow 22/tcp
sudo ufw allow 80/tcp
sudo ufw allow 443/tcp

Zusammenspiel mit Fail2Ban

UFW harmoniert hervorragend mit Fail2Ban.

Installation:

sudo apt install fail2ban -y

Fail2Ban kann erkannte Angreifer automatisch über UFW sperren.

Prüfen:

sudo fail2ban-client status

Diese Kombination zählt zu den wichtigsten Sicherheitsmaßnahmen für öffentlich erreichbare Linux-Server.


UFW bietet einen einfachen und gleichzeitig leistungsfähigen Einstieg in die Absicherung von Debian-Servern. Mit wenigen Befehlen lässt sich ein wirksamer Basisschutz gegen unerwünschte Zugriffe aufbauen.

Für die meisten Webserver genügt bereits eine Konfiguration mit:

  • SSH
  • HTTP
  • HTTPS
  • Logging
  • SSH-Rate-Limiting
  • Fail2Ban

Damit wird die Angriffsfläche erheblich reduziert und die Sicherheit des Systems deutlich erhöht.

Wer einen Debian-13-Server betreibt, sollte UFW daher unmittelbar nach der Grundinstallation einrichten.