I - Architecture traditionnelle Core, Aggregation, Access
4. Qu'est-ce que les VLAN et les Private VLAN ?
Commençons par un rappel de base sur les VLAN (Virtuelle Local Area Network), le premier concept d’utilisation de VLAN est introduit par le protocole ISL (Inter-Switch-Link) de chez CISCO en 1994. C’est seulement en 1998 que l’IEEE proposera un standard 802.1Q qui sera largement adopté en raison de sa compatibilité inter-constructeur. Les principes de ISL et 802.1Q sont semblables, cependant de légères différences de fonctionnement existent.
Le rôle des VLAN est indispensable afin de segmenter les réseaux et ainsi limiter les zones de diffusion, en vue de réduire la congestion sur la topologie. De plus, cette segmentation permet de sécuriser les réseaux en limitant leur zone d’action. A noter que les VLAN sont cloisonnés entre eux (sauf utilisation d’un routeur ou switch de niveau 3), à l’inverse les hôtes au sein d’un même VLAN peuvent tous communiquer entre eux.
Pour ce faire, ISL ajoute une couche d’encapsulation à l’inverse de 802.1Q qui ajoute seulement une étiquette entre le champ MAC sources et EtherType . Le fonctionnement de 802.1Q est donc bien moins gourmand en bande passante et en ressources qu'ISL.
L’étiquette TAG de 802.1Q est composée de la manière suivante :
Dans le cadre de l’utilisation de VLAN, un switch dispose de deux modes de fonctionnalité d’interface :
Le Port VLAN Identifier ou PVID, est défini sur les ports en mode Access pour transmettre les trames non taguées dans un VLAN spécifique. Par exemple, l’ordinateur connecté sur le port d’un switch qui a son PVID égal à 10, verra ses trames taguées sur le VLAN 10 de manière transparente pour lui.
Un autre concept des VLAN à maîtriser est le VLAN natif, ce dernier se configure sur un lien Trunk. Il a pour but d’attribuer les trames non taguées à un VLAN pour la communication sur le lien Trunk. Le natif VLAN doit être identique sur les deux ports de la liaison Trunk pour garantir une communication.
Les VLAN disposent d’une fonctionnalité avancée, les Private VLAN (PVLAN), qui permet de cloisonner les VLAN en sous-ensembles afin d’empêcher les hôtes d’un même VLAN de communiquer entre eux. Les PVLAN sont particulièrement appréciés dans les environnements nécessitant une confidentialité et une sécurité strictes, mais également dans les infrastructures mutualisées.
A l’inverse des VLAN, les PVLAN ne disposent pas de deux modes de fonctionnalités des interfaces, mais de trois :
Le VLAN divisé en sous-ensembles se nomme le Primary VLAN , il permet le transfert entre les interfaces en mode Promiscuous Port et les sous-ensembles Secondary VLAN . A noter qu’il existe deux types de Secondary VLAN :
Les switch CISCO sont dotés de protocoles propriétaires complémentaires pour la configuration VLAN comme Dynamic Trunk Protocol DTP et VLAN Trunking Protocol VTP .
Le protocole DTP permet de négocier de manière automatique les liaisons Trunk entre deux switch CISCO, via l’échange de messages de négociation. Quant au protocole VTP, il permet à un switch dit serveur de propager les VLAN sur les switch dits client .
Bien que les VLAN soient une manière de sécuriser une topologie réseau, ils doivent eux-mêmes être sécurisés, cela passe aussi bien par une bonne configuration que par un contrôle d’accès.
L’utilisation de DTP, bien qu’utile dans certains cas en vue de simplifier les configurations, peut être une faille de sécurité. En effet, si DTP est activé sur un port, un utilisateur malintentionné connecté sur ce port pourrait envoyer de faux paquets DTP et ainsi faire passer ce port du switch en mode Trunk. Une fois le port en mode Trunk, il n’y a plus qu'à créer des sous-interfaces virtuelles taguées sur les VLAN auxquels on souhaite accéder. L’utilisateur pourra maintenant accéder à tous les VLAN qu’il souhaite sans restriction. Cette attaque peut être contrée en restreignant l’utilisation de DTP à un nombre limité de ports ou encore mieux, en désactivant totalement DTP.
VTP fonctionne sur le principe du client serveur, c’est-à-dire qu’un switch qui porte le rôle du serveur peut créer des VLAN sur les switch clients, bien que cela permette de centraliser la configuration, cela représente une faille de sécurité. En effet, si le protocole VTP reste actif sur des switch clients, un attaquant pourrait simuler l’envoi de paquets VTP pour écraser la configuration des VLAN actuelle et déclarer d’autres VLAN. Le réseau se trouverait donc totalement paralysé.
L’une des bonnes pratiques de configuration est également la modification du VLAN natif sur les interfaces. En effet, par défaut le VLAN natif est le VLAN 1, le premier réflexe d’un attaquant sera donc d’envoyer du trafic tagué sur le VLAN 1 ; or, si le VLAN natif a été personnalisé, cela compliquera la tâche de l’attaquant.
La sécurisation des VLAN passe par un contrôle d’accès rigoureux des clients sur le réseau via l’utilisation du 802.1x et des Ports Sécurity.
Le protocole 802.1x permet l’authentification des postes clients via un certificat, en vue d’identifier à quel VLAN ils seront assignés. Pour ce faire, une fois connecté au réseau, le poste client envoie ses informations d’authentification au switch qui les relaie au serveur d’authentification (Ex : RADIUS). Tant que le serveur n’a pas validé les informations d’authentification, le port du switch est maintenu en état non authentifié , aucun trafic réseau n’est autorisé. Une fois que le client est authentifié par le serveur, le switch peut appliquer la politique réseau dédiée à ce client : l’assignation du VLAN et de la QoS. A noter que l’authentification peut se faire de deux manières :
L’authentification Client-Based sera préférée, car elle permet une gestion des accès réseaux plus fine évitant ainsi qu’un client illégitime ne bénéficie de l’authentification d’un client légitime.
La mise en place du 802.1x c’est un véritable atout en complément des VLAN pour segmenter et sécuriser les réseaux.
Le Port Sécurity est une fonctionnalité de sécurité qui permet au switch de filtrer et de restreindre les accès aux réseaux en fonction de l’adresse MAC des postes clients. L’apprentissage de la MAC des postes clients peut se faire des trois manières suivantes :
Dans le cas d’une violation de la politique de sécurité, l’une des trois réactions ci-dessous sera mise en œuvre en fonction de la configuration du switch.
La gestion des accès via le Port Sécurity est le minimum qui puisse être implémenté dans une topologie réseau. Cependant, l’utilisation du 802.1x lui sera préférée pour les grandes topologies nécessitant une gestion centralisée. De plus, il est aujourd’hui possible d’usurper une MAC : le Port Sécurity, bien qu’une première couche de sécurité, n’est pas inviolable.
Maintenant que vous maîtrisez le concept de VLAN et PVLAN, voyons comment l’intégrer dans notre infrastructure à 3 niveaux. L’utilisation des VLAN est majoritairement mise en place sur les couches Access et Aggregation . En effet, la couche Access dispose de plusieurs VLAN avec des ports en mode Access pour connecter les clients finaux dans leurs VLAN respectifs et des ports en mode Trunk pour l’interconnexion avec la couche Aggregation . La couche Aggregation ne dispose que d’interfaces en mode Trunk connectées à la couche Access qui sont utilisées pour le routage entre les différents VLAN. La couche Core , n’interagissant qu’au niveau 3, ne nécessite pas l’implémentation de VLAN.
Dans le cadre de notre infrastructure nous mettrons en place des VLAN sur nos couches Access et Aggregation .