nftables Commando Spiekbriefje

Categorieën bekijken

nftables Commando Spiekbriefje

2 min leestijd

Linux begrijpen nftables commando #

De nftables command is een krachtige Linux-firewalltool die iptables, ip6tables, arptablesen ebtablesMet een uniforme syntaxis, nftables vereenvoudigt netwerkpakketfiltering, NAT en andere geavanceerde netwerkconfiguraties. De opdracht werkt met de nft hulpprogramma dat communiceert met het netfilter-subsysteem van de kernel om netwerkregels te beheren.

Basis syntaxis en structuur van de nft commando #

De nft Het commando volgt over het algemeen deze structuur:

nft [OPTIONS] COMMAND

  • OPTIES: Vlaggen zoals -a (regelgrepen weergeven) of -j (uitvoer in JSON-formaat).
  • COMMAND:De specifieke actie, zoals add, delete, listof flush, gebruikt om tabellen, ketens of regels te beheren.

nft Commando Cheatsheet Tabel #

commando Beschrijving
nft list tables Lijst alle tabellen
nft add table inet filter Maak een nieuwe tabel met de naam filter in de inet familiaal
nft delete table inet filter Verwijder de filter tafel in de inet familiaal
nft list ruleset Maak een lijst van alle tabellen, ketens en regels in een voor mensen leesbaar formaat
nft flush ruleset Verwijder alle tabellen, ketens en regels (spoel de gehele regelset)
nft add chain inet filter input { type filter hook input priority 0; } Voeg een toe input ketting naar de filter tafel met input haak
nft add rule inet filter input tcp dport 22 accept Accepteer binnenkomend SSH-verkeer op poort 22
nft delete rule inet filter input handle <handle_number> Een regel verwijderen in de input keten door de handle van de regel op te geven
nft add rule inet filter forward counter Voeg een tegenregel toe aan de forward keten voor het monitoren van verkeer

Tabellen toevoegen en beheren #

In nftablesTabellen zijn containers voor ketens en regels. Zo maakt en beheert u ze:

Maak een tafel #

nft add table inet my_table

Met deze opdracht wordt een nieuwe tabel gemaakt met de naam my_table in de inet familie, die zowel IPv4 als IPv6 ondersteunt.

Een tabel verwijderen #

nft delete table inet my_table

Verwijdert de my_table aan de hand van de inet familie.

Kettingen in nftables #

Ketens zijn reeksen regels die definiëren hoe pakketten worden verwerkt. Elke keten heeft een specifieke hook, die de pakketfilterfase bepaalt (bijv. input, outputof forward).

Maak een ketting #

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

Dit creëert een input ketting in my_table voor het filteren van pakketten met een prioriteit van 0.

Een keten verwijderen #

nft delete chain inet my_table my_chain

Verwijdert de my_chain vanaf my_table.

Regels erin nftables #

Regels specificeren acties voor pakketten die aan bepaalde voorwaarden voldoen. Hieronder vindt u voorbeelden van het toevoegen, weergeven en verwijderen van regels.

Regels toevoegen #

nft add rule inet my_table my_chain tcp dport 80 accept

Deze regel staat verkeer op TCP-poort 80 (HTTP) toe.

Lijstregels #

nft list chain inet my_table my_chain

Geeft alle regels weer in my_chain.

Regels verwijderen #

nft delete rule inet my_table my_chain handle <handle_number>

Verwijdert een regel door het opgeven van het handvatnummer, dat kan worden weergegeven door nft list chain inet my_table my_chain -a.

Voorbeeld nftables Configuratie: Basis Firewall-instellingen #

Dit is een basisfirewallconfiguratie die binnenkomend SSH- en HTTP/HTTPS-verkeer toestaat, terwijl al het overige verkeer wordt geblokkeerd:

nft voeg tabel inet filter toe nft voeg keten inet filter input toe { type filter hook input priority 0\; policy drop\; } nft voeg regel inet filter input toe tcp dport 22 accept # Sta SSH toe nft voeg regel inet filter input toe tcp dport 80 accept # Sta HTTP toe nft voeg regel inet filter input toe tcp dport 443 accept # Sta HTTPS toe nft voeg regel inet filter input toe ct state established,related accept # Sta gevestigde verbindingen toe

Geavanceerd: Stateful Rules met Connection Tracking #

nftables heeft ingebouwde ondersteuning voor het bijhouden van verbindingen, zodat u statusregels kunt beheren.

Voorbeeld: Gerelateerde en gevestigde verbindingen toestaan #

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

Hierdoor zijn pakketten mogelijk van verbindingen die al tot stand zijn gebracht of die betrekking hebben op bestaande verbindingen. Zo wordt onnodige herverwerking van eerder toegestane verbindingen verminderd.

Samenvatting #

De nftables command is een moderne en veelzijdige tool voor netwerkpakketfiltering, die een uniforme syntaxis en flexibele opties biedt voor het beheren van firewallregels. Met nftableskunt u efficiënte en onderhoudbare firewallconfiguraties maken die geschikt zijn voor zowel eenvoudige installaties als complexe bedrijfsomgevingen.

📄 Download dit document in PDF-formaat #

    E-MAIL: *

    Powered by BeterDocs