Firewall einrichten
ufw auf Debian und Ubuntu, firewalld auf AlmaLinux und Rocky: erst SSH erlauben, dann die Ports, die du brauchst.
5 Min. Lesezeit
Auf dieser Seite
Gilt für Debian 12/13 und Ubuntu 22.04/24.04 mit ufw und für AlmaLinux 9 und Rocky Linux 9 mit firewalld. Beide regeln IPv4 und IPv6 gemeinsam.
Das Prinzip: Alles Eingehende ist zu, außer dem, was du ausdrücklich erlaubst. Ausgehendes bleibt offen.
Debian und Ubuntu: ufw
Installieren
apt install -y ufwIPv6 prüfen
In /etc/default/ufw muss IPV6=yes stehen (das ist der Standard):
grep IPV6 /etc/default/ufwDann gilt jede Regel automatisch auch für die IPv6-Adresse deines Servers.
SSH erlauben und einschalten
ufw default deny incoming
ufw default allow outgoing
ufw allow 22/tcp
ufw enableufw enable warnt, dass bestehende SSH-Verbindungen abbrechen könnten. Da 22 erlaubt ist, mit y bestätigen.
Weitere Ports öffnen
ufw allow 80/tcp # HTTP
ufw allow 443/tcp # HTTPS
ufw allow 25565/tcp # Minecraft Java
ufw allow 19132/udp # Minecraft BedrockNur für eine bestimmte Adresse, etwa deine eigene:
ufw allow from 198.51.100.7 to any port 3306 proto tcpEine Regel entfernen:
ufw status numbered
ufw delete 4Prüfen
ufw status verboseDu siehst Status: active, die Standardregeln und jede Regel zweimal: einmal für IPv4 und einmal mit (v6).
AlmaLinux und Rocky Linux: firewalld
Installieren und starten
Auf vielen Images ist firewalld schon dabei. Sonst:
dnf install -y firewalld
systemctl enable --now firewalldIn der Standard-Zone public ist SSH bereits erlaubt. Prüfe das, bevor du weitermachst:
firewall-cmd --get-active-zones
firewall-cmd --list-allBei services: muss ssh stehen. Fehlt es:
firewall-cmd --permanent --add-service=ssh
firewall-cmd --reloadWeitere Ports öffnen
firewall-cmd --permanent --add-service=http
firewall-cmd --permanent --add-service=https
firewall-cmd --permanent --add-port=25565/tcp
firewall-cmd --permanent --add-port=19132/udp
firewall-cmd --reloadOhne --permanent gilt eine Regel nur bis zum nächsten --reload oder Neustart. Mit --permanent wirkt sie erst nach --reload.
Nur für eine bestimmte Adresse:
firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="198.51.100.7" port port="3306" protocol="tcp" accept'
firewall-cmd --reloadEntfernen geht mit --remove-port, --remove-service bzw. --remove-rich-rule und denselben Werten.
Prüfen
firewall-cmd --list-allfirewalld filtert IPv4 und IPv6 gemeinsam; --add-port und --add-service gelten für beide.
Prüfen von außen
Von einem anderen Rechner aus (nicht vom Server selbst), über IPv4 und IPv6:
nmap -Pn 203.0.113.10
nmap -6 -Pn 2001:db8::10Offen sein sollte nur, was du erlaubt hast. Einen einzelnen Port prüfst du schnell mit nc -vz 203.0.113.10 25565.
Ausgesperrt?
Kommst du nach einer Regel nicht mehr per SSH rein, hilft die Konsole deines vServers im Dashboard. Sie zeigt den Bildschirm des Servers im Browser und braucht kein SSH, siehe Konsole im Browser.
-
Im Dashboard den vServer öffnen, Reiter Konsole, Verbinden.
-
Als
rootanmelden. Das Passwort steht in der Übersicht unter Zugangsdaten. Langes Passwort? Mit Text einfügen in die Konsole übertragen. Kennst du es nicht mehr: Reiter System, Root-Passwort zurücksetzen. -
SSH wieder erlauben:
bash# ufw ufw allow 22/tcp # oder die Firewall erst einmal ganz aus ufw disablebash# firewalld firewall-cmd --permanent --add-service=ssh firewall-cmd --reload # oder vorübergehend aus systemctl stop firewalld -
Per SSH testen, dann die Firewall wieder sauber einschalten.
Häufige Fehler
| Problem | Ursache und Lösung |
|---|---|
| Port offen erlaubt, trotzdem nicht erreichbar | Das Programm lauscht nur auf 127.0.0.1. ss -tlnp zeigt die Adresse; für Zugriff von außen muss dort 0.0.0.0 oder * stehen. |
| Regel wirkt nicht (firewalld) | --permanent ohne --reload, oder ohne --permanent und nach einem Neustart weg. |
ufw: command not found nach der Installation | Du bist nicht root. sudo ufw …. |
| Ausgehende Mails kommen nicht an | Ports 25, 465 und 587 sind bei vServern ausgehend zum Schutz vor Spam gesperrt, unabhängig von deiner Firewall. Die Freischaltung beantragst du im Reiter Netzwerk unter Mail-Ports, siehe Netzwerk. |
| Über IPv6 geht etwas, über IPv4 nicht (oder umgekehrt) | ufw status zeigt, ob die Regel als (v6) doppelt da ist. Bei Regeln mit fester Quelladresse gilt die Regel nur für deren Adressfamilie. |
Wie es weitergeht
- Server absichern: Login nur per Schlüssel und fail2ban.
- Alles zum vServer im Dashboard: vServer.
- Hilfe: Ticket.