Firewalld ist ein leistungsfähiges Firewall-Management-Tool, das in Linux-Distributionen wie CentOS, RHEL und Fedora eingesetzt wird. Es bietet eine flexible und dynamische Möglichkeit zur Verwaltung von Firewall-Regeln, die es Benutzern ermöglicht, Sicherheitsrichtlinien effektiv zu definieren. Eine der wichtigsten Funktionen von Firewalld sind Rich Rules, die im Vergleich zu Standardregeln eine genauere Kontrolle über den Netzwerkverkehr ermöglichen.

Was sind Rich Rules in Firewalld?

Umfangreiche Regeln sind eine fortschrittliche Methode zur Definition von Firewall-Richtlinien und bieten zusätzliche Filteroptionen wie z. B.:

  • Angabe von Quell- und Zieladressen
  • Zulassen oder Ablehnen von Datenverkehr auf der Grundlage von Protokollen oder Ports
  • Definition von Protokollierungs- und Audit-Regeln
  • Festlegung von Ratenbegrenzungen und Aktionen für bestimmte Verbindungen

Mit umfangreichen Regeln können Administratoren über die grundlegenden zonen- und dienstbasierten Regeln hinaus fein abgestimmte Sicherheitsrichtlinien erstellen.

Überprüfen vorhandener Rich-Regeln

Führen Sie den folgenden Befehl aus, um zu überprüfen, ob bereits Rich Rules konfiguriert sind:

firewall-cmd --list-rich-rules

Dadurch werden alle Rich-Regeln angezeigt, die derzeit in der Firewall aktiv sind.

Hinzufügen einer Rich-Regel

Um eine neue Rich-Regel hinzuzufügen, verwenden Sie die folgende Syntax:

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" 
source address="192.168.1.100" service name="ssh" accept'

Diese Regel lässt SSH-Verkehr von einer bestimmten IP-Adresse (192.168.1.100) zu.

Nachdem Sie eine Regel hinzugefügt haben, laden Sie Firewalld neu, um die Änderungen zu übernehmen:

firewall-cmd --reload

Blockieren von Datenverkehr mit einer Rich-Regel

Um Datenverkehr von einer bestimmten IP-Adresse zu blockieren, verwenden Sie:

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" 
quelladresse="192.168.1.200" drop'

Mit dieser Regel wird der gesamte Datenverkehr von 192.168.1.200 stillschweigend verworfen, ohne eine Antwort zu senden.

Zulassen von Verkehr für einen bestimmten Port und ein bestimmtes Protokoll

So lassen Sie den Datenverkehr für einen bestimmten Port und ein bestimmtes Protokoll zu, z. B. HTTP auf Port 80:

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" 
source address="192.168.1.0/24" port protocol="tcp" port="80" accept'

Diese Regel lässt HTTP-Verkehr von jedem Gerät innerhalb des Subnetzes 192.168.1.0/24 zu.

Protokollieren und Überwachen des Datenverkehrs

Um verworfene Pakete zu Überwachungszwecken zu protokollieren, verwenden Sie:

firewall-cmd --permanent --add-rich-rule='rule family="ipv4" 
source address="192.168.1.150" drop log prefix="[FIREWALL-DROP]" level="info"'

Diese Regel lässt den Verkehr von 192.168.1.150 fallen und protokolliert ihn mit dem Präfix [FIREWALL-DROP].

Entfernen einer Rich-Regel

Um eine bestimmte Rich-Regel zu entfernen, verwenden Sie:

firewall-cmd --permanent --remove-rich-rule='rule family="ipv4" 
source address="192.168.1.100" service name="ssh" accept'

Laden Sie dann Firewalld neu:

firewall-cmd --reload

Best Practices für die Verwaltung von Rich Rules

  • Testen Sie neue Firewall-Regeln immer, bevor Sie sie dauerhaft anwenden.
  • Verwenden Sie Protokollierungsregeln, um den blockierten Verkehr zu überwachen und zu analysieren.
  • Überprüfen Sie Firewall-Regeln regelmäßig, um die Einhaltung der Sicherheitsvorschriften zu gewährleisten.
  • Schränken Sie den Zugang zu kritischen Diensten nach IP-Adresse oder Subnetz ein.

Fazit

Die Verwaltung umfangreicher Regeln in Firewalld bietet eine flexible und leistungsstarke Möglichkeit, den Netzwerkverkehr mit feinkörniger Filterung zu kontrollieren. Ganz gleich, ob Sie bestimmte IP-Adressen zulassen, unzulässigen Datenverkehr blockieren oder Verbindungen protokollieren möchten, die umfangreichen Regeln tragen dazu bei, die Sicherheit zu erhöhen und die Integrität des Netzwerks zu erhalten.