Qu’est-ce qu’un firewall (pare-feu) ?

Qu’est-ce qu’un firewall (pare-feu) ?

6 octobre 2017 0 Par Nabil Lemz

Un firewall (ou pare-feu en français), est un logiciel et/ou un matériel qui permet de faire respecter une certaine politique réseau qui définit les types de communications autorisés sur un réseau informatique, pour cela elle va ouvrir ou fermer certains ports afin d’autoriser ou non certains flux. Pour imager tout cela, imaginez une maison qui aurait 100 portes (qui représentent les ports informatiques) d’entrée/sorties, si toutes les portes sont ouvertes, il sera très difficile de sécuriser l’accès à la maison, ainsi nous allons créer une politique afin de fermer toutes les portes et d’ouvrir uniquement celles qui nous seront utiles.

Différents types de firewall

 

Firewalls  sans état (stateless)

Ils font un contrôle paquets par paquets en se basant sur des règles définies dans des ACL (Accès Control List). Ils interviennent sur les couches réseaux et transport.  Les filtrages interviennent par rapport à une adresse IP source/ destination ou un port source /destination. L’inconvénient est qu’il faut tout bloquer, puis choisir les flux à laisser passer, très long, de plus certaines applications utilisent des ports aléatoires, il est donc impossible d’utiliser certaines applications car elles seront bloqués.

Firewalls avec état (stateful)

Ces firewalls prennent en compte la validité des paquets qui transitent, c’est-à-dire qu’ils vérifient que chaque paquet d’une connexion est bien la suite du précédent paquet et la réponse à un paquet dans l’autre sens. Ils gardent en mémoire les différents attributs de chaque connexion de leur commencement à leur fin, c’est le mécanisme de « stateful inspection ». Il existe 4 états de sessions : NEW (le client envoi sa première requête), ETABLISHED (la connexion est déjà initiée, cela suit le NEW), RELATED (nouvelle  connexion mais déjà connue), INVALID (état du paquet invalide). L’application des règles est alors possible sans lire les ACL si une connexion est déjà active. L’inconvénient est que ce type de firewall ne protège pas contre les attaques de type applicatives.

Firewalls applicatifs

Ils fonctionnent sur la couche 7 (applicative) du modèle OSI, cela permet de pouvoir rejeter toutes les requêtes non conformes aux spécifications de protocole (exemple vérification que seul le protocole HTTP transite sur le port 80), l’inconvénient est que ce type de firewall est très gourmand en ressources.

Firewalls authentifiant

Ils permettent de mettre en place des filtres non plus en fonction des IP mais en fonction des utilisateurs authentifiés. Pour que le filtrage soit possible il y a une association entre l’utilisateur connecté et l’adresse IP de la machine qu’il utilise (via des protocoles tels que « authpf »).

Firewalls personnels

Ils sont installés sur les postes clients, ils permettent de contrôler l’accès au réseau des applications installées sur la machine, ils peuvent repérer et empêcher certaines applications d’ouvrir des ports.

 

Les firewalls peuvent gérer la qualité de service, c’est-à-dire gérer la bande passante (débit), les délais (latence), le taux d’erreurs (perte), etc. On peut donc offrir une meilleure qualité de service en fonction des besoins (multimédia, VOIP, etc). On peut donc prioriser certains flux via des classificateurs qui vont déterminer dans quelle file d’attente un paquet sera placé. Sous Linux le filtre le plus utilisé est « NetFilter ».

Pour configurer votre firewall sous linux, je vous invite à lire ce prochain tutoriel : [Tuto] Configurer son firewall sous Linux