nftables-Regel-Generator

nftables-Regeln aus CSV generieren

Rule Definitions

nftables Configuration

Enter rules to generate nftables configuration

Der nftables-Regel-Generator erstellt moderne Linux-Firewall-Regeln aus strukturierter CSV-Eingabe unter Verwendung der nftables-Syntax. Geben Sie Regeln als CSV-Zeilen mit den Spalten Tabellenfamilie, Kette, Quelle, Ziel, Protokoll, Port und Aktion ein und erhalten Sie entweder einzelne nft-Befehle oder eine vollstaendige Regelsatzdatei, die atomar geladen werden kann -- der empfohlene Ansatz fuer aktuelle Linux-Distributionen einschliesslich Debian 10+, RHEL 8+ und Ubuntu 20.04+.

nftables verstehen

Wenn Sie eine Firewall auf einer modernen Linux-Distribution einrichten, ist nftables das Tool, das Sie verwenden sollten. Es hat iptables als Standard-Paketfilter-Framework ab dem Linux-Kernel 3.13 abgeloest, und alle grossen Distributionen liefern jetzt nftables als Standard-Backend aus. Debian, Ubuntu, RHEL, Fedora und Arch Linux verwenden nftables im Hintergrund, selbst wenn Sie iptables-Befehle ausfuehren (die iptables-nft-Kompatibilitaetsschicht uebersetzt sie automatisch).

Der wichtigste Vorteil von nftables gegenueber iptables ist das atomare Laden von Regelsaetzen. Bei iptables ist jede Regel ein separater Befehl, der den aktiven Kernel-Zustand aendert -- wenn Ihr Skript auf halbem Weg fehlschlaegt, haben Sie einen unvollstaendigen Regelsatz, der moeglicherweise Sicherheitsluecken aufweist. nftables ermoeglicht es Ihnen, Ihre gesamte Konfiguration in einer einzigen Datei zu schreiben und in einer Operation mit nft -f zu laden. Wenn eine Regel einen Syntaxfehler hat, schlaegt das gesamte Laden fehl und nichts aendert sich. Dieses atomare Verhalten beseitigt das Problem der "halb geladenen Firewall", das bei iptables zu echten Sicherheitsvorfaellen gefuehrt hat.

Die zweite grosse Verbesserung ist eine sauberere Syntax fuer gaengige Muster. In iptables erfordert das Matching mehrerer Ports die umstaendliche Erweiterung -m multiport --dports 80,443,8080. In nftables schreiben Sie tcp dport { 80, 443, 8080 } -- ein einfaches Set, das sich wie ein natuerlicher Ausdruck liest. Die inet-Familie ermoeglicht es, eine Regel zu schreiben, die sowohl fuer IPv4 als auch fuer IPv6 gilt, anstatt separate iptables- und ip6tables-Konfigurationen zu pflegen. Benannte Sets lassen Sie eine Gruppe von Adressen einmal definieren und in mehreren Regeln referenzieren. Diese Funktionen reduzieren die Konfigurationskomplexitaet und machen Firewall-Regeln bei Audits leichter lesbar.

So generieren Sie nftables-Regeln aus CSV

  1. Bereiten Sie Ihre Regeldaten im CSV-Format mit den Spalten vor: Tabellenfamilie, Kette, Quelle, Ziel, Protokoll, Port(s) und Aktion.
  2. Fuegen Sie die CSV in den Generator ein oder laden Sie sie hoch.
  3. Waehlen Sie das Ausgabeformat: einzelne nft-Befehle oder eine vollstaendige Regelsatzdatei.
  4. Der Generator erzeugt nftables-Syntax unter Nutzung von Funktionen wie Sets, Maps und der inet-Familie.
  5. Kopieren Sie die Ausgabe und laden Sie sie mit nft -f ruleset.nft fuer atomare Anwendung.

CSV-Eingabeformat und generierte Regeln

CSV-Eingabe

family,chain,source,destination,protocol,port,action
inet,input,203.0.113.0/24,,tcp,22,drop
inet,input,10.0.0.0/8,,tcp,443,accept
inet,input,,,tcp,80,accept
inet,output,,198.51.100.10,tcp,3306,accept
inet,forward,192.168.1.0/24,10.0.0.0/8,tcp,8080,accept

Generierte Regelsatzdatei

