Was ist Nftables: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 44: Zeile 44:
 
* '''Vereinfachte Dual-Stack-IPv4/IPv6-Administration.''' Vereinfachte Dual-Stack-IPv4/IPv6-Administration. Mit der nftables inet-Familie können Sie Basisketten registrieren, die sowohl IPv4- als auch IPv6-Datenverkehr sehen. Sie müssen sich nicht mehr auf Skripte verlassen, um Ihren Regelsatz zu duplizieren.
 
* '''Vereinfachte Dual-Stack-IPv4/IPv6-Administration.''' Vereinfachte Dual-Stack-IPv4/IPv6-Administration. Mit der nftables inet-Familie können Sie Basisketten registrieren, die sowohl IPv4- als auch IPv6-Datenverkehr sehen. Sie müssen sich nicht mehr auf Skripte verlassen, um Ihren Regelsatz zu duplizieren.
  
 +
=Links=
 
*https://wiki.nftables.org/wiki-nftables/index.php/What_is_nftables%3F
 
*https://wiki.nftables.org/wiki-nftables/index.php/What_is_nftables%3F

Version vom 19. Januar 2023, 07:55 Uhr

Was ist nftables?

  • nftables ist das Paketklassifizierungs-Framework des modernen Linux-Kernels.
  • 'Es besteht aus neuem Code sollte es anstelle des Legacyframeworks ip(6)tables verwenden
  • {ip,ip6,arp,eb}_tables (xtables)-Infrastruktur.
  • Für vorhandene Codebasen, die noch nicht konvertiert wurden, wird die Legacy-xtables-Infrastruktur ab 2021 weiterhin beibehalten.
  • Automatisierte Tools unterstützen den Konvertierungsprozess von xtables zu nftables.

nftables auf den Punkt gebracht:

  • Es ist in Linux-Kernels >= 3.13 verfügbar.
  • Es kommt mit einem neuen Befehlszeilenprogramm nft, dessen Syntax sich von iptables unterscheidet.
  • Es enthält auch eine Kompatibilitätsschicht, mit der Sie iptables-Befehle über das neue nftables-Kernel-Framework ausführen können.
  • Es bietet eine generische Set-Infrastruktur, mit der Sie Karten und Verkettungen erstellen können.
  • Sie können diese neuen Strukturen verwenden, um Ihren Regelsatz in einem mehrdimensionalen Baum anzuordnen,
  • Dieser hat die Anzahl der Regeln, die überprüft werden müssen, drastisch reduziert

Warum nftables?

  • Wir mögen schließlich iptables, dieses Tool hat uns geholfen.
  • Es wird es wahrscheinlich in vielen Bereitstellungen noch eine Weile tun
  • Es enthält mehr als hundert Erweiterungen, die in den letzten 15 Jahren beigesteuert wurden!.
  • Dennoch leidet das iptables-Framework an Einschränkungen, die nicht einfach umgangen werden können:
  • Vermeiden Sie Codeduplizierung und Inkonsistenzen
  • Schnellere Paketklassifizierung durch verbesserte generische Set- und Map-Infrastruktur.
  • Vereinfachte Dual-Stack-IPv4/IPv6-Administration durch die neue inet-Familie,
  • Mit dieser Sie Basisketten registrieren können, die sowohl IPv4- als auch IPv6-Verkehr sehen.
  • Bessere Unterstützung für dynamische Regelsatzaktualisierungen.
  • Stellen Sie eine Netlink-API für Anwendungen von Drittanbietern bereit, genau wie andere Linux-Netzwerk- und Netfilter-Subsysteme.
  • Adressieren Sie Syntaxinkonsistenzen und stellen Sie eine schönere und kompaktere Syntax bereit.

Hauptunterschiede zu iptables

Einige Hauptunterschiede zwischen nftables und iptables aus Benutzersicht sind:

  • nftables verwendet eine neue Syntax.
  • Das Befehlszeilentool „iptables“ verwendet einen getopt_long()-basierten Parser, bei dem Schlüsseln immer ein doppeltes Minus vorangestellt wird, z. --key oder ein einzelnes Minus, zB. -p tcp.
  • Im Gegensatz dazu verwendet nftables eine kompakte Syntax, die von tcpdump inspiriert ist.
  • Tabellen und Ketten sind vollständig konfigurierbar. iptables hat mehrere vordefinierte Tabellen und Basisketten, die alle registriert sind, auch wenn Sie nur eine davon benötigen. Es gab Berichte über sogar ungenutzte Basenketten, die die Leistung beeinträchtigten. Bei nftables gibt es keine vordefinierten Tabellen oder Ketten. Jede Tabelle ist explizit definiert und enthält nur die Objekte (Ketten, Sets, Maps, Flowtables und zustandsbehaftete Objekte), die Sie ihr explizit hinzufügen. Jetzt registrieren Sie nur die Basisketten, die Sie benötigen. Sie wählen Tabellen- und Kettennamen sowie Netzfilter-Hook-Prioritäten, die Ihre spezifische Paketverarbeitungspipeline effizient implementieren.
  • Eine einzelne nftables-Regel kann mehrere Aktionen ausführen. Anstelle der in iptables verwendeten Übereinstimmungen und einzelnen Zielaktionen besteht eine nftables-Regel aus null oder mehr Ausdrücken, gefolgt von einer oder mehreren Anweisungen. Jeder Ausdruck testet, ob ein Paket mit einem bestimmten Payload-Feld oder Paket-/Flow-Metadaten übereinstimmt. Mehrere Ausdrücke werden linear von links nach rechts ausgewertet: Wenn der erste Ausdruck übereinstimmt, wird der nächste Ausdruck ausgewertet und so weiter. Wenn wir den letzten Ausdruck erreichen, stimmt das Paket mit allen Ausdrücken in der Regel überein, und die Anweisungen der Regel werden ausgeführt. Jede Anweisung führt eine Aktion aus, z. B. das Setzen der netfilter-Markierung, das Zählen des Pakets, das Protokollieren des Pakets oder das Ausgeben eines Urteils, z. B. das Akzeptieren oder Verwerfen des Pakets oder das Springen zu einer anderen Kette. Wie bei Ausdrücken werden mehrere Anweisungen linear von links nach rechts ausgewertet: Eine einzelne Regel kann mehrere Aktionen ausführen, indem mehrere Anweisungen verwendet werden. Beachten Sie, dass eine Urteilsaussage naturgemäß die Regel beendet.
  • Kein eingebauter Zähler pro Kette und Regel. In nftables sind Zähler optional, Sie können sie nach Bedarf aktivieren.
  • Bessere Unterstützung für dynamische Regelsatzaktualisierungen. Im Gegensatz zu dem monolithischen Blob, der von iptables verwendet wird, werden nftables-Regelsätze intern in einer verknüpften Liste dargestellt. Jetzt lässt das Hinzufügen oder Löschen einer Regel den Rest des Regelsatzes unberührt, was die Verwaltung interner Zustandsinformationen vereinfacht.
  • Vereinfachte Dual-Stack-IPv4/IPv6-Administration. Vereinfachte Dual-Stack-IPv4/IPv6-Administration. Mit der nftables inet-Familie können Sie Basisketten registrieren, die sowohl IPv4- als auch IPv6-Datenverkehr sehen. Sie müssen sich nicht mehr auf Skripte verlassen, um Ihren Regelsatz zu duplizieren.

Links