Iptables, was ist der Unterschied zwischen -m state und -m conntrack?

48

Was ist der praktische Unterschied zwischen:

iptables -A INPUT -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT

und

iptables -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT

Welches ist am besten zu verwenden?

Danke.

Bourne
quelle
9
Beachten Sie, dass der Status für Linux Kernel 3.7 und höher entfernt wurde. Es ist nur conntrack verfügbar.
Mr. X
Ich lasse 3.10.0 laufen und Zustand wird noch gestützt ...
1
state ist zugunsten von conntrack veraltet und kann je nach dem, wie Ihr Kernel erstellt wurde, kompiliert werden oder nicht.
Michael Hampton

Antworten:

26

Beide verwenden die gleichen Kernel-Interna (Connection Tracking Subsystem).

Header von xt_conntrack.c:

xt_conntrack - Netfilter module to match connection tracking
information. (Superset of Rusty's minimalistic state match.)

Also würde ich sagen - Zustandsmodul ist einfacher (und vielleicht weniger fehleranfällig). Es ist auch länger im Kernel. Conntrack auf der anderen Seite bietet mehr Optionen und Funktionen [1].

Mein Aufruf ist, conntrack zu verwenden, wenn Sie dessen Funktionen benötigen, ansonsten bleiben Sie beim Zustandsmodul.

Ähnliche Frage zu netfilter maillist.

[1] Sehr nützlich wie "-m conntrack --ctstate DNAT -j MASQUERADE" Routing / DNAT Fixup ;-)

Kupson
quelle
8

Das Ergebnis dieser beiden Regeln unterscheidet sich nicht. Beide Übereinstimmungserweiterungen verwenden dieselben Daten, um den Verbindungsverfolgungsstatus abzugleichen. state ist die "alte" Übereinstimmungserweiterung und conntrack ist neuer und bietet viel mehr Optionen als nur das Übereinstimmen mit dem Verbindungsverfolgungsstatus.

lsmooth
quelle
1

Iptables Doc

Wie die Dokumentation sagt:

Die Conntrack-Übereinstimmung ist eine erweiterte Version der Zustandsübereinstimmung, die es ermöglicht, Pakete viel genauer abzugleichen. Hiermit können Sie Informationen anzeigen, die direkt im Verbindungsverfolgungssystem verfügbar sind, ohne "Frontend" -Systeme, wie z. B. im Statusvergleich. Weitere Informationen zum Verbindungsverfolgungssystem finden Sie im Kapitel Die Zustandsmaschine.

ki0
quelle
Referenz funktioniert nicht mehr
Prosti