Übersicht
firewalld ist ein Dienst zur Steuerung des Netzwerkverkehrs eines Systems. Durch vordefinierte Zonen können unterschiedliche Sicherheitsstufen für Netzwerkschnittstellen oder Quell-IP-Adressen angewendet werden. Dies bietet eine benutzerfreundlichere Schnittstelle im Vergleich zur direkten Handhabung komplexer iptables-Regeln.
Hauptmerkmale
- Dynamische Regelverwaltung: Regeländerungen ohne Neustart des Dienstes möglich
- Zonenbasiert: Unterschiedliche Sicherheitspolitiken je nach Netzwerkschnittstelle oder Quelle
- Service- und Portverwaltung: Einfaches Öffnen/Blockieren bestimmter Dienste (SSH, HTTP etc.) oder Ports
- Rich Rules: Konfiguration komplexer, bedingungsbasierter Regeln möglich
- IPv4- und IPv6-Unterstützung
Wichtige Optionen
Dies sind Optionen, die beim Ausführen des firewalld-Dienstes selbst verwendet werden. Die meisten Firewall-Regelverwaltungen erfolgen über den Befehl firewall-cmd.
Optionen für den Dienststart
Erzeugter Befehl:
Kombinieren Sie die Befehle.
Beschreibung:
`firewalld` Führen Sie den Befehl aus.
Kombinieren Sie diese Optionen und führen Sie die Befehle virtuell zusammen mit der KI aus.
Anwendungsbeispiele
Der firewalld-Dienst wird hauptsächlich über den Befehl systemctl verwaltet. Die Konfiguration von Firewall-Regeln erfolgt über den Befehl firewall-cmd.
firewalld-Dienst starten
sudo systemctl start firewalld
Startet den firewalld-Daemon.
firewalld-Dienst aktivieren (automatischer Start beim Booten)
sudo systemctl enable firewalld
Konfiguriert firewalld so, dass es beim Systemstart automatisch gestartet wird.
Status des firewalld-Dienstes prüfen
sudo systemctl status firewalld
Überprüft den aktuellen Status des firewalld-Dienstes.
firewalld-Dienst neu starten
sudo systemctl restart firewalld
Startet den firewalld-Dienst neu.
firewalld-Konfiguration neu laden (nach Regeländerungen)
sudo firewall-cmd --reload
Lädt die Firewall-Regeln neu, um sie anzuwenden, ohne den Dienst zu unterbrechen.
Installation
firewalld ist auf vielen Red Hat-basierten Linux-Distributionen wie CentOS, Fedora und RHEL standardmäßig enthalten. Auf Debian/Ubuntu-basierten Systemen muss es möglicherweise manuell installiert werden.
CentOS/Fedora/RHEL
sudo dnf install firewalld
Installiert firewalld mit dnf (oder yum).
Debian/Ubuntu
sudo apt install firewalld
Installiert firewalld mit apt.
Tipps & Hinweise
Tipps und Hinweise zur effektiven Nutzung von firewalld.
Nutzung von firewall-cmd
Die gesamte Konfiguration und Verwaltung von Firewall-Regeln in firewalld erfolgt über den Befehl 'firewall-cmd'. Zum Beispiel müssen Portöffnungen, Service-Hinzufügungen oder Zoneneinstellungen mit firewall-cmd vorgenommen werden.
- Aktive Zonen anzeigen: `firewall-cmd --get-active-zones`
- Bestimmten Port öffnen (z.B. HTTP 80/tcp): `sudo firewall-cmd --zone=public --add-port=80/tcp --permanent`
- Änderungen anwenden: `sudo firewall-cmd --reload`
Permanente Regelanwendung
Bei der Hinzufügung von Regeln mit firewall-cmd muss die Option `--permanent` verwendet werden, damit die Regeln auch nach einem Systemneustart bestehen bleiben. Nach der Verwendung von `--permanent` muss unbedingt `firewall-cmd --reload` ausgeführt werden, um die Änderungen zu übernehmen.
Verständnis der Standardzonen
firewalld verwendet standardmäßig die Zone 'public', bietet aber auch verschiedene andere Zonen wie 'home', 'work', 'internal', 'external', 'trusted', 'drop', 'block' usw. Jede Zone hat unterschiedliche Sicherheitsstufen.
Beziehung zu iptables
firewalld verwendet intern iptables (oder nftables), bietet aber eine abstrahierte Schnittstelle im Vergleich zur direkten Verwendung des iptables-Befehls. Auf Systemen, die firewalld verwenden, sollte die direkte Manipulation von iptables-Befehlen vermieden werden.