Pare-feu
En informatique, un pare-feu est un dispositif logiciel ou matériel qui filtre le flux de données sur un réseau informatique. Il est parfois appelé coupe-feu ou encore firewall.
| Sommaire |
Fonctionnement général
Le pare-feu est aujourd'hui considéré à la pierre angulaire de la sécurité d'un réseau informatique. Il permet d'appliquer une politique d'accès aux ressources réseau (serveurs).
Le filtrage se fait selon divers critères. Les plus courants sont :
- l'origine ou la destination des paquets (adresse IP, ports TCP ou UDP, interface réseau, etc.)
- les options contenues dans les données (fragmentation, validité, etc.)
- les données elles-mêmes (taille, correspondance à un motif, etc.)
- les utilisateurs pour les plus récents
Un pare-feu fait souvent office de routeur et permet ainsi d'isoler le réseau en plusieurs zones de sécurité appelées zones démilitarisées ou DMZ. Ces zones sont séparées suivant le niveau de confiance qu'on leur porte.
Catégories de pare-feu
Les pare-feu sont le plus vieil équipement de sécurité et comme tel, ils ont été soumis à des nombreuses évolutions. Suivant la génération du pare-feu ou son rôle précis, on peut les classer en différentes catégories.
Pare-feu sans états (stateless firewall)
C'est le plus vieux dispositif de filtrage réseau, introduit sur les routeurs. Il regarde chaque paquet indépendamment des autres et le compare à une liste de règles. La configuration de ces dispositifs est souvent complexe et l'absence de prise en compte des machines à états des protocoles réseaux ne permet pas d'obtenir une finesse du filtrage très évoluée. Ces pare-feu ont donc tendance à tomber en désuétude mais restent présents sur certains routeurs ou systèmes d'exploitation.
Pare-feu à états (statefull firewall)
Certains protocoles dits « à états » comme TCP ou FTP introduisent une notion de connexion. Les pare-feu à états vérifient la conformité des paquets à une connexion en cours.
Pare-feu applicatif
Dernière génération de pare-feu, ils vérifient la complète conformité du paquet à un protocole attendu. Par exemple, ce type de pare-feu permet de vérifier que seul du HTTP passe par le port TCP 80. Ce traitement est très gourmand en temps de calcul dès que le débit devient très important; il est justifié par le fait que de plus en plus de protocoles réseaux utilisent un tunnel TCP pour contourner le filtrage par ports.
Pare-feu authentifiant
Un pare-feu authentifiant réalise l’authentification des connexions passant à travers le filtre IP. L'administrateur peut ainsi définir les règles de filtrage par utilisateur et non plus par IP, et suivre l'activité réseau par utilisateur. Plusieurs méthodes différentes existent qui reposent sur des associations entre IP et utilisateurs réalisées par des moyens variés. On peut par exemple citer authpf (sous OpenBSD) qui utilise ssh pour faire l'association. Une autre méthode est l'authentification connexion par connexion, réalisée par exemple par la suite NuFW, qui permet d'authentifier également sur des machines multi-utilisateurs.
Pare-feu personnel
Les pare-feu personnels, généralement installés sur une machine de travail, agissent comme un pare-feu à états. Bien souvent, ils vérifient aussi quel programme est à l'origine des données. Le but est de lutter contre les virus informatiques et les logiciels espions.
Implémentations connues
- (en) Le projet Netfilter, implémentation libre d'un pare-feu dans le noyau Linux.
- (fr) Packet Filter, pare-feu libre des systèmes BSD, introduit par OpenBSD.
- (fr) Cisco PIX, boîtier pare-feu commercialisé par Cisco System.
- (en) Check Point Firewall-1, logiciel pare-feu commercial.
- (fr) NuFW, logiciel pare-feu authentifiant en GPL pour environnement GNU/Linux, client sous licence commerciale pour postes clients Windows
Voir aussi
Liens externes
- (fr) La sécurité par Christian Caleca Site de vulgarisation sur le réseau.
- (fr) Comment ça marche un pare-feu ?
- (en) Shields Up, site permettant de vérifier l'efficacité de son pare-feu.
- (fr) Pare-feu sous Linux, explications sur le fonctionnement d'un pare-feu sous Linux (vulgarisation)