table inet filter {
    chain input {
        type filter hook input priority 0; policy drop;

        ip saddr 203.0.113.0/24 tcp dport 22 drop
        ip saddr 10.0.0.0/8 tcp dport 443 accept
        tcp dport 80 accept
    }

    chain output {
        type filter hook output priority 0; policy accept;

        ip daddr 198.51.100.10 tcp dport 3306 accept
    }

    chain forward {
        type filter hook forward priority 0; policy drop;

        ip saddr 192.168.1.0/24 ip daddr 10.0.0.0/8 tcp dport 8080 accept
    }
}

Generierte Einzelbefehle

nft add table inet filter
nft add chain inet filter input '{ type filter hook input priority 0; policy drop; }'
nft add rule inet filter input ip saddr 203.0.113.0/24 tcp dport 22 drop
nft add rule inet filter input ip saddr 10.0.0.0/8 tcp dport 443 accept
nft add rule inet filter input tcp dport 80 accept

Vom Generator verwendete nftables-Funktionen

Funktionnftables-Syntaxiptables-Aequivalent
Mehrere Portstcp dport { 80, 443, 8080 }-m multiport --dports 80,443,8080
Port-Bereichtcp dport 8000-8080--dport 8000:8080
Mehrere Quellenip saddr { 10.0.0.0/8, 172.16.0.0/12 }Zwei separate Regeln
Dual-Stack (inet)table inet filterSeparate iptables- und ip6tables-Regeln
Benannte Setsset blocklist { type ipv4_addr; }Kein Aequivalent
Protokollierunglog prefix "SSH: " dropSeparate -j LOG- und -j DROP-Regeln

Wann den nftables-Regel-Generator verwenden

  • Neue Server-Bereitstellungen -- Moderne Distributionen liefern nftables als Standard; beginnen Sie von Anfang an mit nftables-Syntax.
  • iptables-Migration -- Bestehende iptables-Regeln beim Upgrade auf Debian 10+, RHEL 8+ oder Ubuntu 20.04+ in nftables konvertieren.
  • Atomares Regelsatz-Laden -- Anders als iptables (Regel fuer Regel) kann nftables einen kompletten Regelsatz atomar mit nft -f laden und eliminiert Luecken bei Konfigurationsaenderungen.
  • Infrastructure as Code -- nftables-Regelsaetze aus CSV-/Tabellenkalkulationsdaten fuer versionskontrollierte, wiederholbare Firewall-Konfigurationen generieren.
  • Dual-Stack-Vereinfachung -- Die inet-Familie verwenden, um eine Regel zu schreiben, die sowohl fuer IPv4 als auch fuer IPv6 gilt, anstatt separate Regelsaetze zu pflegen.

Wie sich nftables von iptables unterscheidet

Tabellenfamilien

nftables organisiert Regeln nach Familien, die bestimmen, welchen Datenverkehr die Tabelle verarbeitet:

  • inet -- Verarbeitet sowohl IPv4 als auch IPv6 (haeufigste Wahl)
  • ip -- Nur IPv4
  • ip6 -- Nur IPv6
  • arp -- ARP-Protokoll
  • bridge -- Filterung auf Bridge-Ebene

Sets und Maps

nftables unterstuetzt anonyme Inline-Sets und benannte wiederverwendbare Sets:

# Anonymes Set -- mehrere Werte in einer Regel
tcp dport { 22, 80, 443 } accept

# Benanntes Set -- wiederverwendbar ueber Regeln hinweg
set trusted_nets {
    type ipv4_addr
    flags interval
    elements = { 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 }
}

ip saddr @trusted_nets accept

Atomares Laden

Der Generator kann eine vollstaendige Regelsatzdatei erzeugen, die die gesamte Konfiguration in einer einzigen Operation ersetzt:

nft -f /etc/nftables.conf    # Gesamten Regelsatz atomar laden
nft list ruleset              # Aktive Regeln ueberpruefen

Praktische Hinweise zur nftables-Konfiguration

Wenn Sie von iptables migrieren, widerstehen Sie der Versuchung, Regeln einfach eins zu eins zu uebersetzen. nftables bietet Funktionen, mit denen Sie dieselbe Richtlinie mit deutlich weniger Regeln ausdruecken koennen. Nutzen Sie die Gelegenheit zur Konsolidierung: Fassen Sie mehrere portspezifische Regeln zu Set-basierten Regeln zusammen, kombinieren Sie IPv4- und IPv6-Regeln mit der inet-Familie und ersetzen Sie Ketten von LOG-dann-DROP durch einzelne log prefix "..." drop-Anweisungen. Eine Migration ist der perfekte Zeitpunkt, um Ihre Firewall-Richtlinie zu pruefen und zu vereinfachen, nicht nur sie zu transliterieren.

