Linux Firewall · nftables

Netfilter-Hooks & Regelverarbeitung

Jedes Paket durchläuft je nach Ziel unterschiedliche Hooks — und in jedem Hook wird die passende Chain sequenziell abgearbeitet, bis eine Regel greift oder die Default Policy übernimmt.

Welche Hooks durchläuft das Paket?

Wähle, wohin das Paket unterwegs ist.

Application Layer
IP Layer
Local
Process
Prerouting
Hook
Routing
Decision
Input
Hook
Forward
Hook
Routing
Decision
Output
Hook
Postrouting
Hook
Bridge
Device

Ketten an die Hooks hängen

Ein Hook ist erstmal nur ein Anknüpfpunkt im Kernel. Ohne eine Chain, die dort eingehängt wird, passiert an dieser Stelle nichts — das Paket läuft einfach durch. Klick auf Input, Forward oder Output Hook, um dort eine Chain einzuhängen.

Application Layer
IP Layer
Local
Process
Prerouting
Hook
Routing
Decision
Input
Hook
Forward
Hook
Output
Hook
Routing
Decision
Postrouting
Hook
Bridge
Device
Die Chain heißt hier bewusst genauso wie der Hook, an dem sie hängt — das ist reine Namenskonvention, kein Zwang. Die priority legt fest, in welcher Reihenfolge mehrere Chains am selben Hook abgearbeitet werden. Da bei uns immer nur eine Chain pro Hook hängt, ist der Wert für uns aktuell egal — er wird erst wichtig, sobald eine zweite Chain dazukommt.

Regelverarbeitung in der Chain

Regeln werden sequenziell geprüft. Greift eine Regel → ihre Aktion (accept/drop) gilt sofort. Greift keine → die Default Policy der Chain entscheidet. Die drei Chains lassen sich unabhängig voneinander ein-/ausblenden.

INPUT
rule 1
rule 2
rule 3
POLICY (drop)
FORWARD
rule 1
rule 2
POLICY (drop)
OUTPUT
rule 1
POLICY (accept)
Wichtig: Prerouting und Postrouting haben in nftables standardmäßig keine eigene Filter-Chain (dort sitzt eher NAT) — gefiltert wird in input, forward und output. Genau diese drei Chains stehen oben in der Regelverarbeitung.