Les pare-feux

ip_conntrack et le suivi de connexion

Le suivi de connexion est un concept essentiel dans Netfilter. C'est une sorte d'intelligence artificielle qui permet d'établir des liens de cause à effet entre les paquets qui passent dans la pile. Le principe du suivi de connexion permet de réaliser un « firewall statefull », c'est à dire qu'il va réagir intelligemment sur une connexion donnée, suivant son état.

Comment Netfilter fait-il pour savoir qu'un paquet est une réponse à un paquet précédemment autorisé ?

Le noyau maintient une table contenant la liste de tous les flux passant à travers le pare-feu. Quand un paquet arrive sur une interface Netfilter regarde l'en-tête IP afin de savoir si ce paquet fait partie d'une session connue. En fonction du cas, il détermine l'état du paquet parmi les cas suivants :

*NEW --> nouvelle connexion (elle contient le flag SYN= 1er étape du handshake),

*ESTABLISHED --> connexion déjà établie, elle ne devrait pas contenir de SYN ni de FIN,

*RELATED --> la connexion présente une relation directe avec une connexion déjà établie,

*INVALID --> la connexion n'est pas conforme, contient un jeu de flags anormal, n'est pas classable dans l'une des trois catégories précédentes.

A partir de ces 4 possibilités, on peut établir plusieurs règles :

Par exemple, toute connexion ESTABLISHED ou RELATED devra pouvoir entrer depuis le Net.

Dans l'autre sens, du LAN vers le Net, les paquets NEW doivent pouvoir passer, ou les ESTABLISHED et les RELATED.

Les paquets INVALID pourront éventuellement être tracés dans les logs.

PrécédentPrécédentFin
AccueilAccueilImprimerImprimerRéalisé avec Scenari (nouvelle fenêtre)