Fuer Produktionsserver speichern Sie Ihre nftables-Konfiguration immer in /etc/nftables.conf und aktivieren Sie den nftables-Systemd-Dienst mit systemctl enable nftables. Dies stellt sicher, dass Ihre Regeln beim Booten geladen werden. Anders als bei iptables, wo Sie einen separaten Persistenzmechanismus benoetigen (iptables-persistent auf Debian, iptables-services auf RHEL), ist die nftables-Persistenz in die Standard-Service-Unit-Datei integriert. Nach Aenderungen fuehren Sie nft -c -f /etc/nftables.conf aus, um die Syntax zu pruefen, ohne sie anzuwenden, und laden dann mit systemctl restart nftables neu.

Beim Debuggen von nftables-Regeln ist der Befehl nft list ruleset Ihr bester Freund. Er zeigt die vollstaendige aktive Konfiguration genau so, wie der Kernel sie sieht, einschliesslich Regelzaehlern, die Ihnen sagen, wie viele Pakete jede Regel zugeordnet hat. Wenn ein Regelzaehler auf Null bleibt, ist entweder kein passender Datenverkehr angekommen, oder eine Regel weiter oben in der Kette faengt den Verkehr zuerst ab. Verwenden Sie nft monitor fuer Echtzeit-Protokollierung von Regelzuordnungen, was bei der Fehlersuche, warum bestimmter Datenverkehr verworfen wird, unschaetzbar ist.

Haeufig gestellte Fragen

Kann ich iptables und nftables gleichzeitig ausfuehren? Technisch verwenden beide dasselbe Kernel-Netfilter-Framework, aber der gleichzeitige Betrieb beider verursacht Konflikte. Die iptables-nft-Kompatibilitaetsschicht uebersetzt iptables-Befehle intern in nftables, aber das Mischen nativer nftables-Regeln mit iptables-Befehlen wird nicht empfohlen.

Wie mache ich nftables-Regeln ueber Neustarts hinweg persistent? Speichern Sie Ihren Regelsatz in /etc/nftables.conf und aktivieren Sie den nftables-Systemd-Dienst: systemctl enable nftables. Der Dienst laedt die Regelsatzdatei beim Booten.

Was ist die inet-Familie und sollte ich sie immer verwenden? Die inet-Familie verarbeitet sowohl IPv4- als auch IPv6-Datenverkehr in einer einzigen Tabelle und macht doppelte Regeln ueberfluessig. Verwenden Sie inet fuer die meisten Konfigurationen. Verwenden Sie ip oder ip6 nur, wenn Sie adressfamilienspezifisches Verhalten benoetigen.

Wie migriere ich von iptables zu nftables? Verwenden Sie den Befehl iptables-save, um Ihre aktuellen Regeln zu exportieren, und lassen Sie sie dann durch iptables-restore-translate (Teil des iptables-nft-Pakets) laufen, um ein nftables-Aequivalent zu erhalten. Ueberpruefen Sie die Ausgabe sorgfaeltig -- die automatische Uebersetzung erzeugt funktionale, aber nicht idiomatische nftables-Regeln. Verwenden Sie diesen Generator, um saubere nftables-Regeln von Grund auf zu erstellen, wann immer moeglich.

Was ist der Leistungsunterschied zwischen iptables und nftables? nftables verwendet eine optimierte virtuelle Maschine im Kernel fuer die Regelauswertung, die im Allgemeinen schneller als iptables fuer komplexe Regelsaetze ist. Die Verbesserung ist am deutlichsten bei grossen Regelsaetzen (Hunderte von Regeln) und Set-basiertem Matching. Fuer einfache Konfigurationen mit einem Dutzend Regeln ist der Unterschied vernachlaessigbar.

Kann ich nftables auf aelteren Kerneln verwenden? nftables erfordert Linux-Kernel 3.13 oder spaeter. Grundlegende Funktionen funktionieren ab 3.13, aber erweiterte Funktionen wie Maps und verkettete Sets erfordern 4.1+. Alle aktuellen LTS-Distributionen enthalten ausreichend aktuelle Kernel.

Verwandte Tools

IPparse•Kostenlose Netzwerk- & Subnetz-Rechner-Tools

© 2026 IPparse. All tools run locally in your browser.

100% Privacy-First • No Data Collected