Eine Firewall ist Pflicht für jeden Server. UFW (Uncomplicated Firewall) macht die Konfiguration unter Ubuntu und Debian so einfach wie möglich. In dieser Anleitung zeigen wir die Einrichtung.
Was ist UFW?
UFW ist ein Frontend für iptables, die Linux-Firewall. Statt komplexer iptables-Regeln schreiben Sie einfache Befehle wie ufw allow ssh.
Installation
UFW ist unter Ubuntu vorinstalliert. Falls nicht:
apt update
apt install ufwGrundlegende Einrichtung
Standardrichtlinien setzen
Bevor Sie UFW aktivieren, setzen Sie sichere Standardregeln:
# Eingehende Verbindungen ablehnen
ufw default deny incoming
# Ausgehende Verbindungen erlauben
ufw default allow outgoingSSH erlauben (Wichtig!)
Bevor Sie die Firewall aktivieren, erlauben Sie SSH - sonst sperren Sie sich aus!
ufw allow ssh
# oder mit Port-Nummer:
ufw allow 22/tcpFirewall aktivieren
ufw enableBestätigen Sie mit y. Die Firewall ist jetzt aktiv.
Status prüfen
ufw statusAusgabe:
Status: active
To Action From
-- ------ ----
22/tcp ALLOW Anywhere
22/tcp (v6) ALLOW Anywhere (v6)Für mehr Details:
ufw status verbose
ufw status numbered # Mit RegelnummernPorts freigeben
Nach Dienst-Name
ufw allow http # Port 80
ufw allow https # Port 443
ufw allow ssh # Port 22
ufw allow ftp # Port 21Nach Port-Nummer
ufw allow 80 # TCP und UDP
ufw allow 80/tcp # Nur TCP
ufw allow 53/udp # Nur UDPPort-Bereiche
ufw allow 6000:6007/tcpTypische Server-Konfigurationen
Webserver
ufw allow ssh
ufw allow http
ufw allow httpsMailserver
ufw allow ssh
ufw allow 25/tcp # SMTP
ufw allow 465/tcp # SMTPS
ufw allow 587/tcp # Submission
ufw allow 993/tcp # IMAPS
ufw allow 995/tcp # POP3SDatenbank (nur lokal)
Datenbanken sollten nur lokal erreichbar sein:
# Keine Regel nötig - default deny incoming
# Für Remote-Zugriff (nicht empfohlen):
# ufw allow from 10.0.0.0/8 to any port 3306Zugriff einschränken
Nur bestimmte IP erlauben
ufw allow from 192.168.1.100 to any port 22Nur bestimmtes Subnetz
ufw allow from 10.0.0.0/8 to any port 22Bestimmte IP sperren
ufw deny from 203.0.113.100Regeln löschen
Nach Regelnummer
ufw status numbered
ufw delete 2 # Regel Nr. 2 löschenNach Regel
ufw delete allow http
ufw delete allow 80/tcpErweiterte Regeln
Rate Limiting (gegen Brute-Force)
ufw limit sshDies erlaubt maximal 6 Verbindungen in 30 Sekunden von einer IP.
Logging aktivieren
ufw logging on
ufw logging medium # low, medium, high, fullLogs finden Sie in /var/log/ufw.log.
Bestimmte IP-Ranges
# Komplettes Land blocken (Beispiel)
ufw deny from 1.2.3.0/24Anwendungsprofile
UFW hat vordefinierte Profile für bekannte Anwendungen:
# Verfügbare Profile anzeigen
ufw app list
# Info zu einem Profil
ufw app info 'Nginx Full'
# Profil anwenden
ufw allow 'Nginx Full'Beispiel: Nginx
ufw app list | grep Nginx
# Nginx Full (80, 443)
# Nginx HTTP (80)
# Nginx HTTPS (443)
ufw allow 'Nginx Full'Firewall zurücksetzen
Alle Regeln löschen und Firewall deaktivieren:
ufw resetVorsicht: Sie müssen SSH danach wieder erlauben!
Firewall deaktivieren
ufw disableBest Practices
1. Least Privilege
Öffnen Sie nur Ports, die wirklich benötigt werden.
2. SSH nicht auf Port 22
Port ändern reduziert automatisierte Angriffe:
ufw delete allow 22
ufw allow 2222/tcpDann in /etc/ssh/sshd_config:
Port 22223. Rate Limiting für SSH
ufw limit ssh # Statt: ufw allow ssh4. IPv6 nicht vergessen
UFW erstellt automatisch IPv6-Regeln. Prüfen Sie in /etc/default/ufw:
IPV6=yes5. Regelmäßig prüfen
ufw status verboseTroubleshooting
Sich selbst ausgesperrt?
Falls Sie sich per SSH ausgesperrt haben:
1. Cloud-Provider Console: Meist gibt es eine Web-Console 2. Recovery Mode: Im Rescue-System UFW deaktivieren 3. VNC/KVM: Falls verfügbar
Verbindung funktioniert nicht
1. UFW-Status prüfen: ufw status 2. Ist der Port in der Liste? 3. Läuft der Dienst? systemctl status nginx 4. Logs prüfen: tail -f /var/log/ufw.log
UFW blockiert alles
ufw allow ssh
ufw reset # Falls nötig, alle Regeln zurücksetzenUFW vs. iptables
| Aspekt | UFW | iptables | |--------|-----|----------| | Komplexität | Einfach | Komplex | | Flexibilität | Begrenzt | Unbegrenzt | | Syntax | Lesbar | Kryptisch | | Empfohlen für | Standardfälle | Spezialfälle |
Für 90% der Server reicht UFW vollkommen aus.
Fazit
UFW macht Firewall-Konfiguration einfach. Die wichtigsten Schritte: Standardregeln setzen, SSH erlauben, Firewall aktivieren, dann weitere Ports nach Bedarf freigeben. Vergessen Sie nicht: Erst SSH erlauben, dann aktivieren!