Travail de fin d'études : Les firewalls

2. Les firewalls

C'est dans ce chapitre que nous allons commencer à parler des firewalls, à mieux comprendre leur fonctionnement. Vous retrouverez aussi dans ce chapitre la partie pratique de mon travail : un firewall software configuré sous Linux. Nous aborderons aussi les firewalls hardware.

2.1. Introduction à la notion de firewall :

Le rôle d'un firewall est de protéger un réseau intérieur contre toute intrusion du dehors. Lorsque vous êtes connecté à internet, les risques d'intrusion peuvent être réduits, mais pas éliminés. Un firewall ne pourra donc jamais remplacer la supervision et la bonne gestion de vos systèmes.

2.1.1. Rôle d'un firewall :

A la base, un firewall isole votre réseau intérieur d'un réseau extérieur. Les machines placées en amont ne peuvent pas voir celles placées en aval du firewall. Ainsi le réseau extérieur ne "voit" que le firewall apparaissant comme unique source et destination du trafic de votre organisation.

Cette description est assez simpliste. En effet, elle ne s'applique que dans le cas d'un petit réseau et non dans le cas d'un réseau étoffé.

Le rôle du firewall repose sur deux techniques de base : le filtrage des paquets de données et courroie de transmission.

La première est la technique la plus élémentaire pour protéger un réseau. Chaque paquet reçu est comparé avec un ensemble de règles, pour choisir le traitement à réaliser. Plusieurs stratégies pour le filtrage de paquets sont envisageables. Vous pouvez par exemple décider de bloquer tout ce qui peut être dangereux, ou alors, mais plus restrictif, bloquer tout par défaut.

La deuxième sert à masquer les machines de votre réseau derrière le firewall. Cela permet donc à un serveur de se faire passer pour la machine à l'origine d'un paquet. Par exemple, si un utilisateur demande une page web à un serveur HTTP, et que cette requête traverse le firewall, ce dernier retransmettra le paquet comme s'il était à l'origine de la requête. Ainsi, une seule machine est visible sur internet et vous n'avez besoin que d'une seule adresse IP, les machines de votre réseau pouvant alors disposer d'adresses IP privées.

2.1.2. Avez-vous besoin d'un firewall ?

