IPSets mit firewalld

  Lioh Möller   Lesezeit: 2 Minuten  🗪 1 Kommentar

Mit IPSets lässt sich die Konfiguration von firewalld deutlich vereinfachen.

ipsets mit firewalld

Die IPSet Funktionalität von firewalld erlaubt die Zusammenfassung von Netzwerken zur einfachen und nachvollziehbaren Konfiguration.



Dazu wird zunächst ein neues IPset angelegt:

firewall-cmd --permanent --new-ipset=my-clients --type=hash:net

Zum jetzigen Zeitpunkt enthält das IPset noch keine Netzwerkdefinitionen. Wie folgt können Subnetze hinzugefügt werden:

firewall-cmd --permanent --ipset=my-clients --add-entry=192.168.100.0/24
firewall-cmd --permanent --ipset=my-clients --add-entry=192.168.120.0/24
firewall-cmd --permanent --ipset=my-clients --add-entry=192.168.121.0/26

IPsets können an unterschiedlichen Stellen zum Einsatz kommen, beispielsweise bei der Verwendung von Rich-Rules:

firewall-cmd --permanent --zone=public --add-rich-rule='rule source ipset=my-clients port port=12345 protocol=tcp accept'
firewall-cmd --permanent --zone=public --add-rich-rule='rule source ipset=my-clients service name=ssh accept'

Nach den Änderungen müssen diese angewendet werden:

firewall-cmd --reload

Die IPsets kann man sich daraufhin anzeigen lassen:

firewall-cmd --get-ipsets
firewall-cmd --info-ipset=my-clients

Den Inhalt des erstellten und definierten IPSets kann man sich nun ebenfalls ausgeben lassen:

firewall-cmd --permanent --ipset=my-clients --get-entries

Abschliessend lassen sich die zuvor erstellten Regeln wie folgt anzeigen:

firewall-cmd --list-all

Tags

Firewall, firewalld

Jörg
Geschrieben von Jörg am 20. Februar 2023 um 10:41

Hi,

Danke für den tollen Tipp. Kurz, knackig, auf den Punkt und hilfreich.

Viele Grüße Jörg