Dans un réseau domestique, tous les appareils se voient. En entreprise, c'est un cauchemar de sécurité. Imaginez que l'imprimante Wi-Fi des invités puisse accéder au serveur de Comptabilité... Les VLANs permettent de découper virtuellement un switch physique en plusieurs réseaux isolés. Voici le guide technique complet.
1. Théorie : Comment ça marche ? (802.1Q)
Un câble Ethernet transporte des trames. Par défaut, ces trames sont "neutres". Pour créer des VLANs, on insère une étiquette (Tag) dans l'en-tête de la trame. C'est le standard IEEE 802.1Q.
Le vocabulaire indispensable
- Access Port (Untagged) : C'est le port où l'on branche un PC final. Le PC ne connaît pas les VLANs. Le switch ajoute l'étiquette quand la donnée entre, et l'enlève quand elle sort vers le PC.
- Trunk Port (Tagged) : C'est le câble entre deux switchs ou vers un routeur. Il transporte tous les VLANs en même temps. Les étiquettes sont conservées pour savoir à qui appartient le paquet.
- PVID (Native VLAN) : C'est le VLAN par défaut si une trame arrive sans étiquette sur un Trunk. (Souvent le VLAN 1, et c'est une faille de sécurité s'il n'est pas changé).
2. Le Scénario d'Architecture
Nous allons mettre en place l'architecture standard d'une PME :
| ID | Nom | Sous-réseau (CIDR) | Usage |
|---|---|---|---|
| 10 | ADMIN | 192.168.10.0/24 | Serveurs, Admins |
| 20 | USER | 192.168.20.0/24 | Employés, Imprimantes |
| 30 | GUEST | 192.168.30.0/24 | Wi-Fi Invités (Isolé) |
3. Configuration du Switch (Cisco IOS)
Même si vous avez du HP ou du Dell, la logique reste la même. Voici comment configurer les ports.
A. Création des VLANs
enable
conf t
vlan 10
name ADMIN
vlan 20
name USER
vlan 30
name GUEST
exit
B. Configurer un port utilisateur (Access)
Le PC de la comptable est branché sur le port 2. On le force dans le VLAN 20.
interface GigabitEthernet0/2
description PC-COMPTA
switchport mode access
switchport access vlan 20
no shutdown
C. Configurer le lien vers le Serveur/Routeur (Trunk)
Le serveur Linux est branché sur le port 24. Il doit recevoir tous les VLANs.
interface GigabitEthernet0/24
description UPLINK-LINUX
switchport mode trunk
switchport trunk allowed vlan 10,20,30
# Sécurité : On change le Native VLAN pour éviter le "VLAN Hopping"
switchport trunk native vlan 99
no shutdown
4. Configuration Linux (802.1Q & Netplan)
Côté serveur, nous n'avons qu'un seul câble physique (eth0 ou enp3s0), mais nous voulons 3 interfaces virtuelles. C'est ce qu'on appelle le Router-on-a-Stick.
Sur Ubuntu/Debian moderne, on utilise Netplan.
sudo nano /etc/netplan/00-installer-config.yaml
network:
version: 2
ethernets:
enp3s0:
dhcp4: false # L'interface physique n'a pas d'IP !
vlans:
vlan10:
id: 10
link: enp3s0
addresses: [192.168.10.1/24] # Gateway pour le VLAN 10
vlan20:
id: 20
link: enp3s0
addresses: [192.168.20.1/24] # Gateway pour le VLAN 20
vlan30:
id: 30
link: enp3s0
addresses: [192.168.30.1/24] # Gateway pour le VLAN 30
Appliquez la configuration : sudo netplan apply.
Vérifiez avec ip a. Vous verrez apparaître vlan10@enp3s0, etc.
5. Le Routage Inter-VLAN (Le rôle du Routeur)
À ce stade, les machines du VLAN 10 ne peuvent pas parler au VLAN 20. C'est normal : ce sont des réseaux différents (Layer 3).
A. Activer le Forwarding
Pour que Linux accepte de passer les paquets de l'un à l'autre :
sudo sysctl -w net.ipv4.ip_forward=1
(Pensez à le rendre permanent dans `/etc/sysctl.conf`)
B. Sécuriser avec le Pare-feu (UFW / Iptables)
C'est ici que tout se joue. Si on active le routage sans règles, on a recréé un réseau plat ! Il faut bloquer les Invités.
# 1. Autoriser le trafic INTERNET pour tout le monde (NAT)
iptables -t nat -A POSTROUTING -o wan0 -j MASQUERADE
# 2. Autoriser ADMIN (10) vers USER (20) (ex: Maintenance)
iptables -A FORWARD -i vlan10 -o vlan20 -j ACCEPT
# 3. Autoriser USER (20) vers les réponses établies (Stateful)
iptables -A FORWARD -m state --state ESTABLISHED,RELATED -j ACCEPT
# 4. BLOQUER tout le reste (GUEST ne pourra aller nulle part sauf Internet)
iptables -P FORWARD DROP
6. Troubleshooting Expert (Tcpdump)
Comment savoir si le Tagging fonctionne ? Si vous lancez un ping et que rien ne se passe, utilisez tcpdump pour voir les étiquettes.
# Ecouter sur l'interface PHYSIQUE pour voir les tags arriver
# -e : Affiche l'en-tête Ethernet (y compris le VLAN ID)
# -n : Pas de résolution DNS
# vlan : Filtre uniquement les paquets tagués
sudo tcpdump -i enp3s0 -e -n vlan
Résultat attendu :
14:05:01 ... ethertype 802.1Q (0x8100), length 100: vlan 10, p 0, ethertype IPv4, 192.168.10.55 > 8.8.8.8: ICMP echo request
Si vous voyez vlan 10, c'est gagné. Si vous ne voyez pas "vlan X", c'est que votre switch est mal configuré (il est resté en mode Access et a retiré l'étiquette).
Conclusion
Les VLANs sont la base de la sécurité réseau. Comprendre la différence entre l'interface physique (le tuyau) et les interfaces virtuelles (les flux colorés à l'intérieur) est ce qui distingue un administrateur réseau compétent.