Tout cela dépend du type d'utilisateur que vous êtes et de votre connexion. En effet, les besoins en protections ne sont pas les mêmes si vous êtes un particulier qui surfe de temps en temps sur internet ou si vous employez votre connexion internet 24 heures sur 24 pour votre entreprise et son site web. De plus, votre bande passante n'est pas la même lorsque vous êtes connecté avec un modem 56Kbps ou avec une connexion ADSL/Câble. En effet, votre bande passante est alors plus ou moins grande, votre IP est dynamique ou statique (c'est généralement le cas pour les utilisateurs du câble) ce qui peut faciliter la tâche du pirate.

Si vous êtes un particulier, des firewalls logiciels tels que Norton Firewall ou Zone Alarm devraient faire l'affaire. Créer un firewall sous Linux serait une perte de temps ou en avoir un spécifique serait une perte d'argent. En effet, en tant que petit utilisateur sur la toile, votre système n'est pas connecté en permanence à internet, vos heures de connexion sont aléatoires, votre adresse IP est probablement dynamique, et vous consommez une grande partie de votre bande passante. Un pirate aura donc plus de mal à vous pirater.

Par contre, si vous avez un site web d'entreprise, il est mieux d'avoir un firewall plus spécifique. Un firewall créé sous Linux, et donc gratuit, peut très bien faire l'affaire face à un firewall spécifique qui lui peut coûter des milliers de francs.

Mais attention ! Il ne faut pas non plus oublier qu'un firewall peut vous compliquer l'existence ! Ainsi, si la personne ne connaît pas grand chose en sécurité, ou vraiment très peu, elle ne pourrait plus faire certaines choses si elle ne sait pas que le problème vient du firewall. En effet, un firewall ne fait pas qu'empêcher les intrus d'accéder à votre système. Il empêche aussi le trafic légitime d'en sortir.

2.2. Firewall software :

Les firewalls softwares, ou logiciels, sont les plus répandus chez les particuliers car ces firewalls coûtent beaucoup moins cher que les firewalls hardwares. Certains sont gratuits, d'autres payants et coûtent en moyenne 60€. Evidemment, cette baisse de prix entraîne un niveau de protection moins évolué.

Nous avons regardé comment le firewall réagissait lorsque nous étions sur internet et lorsque nous éffectuions certaines actions.

Je vous parlerai principalement d'un firewall software que j'ai configuré avec Philippe TEMESI sous Linux SuSe dans sa version 8.1 Professionnelle.

2.2.1. Linux SuSe 8.1 Professionnel :

Ce firewall software sous Linux SuSe 8.1 Professionnel constitue la partie pratique de mon travail approfondi.

2.2.1.1. Description du firewall software :

La configuration hardware de notre firewall était la suivante :

Le système d'opération était Linux SuSE 8.1 Professionnel

Le minimum de mémoire RAM à mettre dans un petit serveur de PME est de 64Mo. Lorsque le serveur est un peu plus gros 128Mo sont conseillés. Cela peut monter jusqu'à 1Go pour les gros sites.

Pour avoir accès à internet, nous n'avions pas d'autres possibilités que de connecter la première carte réseau à un autre firewall hardware.

L'idéal pour le disque dur est d'être d'au moins 5, 6 Go, le minimum étant 2 Go. 500Mo sont réservés au système d'exploitation et à ses applications. Le reste peut alors être utilisé pour mettre des informations en cache. En effet, il est plus intéressant de télécharger sur un réseau local que sur internet car il faut payer les excédents de Go et cela permet d'augmenter les performances d'un point de vue bande passante.

Pour créer un firewall et qu'il ait un sens, il faut au moins deux interfaces réseaux. Cela nous permet de ne pas mélanger le trafic entre les deux interfaces. Le trafic passe donc par des filtres et le réseau est mieux protégé contre les attaques. Il est aussi impossible de sniffer (capturer des données) d'un côté à l'autre. Par exemple, si vous êtes sur internet, vous ne pouvez pas sniffer ce qui se passe dans le réseau interne. Seule une personne dans le réseau interne peut sniffer le trafic du réseau interne.

Description du firewall software

La première interface réseau peut par exemple être reliée à internet, et la deuxième relier le réseau interne. Il peut bien entendu y avoir plus de deux interfaces réseaux (vers d'autres réseaux locaux, le web, l'intranet, ...)

Lors de notre travail, les deux interfaces réseaux étaient " eth0 " et " eth1 ". Eth0 et eth1 car nous étions sur un réseau local (donc avec des cartes réseaux ethernet).

Le première interface réseau, eth0, était relié à un autre firewall donnant accès à internet. Son adresse IP était 192.168.0.23 et était dynamique. La deuxième interface réseau, eth1, n'était reliée à rien. Elle n'avait donc pas d'adresse IP.

Interfaces réseauxAdresse IPType d'IP
eth0192.168.0.23Dynamique
eth1Rien pour le momentRien
2.2.1.2. Objectif à atteindre :

L'objectif à atteindre est le suivant : il faut que le firewall relie l'entreprise en réseau local à internet. La première interface, eth0, sera reliée à internet avec une adresse IP dynamique ou statique. Tandis que la seconde reliera l'entreprise avec une IP fixe de réseau local.

Interfaces réseauxAdresse IPVers
eth0Dynamique/StatiqueInternet
eth1Adresse fixe de réseau localRéseau de l'entreprise

Il faudra donc pour chaque interface réseau un routage et savoir ce qui passera.

Maintenant, les deux grandes questions sont :

1) Qu'accepte-t-on venant d'internet ?

Nous avons notre firewall d'un coté et de l'autre notre client avec une adresse IP quelconque. Il va donc demander quelque chose qui se trouve derrière le firewall et devra passer par celui-ci avant de recevoir ce qu'il a demandé.

Qu'accepte-t-on venant d'internet ?

2) Que laisse-t-on faire aux utilisateurs du réseau local ?

Nous avons un pc sur le réseau local et un serveur de l'autre coté. L'utilisateur veut atteindre le serveur qui se trouve de l'autre coté. Il devra donc passer par le firewall.

Que laisse-t-on faire aux utilisateurs du réseau local ?

Ce sont les principaux cas qui se passent avec un firewall. Laisser entrer et sortir des informations.

Analysons maintenant les réactions du firewall, en entrée ainsi qu'en sortie, lorsqu'il accepte et lorsqu'il refuse de laisser passer une information.

2.2.1.3. Réaction du firewall en sortie :

Lorsqu'un employé du réseau interne d'une entreprise veut accéder à internet, ou à d'autres services comme le serveur de mails, il doit passer par le firewall de l'entreprise.

Lorsque le firewall accepte que l'employé accède à ce qu'il a demandé, trois cas peuvent être envisagés :

2.2.1.3.1. Routage :

