Dans la partie précédente, nous avons vu qu’il était dorénavant possible de rendre un pare-feu dynamique grâce aux IP SETS. Un « IP SET » est une sorte de tableau stocké en mémoire vive dans lequel il est possible d’insérer ou de supprimer très facilement des adresses IP (v4/v6), des numéros de port, des paires d’adresses IP et d’adresses MAC, etc.
Avec ceux-ci, il est possible d’aiguiller les utilisateurs d’un même réseau de consultation vers le niveau de filtrage qui leur correspond et qui aura été dicté par un administrateur. En plus de mettre en place un filtrage par liste blanche et par liste noire sur des sites web, il est possible d’aller plus loin en intégrant un filtrage par protocole. De cette façon, il est maintenant possible de cloisonner complètement les utilisateurs ou groupes d’utilisateurs d’un réseau de consultation. Parmi les protocoles les plus courants, nous trouvons :
HTTP : protocole de communication pour Internet (World Wide Web)
HTTPS : protocole de communication sécurisé pour Internet
ICMP : protocole servant à véhiculer des messages (PING)
SSH : protocole de communication chiffré d’un ordinateur à un autre
IMAP : protocole de récupération d’e-mails
POP3 : protocole de récupération d’e-mails
SMTP : protocole d’envoi d’e-mail
FTP : protocole de transfert de fichiers
Scénario
Un directeur d’entreprise souhaite instaurer des règles de filtrage différentes pour ses employés. Il désire mettre en place un système de filtrage par liste noire pour sa comptable et sa secrétaire afin d’interdire à celles-ci d’aller sur des sites frauduleux. Il souhaite également mettre en place un système de filtrage par liste blanche pour le reste de ses employés afin d’être sûr que ceux-ci n’iront que sur les sites autorisés par l’entreprise. De plus, il voudrait que sa comptable et sa secrétaire puissent uniquement faire des recherches sur Internet et envoyer / recevoir des e-mails, et que le reste de ses employés puissent uniquement naviguer sur Internet. Inutile de dire que le directeur ne veut pas être filtré.
Mise en place au niveau du pare-feu
Pour intégrer ce dispositif dans le pare-feu, nous allons ici aussi tout gérer au moyen d’IP SETS. Nous commençons par définir les trois SETS destinés à accueillir les utilisateurs :
utilisateurs_non_filtres : pour les utilisateurs n’ayant aucune restriction → ici le directeur
utilisateurs_liste_noire_filtres : pour interdire certains sites aux usagers et que ceux-ci ne puissent faire que de la navigation web (HTTP, HTTPS) et envoyer / recevoir des e-mails (POP3, IMAP, SMTP) → ici la comptable et la secrétaire
utilisateurs_liste_blanche_filtres : pour n’autoriser que certains sites aux usagers et que ceux-ci ne puissent faire que de la navigation web (HTTP, HTTPS) → ici le reste du personnel
Une fois créés, ces SETS sont directement manipulables par des programmes. On peut alors insérer l’adresse IP d’un utilisateur du réseau qui se connecte dans le SET qui lui correspond ou bien retirer l’adresse IP d’un utilisateur qui se déconnecte.
Ensuite, il reste à créer un SET liste_noire et un SET liste_blanche destinés à accueillir respectivement les adresses IP des sites interdits et les adresses IP des sites autorisés. Grâce aux SETS, les règles du pare-feu ne traitent plus des adresses IP, mais des SETS qui contiennent des adresses IP. Voici les règles que nous pouvons ajouter dans ce pare-feu :
1. autoriser tout le trafic pour le SET utilisateurs_non_filtres
2. bloquer l’accès si un usager du SET utilisateurs_liste_noire_filtres demande l’adresse IP d’un site présent dans le SET liste_noire sinon autoriser la connexion
3. bloquer l’accès si un usager du SET utilisateurs_liste_noire_filtres tente d’accéder à un protocole autre que ceux de la navigation web (HTTP, HTTPS) et de la messagerie (POP3, IMAP, SMTP) sinon autoriser l’accès
4. bloquer l’accès à un site si un usager du SET utilisateurs_liste_blanche_filtres demande l’adresse IP d’un site non présent dans le SET liste_blanche sinon autoriser la connexion
5. bloquer l’accès si un usager du SET utilisateurs_liste_blanche_filtres tente d’accéder à un protocole autre que ceux de la navigation web (HTTP, HTTPS) sinon autoriser l’accès
Voici le schéma du fonctionnement interne du pare-feu :
De cette manière, il devient possible de filtrer indépendamment les utilisateurs d’un réseau de consultation. Non seulement, il est possible de filtrer leurs connexions web, mais aussi les protocoles avec lesquels ils souhaitent communiquer. Avec les règles que nous venons de mettre en place, le directeur n’est pas filtré. La comptable et la secrétaire peuvent naviguer librement sur Internet à l’exception des sites de la liste noire qui leur seront refusés par le pare-feu. Ces deux personnes ont également la possibilité de recevoir et d’envoyer des e-mails, mais sont totalement bloquées par le pare-feu pour tout autre protocole (SSH, FTP, etc.). Enfin, les autres employés ont un usage restreint. En effet, ils ne peuvent aller que sur les sites autorisés par la liste blanche, tout le reste étant bloqué par le pare-feu (POP3, IMAP, SMTP, SSH, FTP, etc.).
L’emploi des IP SETS dans un pare-feu nous offre la possibilité d’ajouter et de supprimer des adresses IP dans ces SETS sans avoir besoin de ré-exécuter l’ensemble des règles du pare-feu. Un aspect dynamique est venu s’intégrer à l’utilisation de celui-ci. En effet, à un instant T, nous pouvons avoir des règles mises en place pour un usager et à un instant T+1, cet usager peut complètement disparaître du système (cas d’un utilisateur qui était connecté et se déconnecte : son adresse IP est donc retirée du SET correspondant par un programme quelconque), et cela de façon autonome.
Conclusion
Via les SETS IP, il est désormais possible de faire du cloisonnement par protocole et par adresse IP au sein d’un réseau de consultation. Cette nouveauté nous permet de filtrer complètement et indépendamment les usagers d’un même réseau au travers du pare-feu. Comparé à un pare-feu statique, un pare-feu dynamique permet de diminuer considérablement le nombre de lignes de code qui le compose puisqu’un pare-feu dynamique ne traite pas des adresses IP, mais des groupes d’adresses IP (IP SETS). De plus, il n’est plus nécessaire de ré-exécuter l’ensemble des règles lors de la connexion ou de la connexion d’un usager. L’usage est devenu dynamique.