Chapitre 7. Pare-feu

La sécurité des informations est souvent considérée comme un processus et non pas un produit. Toutefois, pour mettre en oeuvre un environnement de sécurité standard, il est souvent nécessaire de recourir à un mécanisme dédié pour contrôler les privilèges d'accès, limiter l'utilisation des ressources du réseau aux personnes autorisées, identifiables et localisables. Red Hat Enterprise Linux inclut de nombreux outils performants destinés à aider les administrateurs et les ingénieurs de sécurité à faire face aux problèmes de contrôle d'accès au niveau du réseau.

Mis à part dans le cas de solutions VPN comme CIPE ou IPsec (abordées dans le Chapitre 6), les pare-feu représentent la pierre angulaire de l'implémentation de toute sécurité réseau. De nombreux vendeurs commercialisent des solutions de pare-feu s'adressant à tous les niveaux d'activité informatique : de l'utilisateur privé protégeant un PC à des solutions de centres de données sécurisant des informations commerciales d'une importance vitale. Les pare-feu peuvent être des solutions matérielles indépendantes telles que des appareils de sécurité fabriqués par Cisco, Nokia et Sonicwall. En matière de pare-feu, il existe également des solutions logicielles propriétaires mises au point par des vendeurs tels que Checkpoint, McAfee et Symantec et s'adressant aux marchés de l'informatique privée ou d'entreprise.

Outre les différences entre des pare-feu de type matériel et logiciel, des différences au niveau de la manière dont ces pare-feu fonctionnent distinguent une solution d'une autre. Le Tableau 7-1 examine trois types de pare-feu courants et leur fonctionnement :

MéthodeDescriptionAvantagesInconvénients
NATSelon la traduction d'adresses réseau (ou NAT de l'anglais Network Address Translation), des sous-réseaux internes d'IP réseau sont placés derrière une seule adresse IP ou un petit ensemble d'adresses IP permettant ainsi de masquer toutes les requêtes comme provenant d'une source plutôt que plusieurs.

· Configuration possible de manière transparente vers les machines d'un LAN
· Protection de plusieurs machines ou services derrière une ou plusieurs adresse(s) IP externe(s), simplifiant les tâches d'administration
· Restriction de l'accès des utilisateurs depuis et vers le LAN configurable en ouvrant ou fermant des ports sur le pare-feu ou la passerelle effectuant la NAT

· Ne peut empêcher des activités malicieuses une fois les utilisateurs connectés à un service en dehors du pare-feu

Filtre de paquetsLes pare-feu de filtrage de paquets lisent chaque paquet de données passant aussi bien dans un LAN qu'à l'extérieur. Ils peuvent lire et traiter les paquets en fonction des informations d'en-tête et filtrent les paquets sur la base d'ensembles de règles programmables mises en oeuvre par l'administrateur de pare-feu. Dans le noyau Linux est incorporée une fonctionnalité de filtrage des paquets grâce à netfilter, le sous-système du noyau.

· Personnalisable par le biais de l'utilitaire front-end iptables
· Ne nécessite aucune personnalisation du côté client car toute activité est filtrée au niveau du routeur plutôt qu'au niveau de l'application
· Étant donné que les paquets ne sont pas transmis à travers un serveur proxy, la performance réseau est plus rapide grâce à une connexion directe du client à l'hôte distant

· Ne peut filtrer les paquets par contenu comme des pare-feu proxy
· Traite des paquets au niveau du protocole mais ne peut pas les filtrer au niveau d'une application
· Des architectures réseau complexes peuvent rendre difficile l'établissement de règles de filtrage, en particulier si elles sont alliées au masquage d'IP ou à des sous-réseaux locaux et réseaux DMZ

ProxyLes pare-feu proxy filtrent toutes les requêtes d'un protocole ou type particulier venant des clients d'un LAN et destinées à un ordinateur proxy, qui envoie lui ces requêtes vers l'internet de la part du client local. Un ordinateur proxy joue le rôle d'un tampon entre des utilisateurs distants malicieux et les machines clientes du réseau interne.

· Donne aux administrateurs le contrôle sur les applications et protocoles spécifiques pouvant fonctionner en dehors du LAN
· Certain serveurs proxy peuvent mettre en cache des données de manière à ce que des clients puissent avoir accès à des données fréquemment demandées depuis une cache locale plutôt que de devoir utiliser une connexion Internet pour les obtenir ; ce procédé est pratique pour réduire la consommation superflue de largeur de bande
· Les services proxy peuvent être journalisés et étroitement surveillés, permettant un contrôle plus strict de l'utilisation des ressources du réseau

· Les proxies sont souvent particuliers à des applications (HTTP, telnet, etc.) ou limités à des protocoles (la plupart fonctionnent seulement avec des services connectés à TCP)
· Les services d'applications ne peuvent tourner derrière un proxy, vos serveurs d'applications doivent recourir à une forme de sécurité réseau indépendante
Les proxies peuvent devenir un goulot d'étranglement pour le réseau dans la mesure où toutes les requêtes et transmissions sont aiguillées vers une source plutôt que de diriger le client vers des connexions distantes au service

Tableau 7-1. Types de pare-feu

7.1. Netfilter et IPTables

Le noyau Linux comprend un sous-système puissant de mise en réseau appelé netfilter. Le sous-système netfilter fournit le filtrage de paquets avec ou sans état ainsi que les services de masquage IP et NAT. Netfilter offre également la possibilité de coder les informations d'en-tête d'IP pour une gestion avancée du routage et des états de connexion. Netfilter est contrôlé grâce à l'utilitaire IPTables.

7.1.1. Aperçu de IPTables

La puissance et la flexibilité de netfilter sont implémentées grâce à l'interface IPTables. Cet outil de ligne de commande est similiare en syntaxe à son prédécesseur, IPChains ; toutefois, IPTables utilise le sous-système netfilter afin d'améliorer la connexion réseau, l'inspection et le traitement ; alors que IPChains utilisait des ensembles de règles compliquées pour filtrer les chemins de source et destination, ainsi que des ports de connexion pour les deux. IPTables offre une journalisation avancée ainsi que des actions avant et après le routage, la traduction d'adresses réseau et la redirection de ports avancées dans une seule interface de ligne de commande.

Cette section offre un aperçu de IPTables. Afin d'obtenir de plus amples informations sur IPTables, consultez le Guide de référence de Red Hat Enterprise Linux.