Premièrement, le firewall peut faire du routage pur et dur, ce qui est très basique pour un firewall. L'employé va donc passer par le firewall, et accéder à ce qu'il demande. Le serveur verra cette personne avec sa propre adresse IP, et non pas avec celle du firewall.

N'oublions cependant pas que l'employé doit avoir une adresse IP internet et non pas une adresse IP d'un réseau interne. En effet, les adresses internes (généralement de ce genre : 192.168.0.xxx) d'un réseau ne sont pas compatibles avec les services se trouvant sur internet.

Routage

2.2.1.3.2. Masquerading / NAT

Deuxièmement, le firewall peut faire du "Masquerading / NAT", ou plus simplement, transition d'adresse IP. Cela revient toujours à faire du routage, mais en moins basique.

L'itinéraire est toujours le même : l'employé veut accéder à quelque chose sur internet et doit passer par le firewall de l'entreprise ... Mais il y a un hic ! L'employé dispose d'une adresse IP du réseau interne de l'entreprise et ne peut donc pas aller sur le serveur ...

C'est ici qu'intervient la transition d'adresse IP. L'employé va être vu comme s'il était le firewall, qui lui dispose d'une ou plusieurs adresses IP internet.

Mais pourquoi ne pas avoir tout simplement donné une adresse IP internet à l'employé comme dans le cas précédent ? Tout simplement car il est assez rare d'avoir une IP officielle sur tout les PC du réseau local (imaginez qu'une société ait vingt mille employés, ... ca fait beaucoup d'adresses IP internet !) et cela permet en plus de renforcer la sécurité.

Masquerading / NAT

2.2.1.3.3. Service mandataire (proxy) :

Troisièmement, il peut y avoir un proxy derrière le firewall. L'employé demande au firewall de faire tout à sa place, et le proxy lui renverra les informations demandées.

L'avantage est que tout se fait en local. (Voir 3.1.3. Le proxy d'une entreprise)

Service mandataire (proxy)

Le firewall peut très bien accepter que des informations sortent, tout comme il peut refuser que l'employé ait accès à certaines pages, certaines informations. Le firewall peut alors lui refuser l'accès de deux manières : par " Deny " ou " Reject "

2.2.1.3.4. Deny

L'employé reçoit une réponse du firewall lui disant que ce qu'il demande est interdit, qu'il n'a pas le droit d'accéder à tel ou tel service.

2.2.1.3.5. Reject

Ici, l'employé ne reçoit aucune réponse. Il fait sa demande, mais rien ne se passe ...

Le but du reject est de mettre plus longtemps à scanner un serveur ou autre, laissant la personne voulant l'atteindre dans l'attente : elle ne sait pas si il y a quelque chose ou non, et si il y a quelque chose, c'est peut-être parce que le réseau est surchargé.

2.2.1.4. Réaction du firewall en entrée :

Lorsque quelqu'un tente d'accéder par exemple au site d'une entreprise, il doit passer par le firewall de celle-ci, ou directement sur une machine de l'entreprise.

Encore une fois, cet employé pourrait recevoir l'information demandée, tout comme cette information pourrait lui être refusée.

Ici, c'est très simple, soit on accepte et le firewall renvoie la personne sur le serveur web, soit le firewall lui fournit les informations qu'il a demandé. Et lorsque cette personne ne peut pas accéder à ce qu'elle demande, le firewall lui en refuse l'accès par deny ou reject.

2.2.2. Les firewalls software sous Windows :

Les firewalls software pour windows ont la particularité (du moins pour la plupart) d'être déjà quasiment configurés et ne demandent pas autant de connaissance que celui que nous avons monté nous même sous Linux. L'installation se fait comme n'importe quel autre programme.

Les produits les plus connus sont Norton Firewall, Zone Alarm, Kaspersky Anti-Hacker, ...

2.3. Firewall hardware :

Les firewalls hardware les plus simples sont sous forme de boîtier incluant deux connecteurs réseau. Le premier pour relier le réseau interne, le second pour relier l'extérieur (Internet par exemple).

Les sociétés les plus réputées fabriquant des firewalls hardware sont : Cisco, Alturion, Nokia, 3com ...

Les prix de ces pare-feu vont de 2.500€, et plus. Le haut de gamme de chez alturion coute approximativement trois millions d'euros.

Les firewalls hardware ont aussi la particularité d'être très résistants aux pannes : il n'y a pas de mémoire volatile, ni de disque dur. Ils ne sont pas non plus SPF, Single Point of Failure, c'est à dire que tout est redondant : si une puce, ou d'autres composants cessent de fonctionner, un deuxième vient prendre le relais.

TFE : Les Firewalls

Autres