nftables-Befehls-Spickzettel

Kategorien anzeigen

nftables-Befehls-Spickzettel

2 min gelesen

Linux verstehen nftables Befehl #

Die nftables command ist ein leistungsstarkes Linux-Firewall-Tool, das ersetzt iptables, ip6tables, arptablesund ebtables. Mit einer einheitlichen Syntax, nftables vereinfacht die Netzwerkpaketfilterung, NAT und andere erweiterte Netzwerkkonfigurationen. Der Befehl funktioniert mit dem nft Dienstprogramm, das mit dem Netfilter-Subsystem des Kernels kommuniziert, um Netzwerkregeln zu verwalten.

Grundlegende Syntax und Struktur des nft Befehl #

Die nft Der Befehl folgt im Allgemeinen dieser Struktur:

nft [OPTIONS] COMMAND

  • OPTIONAL: Flaggen wie -a (Regelgriffe anzeigen) oder -j (Ausgabe im JSON-Format).
  • COMMAND: Die konkrete Aktion, wie zum Beispiel add, delete, listden flush, wird zum Verwalten von Tabellen, Ketten oder Regeln verwendet.

nft Befehls-Spickzetteltabelle #

Befehl Beschreibung
nft list tables Alle Tabellen auflisten
nft add table inet filter Erstellen Sie eine neue Tabelle mit dem Namen filter in England, inet Familie
nft delete table inet filter Löschen Sie die filter Tisch im inet Familie
nft list ruleset Listen Sie alle Tabellen, Ketten und Regeln in einem für Menschen lesbaren Format auf
nft flush ruleset Löschen Sie alle Tabellen, Ketten und Regeln (löschen Sie den gesamten Regelsatz).
nft add chain inet filter input { type filter hook input priority 0; } Fügen Sie ein ein input Kette zum filter Tisch mit input Haken
nft add rule inet filter input tcp dport 22 accept Akzeptieren Sie eingehenden SSH-Verkehr auf Port 22
nft delete rule inet filter input handle <handle_number> Löschen Sie eine Regel im input Kette durch Angabe des Handles der Regel
nft add rule inet filter forward counter Fügen Sie eine Gegenregel hinzu zum forward Kette zur Überwachung des Verkehrs

Hinzufügen und Verwalten von Tabellen #

In nftablesTabellen sind Container für Ketten und Regeln. So erstellen und verwalten Sie sie:

Erstellen Sie eine Tabelle #

nft add table inet my_table

Dieser Befehl erstellt eine neue Tabelle mit dem Namen my_table innerhalb der inet Familie, die sowohl IPv4 als auch IPv6 unterstützt.

Löschen einer Tabelle #

nft delete table inet my_table

Löscht die my_table von der inet Familie.

Ketten in nftables #

Ketten sind Abfolgen von Regeln, die definieren, wie Pakete behandelt werden. Jede Kette hat eine bestimmte hook, die die Paketfilterstufe bestimmt (z. B. input, outputden forward).

Erstellen einer Kette #

nft add chain inet my_table my_chain { type filter hook input priority 0; }

Dies schafft eine input Kette in my_table zum Filtern von Paketen mit einer Priorität von 0.

Löschen einer Kette #

nft delete chain inet my_table my_chain

Entfernt die my_chain von my_table.

Regeln ein nftables #

Regeln legen Aktionen für Pakete fest, die bestimmte Bedingungen erfüllen. Nachfolgend finden Sie Beispiele zum Hinzufügen, Auflisten und Löschen von Regeln.

Regeln hinzufügen #

nft add rule inet my_table my_chain tcp dport 80 accept

Diese Regel erlaubt Datenverkehr auf TCP-Port 80 (HTTP).

Auflistungsregeln #

nft list chain inet my_table my_chain

Zeigt alle Regeln in my_chain.

Regeln löschen #

nft delete rule inet my_table my_chain handle <handle_number>

Entfernt eine Regel durch Angabe ihrer Handle-Nummer, die angezeigt werden kann durch nft list chain inet my_table my_chain -a.

Beispiel nftables Konfiguration: Grundlegende Firewall-Einrichtung #

Hier ist eine grundlegende Firewall-Konfiguration, die eingehendes SSH und HTTP/HTTPS zulässt und gleichzeitig den gesamten anderen Datenverkehr blockiert:

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 tcp dport 22 accept # SSH zulassen nft add rule inet filter input tcp dport 80 accept # HTTP zulassen nft add rule inet filter input tcp dport 443 accept # HTTPS zulassen nft add rule inet filter input ct state established,related accept # Hergestellte Verbindungen zulassen

Erweitert: Stateful Rules mit Verbindungsverfolgung #

nftables verfügt über integrierte Unterstützung für die Verbindungsverfolgung, sodass Sie Statusregeln verwalten können.

Beispiel: Zugehörige und etablierte Verbindungen zulassen #

nft add rule inet filter input ct state established,related accept

Dadurch werden Pakete von Verbindungen zugelassen, die bereits hergestellt sind oder mit bestehenden Verbindungen in Zusammenhang stehen, und es wird eine unnötige erneute Verarbeitung zuvor zugelassener Verbindungen vermieden.

Zusammenfassung #

Die nftables Der Befehl ist ein modernes und vielseitiges Tool zur Netzwerkpaketfilterung. Er bietet eine einheitliche Syntax und flexible Optionen zur Verwaltung von Firewall-Regeln. Mit nftableskönnen Sie effiziente und wartungsfreundliche Firewall-Konfigurationen erstellen, die sowohl für einfache Setups als auch für komplexe Unternehmensumgebungen geeignet sind.

📄 Laden Sie dieses Dokument im PDF-Format herunter #

    EMAIL: *

    Erhöhte Sicherheit. Geringerer Aufwand. Nachhaltiger Erfolg. BetterDocs