Pare-feu, DMZ et filtrage
TP Cyber-Rescue, partie orientée SISR : segmenter le réseau, contrôler les connexions et sécuriser l'administration avec pfSense.
1. Pourquoi segmenter
Un réseau à plat signifie qu'un poste utilisateur compromis peut atteindre directement les serveurs, les interfaces d'administration et la base de données. La segmentation limite la propagation latérale : l'attaquant doit franchir un pare-feu à chaque étape, et chaque franchissement est journalisé.
Découpage typique sur un pfSense à quatre interfaces :
| Interface | Contenu | Exposition |
|---|---|---|
| WAN | Lien vers l'extérieur | Non maîtrisé |
| DMZ | Serveur web public | Joignable depuis Internet, en HTTP/HTTPS uniquement |
| LAN | Postes utilisateurs, administration | Jamais joignable depuis Internet |
| LAN BDD | Serveur de base de données | Joignable uniquement depuis le serveur web, sur le port applicatif |
2. La DMZ
La zone démilitarisée est un réseau intermédiaire qui héberge les services exposés à Internet. Elle est isolée du LAN par des règles strictes : si le serveur web est compromis, l'attaquant se retrouve dans la DMZ, pas dans le réseau interne.
C'est pour cela que la base de données ne doit jamais être directement accessible depuis Internet :
- elle concentre les données les plus sensibles (comptes, données personnelles) ;
- elle n'a aucune raison fonctionnelle d'être jointe par un visiteur — seul le serveur applicatif l'interroge ;
- exposer le port 3306 revient à offrir une surface de brute-force et d'exploitation permanente.
Le serveur web joue donc le rôle de seul intermédiaire autorisé entre l'extérieur et les données.
3. Écrire des règles de filtrage
Exemple de jeu de règles cohérent, avec la justification attendue pour chacune :
| # | Interface | Source | Destination | Port | Action | Justification |
|---|---|---|---|---|---|---|
| 1 | WAN | any | IP web (DMZ) | 80, 443 | PASS | Site public accessible |
| 2 | DMZ | IP web | LAN BDD | 3306 | PASS | Accès MySQL contrôlé, source unique |
| 3 | DMZ | DMZ | LAN | any | BLOCK | Moindre privilège : la DMZ ne remonte pas vers l'interne |
| 4 | LAN | LAN | DMZ | any | PASS | Administration descendante |
| 5 | WAN | any | LAN | any | BLOCK | Le LAN n'est jamais exposé |
| 6 | LAN | LAN | WAN | 80, 443, 53 | PASS | Mises à jour et résolution DNS |
L'ordre compte : pfSense évalue les règles de haut en bas et applique la première qui correspond.
Une règle BLOCK trop haute rend inutiles toutes les règles PASS qui la suivent.
Le principe du moindre privilège appliqué au filtrage
Chaque flux n'est autorisé que s'il est nécessaire, depuis la source strictement nécessaire, vers la destination strictement nécessaire, sur le port strictement nécessaire.
On préfère l'approche whitelist (tout interdire, puis autoriser au cas par cas) à la blacklist : avec une blacklist, tout ce qu'on a oublié d'interdire passe, et la liste doit être mise à jour à chaque nouvelle menace. Avec une whitelist, l'oubli produit un blocage — un incident visible et corrigeable, pas une brèche silencieuse.
4. NAT et 802.1X
NAT / port forwarding : le serveur web en DMZ possède une adresse privée. Une règle de redirection de port sur l'interface WAN traduit l'adresse publique vers l'adresse privée pour les ports 80 et 443. Sur pfSense, la création d'une règle NAT propose automatiquement la règle de filtrage associée — les deux sont nécessaires.
802.1X : norme d'authentification au niveau de l'accès réseau (port du commutateur ou Wi-Fi). Avant d'obtenir la moindre adresse IP, le poste doit s'authentifier auprès d'un serveur RADIUS, généralement adossé à l'annuaire.
- Empêche qu'un visiteur branche son portable sur une prise murale et se retrouve dans le LAN.
- Permet d'affecter dynamiquement un VLAN selon l'identité (VLAN invités, VLAN production).
- Complète le filtrage : le pare-feu contrôle les flux, 802.1X contrôle qui entre sur le réseau.