51 votes

Iptables, quelle est la différence entre -m state et -m conntrack ?

Quelle est la différence pratique entre :

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

y

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

Quelle est la meilleure solution ?

Nous vous remercions.

27voto

wolfg Points 51

Les deux utilisent le même noyau interne (sous-système de suivi des connexions).

En-tête de xt_conntrack.c :

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

Je dirais donc que le module d'état est plus simple (et peut-être moins sujet aux erreurs). Il est également plus long dans le noyau. Conntrack, quant à lui, a plus d'options et de fonctionnalités[1].

Je vous conseille d'utiliser conntrack si vous avez besoin de ses fonctionnalités, sinon tenez-vous en au module d'état.

Question similaire sur la liste des filtres de réseau.

[1] Assez utile comme "-m conntrack --ctstate DNAT -j MASQUERADE" routing/DNAT fixup ;-)

8voto

lsmooth Points 1521

Il n'y a pas de différence dans le résultat de ces deux règles. Les deux extensions de correspondance utilisent les mêmes données pour faire correspondre l'état de suivi des connexions. state est l'"ancienne" extension de correspondance et conntrack est plus récente et offre beaucoup plus d'options que la simple correspondance avec l'état de suivi des connexions.

1voto

ki0 Points 13

Iptables Doc

Comme le dit la documentation :

La correspondance conntrack est une version étendue de la correspondance d'état, qui permet de faire correspondre les paquets d'une manière beaucoup plus granulaire. Elle vous permet d'examiner les informations directement disponibles dans le système de suivi des connexions, sans aucun système "frontal", comme dans la correspondance d'état. Pour plus d'informations sur le système de suivi des connexions, consultez le chapitre La machine à états.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X