Cours B3-09 - Sécuriser le réseau avec pfSense : segmentation, DMZ
Cours · Fiche de cours

B3-09 - Sécuriser le réseau avec pfSense : segmentation, DMZ

B3-09 Sécuriser le réseau avec pfSense : segmentation, DMZ

🎓 SIO2 · semestre 3 ⏱️ 6 h (cours + TP) 🎯 Bloc 3 – Cybersécurité (SISR) Découper le réseau en zones de confiance, filtrer les flux entre elles avec un pare-feu à états, exposer un service en DMZ, et verrouiller l'accès au réseau dès la prise murale.

🎯 Objectifs

  • Expliquer le rôle d'un pare-feu à états et la politique « tout ce qui n'est pas autorisé est interdit ».
  • Découper un réseau en zones (LAN, DMZ, WAN…) et rédiger une matrice des flux.
  • Configurer pfSense : interfaces, règles, alias, redirection de port, journaux.
  • Exposer un serveur web en DMZ sans exposer le réseau interne.
  • Sécuriser l'accès au réseau sur un commutateur Cisco : port-security, DHCP snooping, DAI, principe du 802.1X.

📋 Prérequis

🧭 Référentiel

  • B3.5 Assurer la cybersécurité d'une infrastructure réseau, d'un système, d'un service.
  • B3.4 Garantir la disponibilité, l'intégrité et la confidentialité des services et des données.
  • B2.1 Concevoir une solution d'infrastructure réseau : segmentation.
Test express des prérequis 3 questions · 2 minutes · conseillé avant de commencer

1. Quel port de destination utilise un navigateur pour ouvrir un site en HTTPS ?

HTTPS = TCP 443, HTTP = TCP 80, DNS = UDP 53 (et TCP 53). Un pare-feu filtre précisément sur ces numéros. À revoir : B2-07 · NAT et ACL.

2. À quoi sert le NAT sur le routeur de sortie d'une entreprise ?

Les adresses privées (RFC 1918) ne circulent pas sur Internet : le NAT les remplace par l'adresse publique du routeur ou du pare-feu.

3. Dans DICP, que protège-t-on quand on empêche un poste de l'entrepôt d'ouvrir les fichiers de la paie ?

Seules les personnes autorisées doivent accéder à une information : c'est la confidentialité. À revoir : B3-01 · Fondamentaux.
Internet attaquant pfSense DMZ site web LAN paie, compta ✕

Brocéliande Logistique (entreprise fictive) veut ouvrir un portail de suivi des livraisons à ses clients. Le serveur web sera donc joignable depuis Internet… c'est-à-dire par n'importe qui, y compris par des attaquants qui chercheront la moindre faille.

Le responsable informatique a été clair : si le serveur web est un jour piraté, l'intrus ne doit en aucun cas pouvoir rebondir vers les serveurs de la paie ou de la comptabilité. Il te confie la mise en place d'un pare-feu pfSense avec une zone démilitarisée (DMZ), et le verrouillage des prises réseau des bureaux.

Le coursLe pare-feu et le filtrage à états, les zones et la matrice des flux, pfSense (règles, alias, NAT, journaux), puis la sécurité au niveau des prises réseau.

1. Le pare-feu : contrôler les flux entre les zones

Un réseau segmenté en VLAN (fiche B2-03) n'est pas un réseau protégé : dès qu'un routeur fait communiquer les VLAN, tout passe. Le pare-feu est l'équipement placé aux frontières entre zones qui décide, pour chaque flux, s'il est autorisé ou non, selon des règles écrites par l'administrateur.

Pare-feu (firewall) : équipement ou logiciel qui filtre le trafic entre plusieurs réseaux selon une politique de sécurité. Chaque paquet est comparé à une liste de règles portant sur l'interface d'entrée, le protocole, les adresses et les ports source et destination ; la règle qui correspond décide : autoriser, bloquer (en silence) ou rejeter (en prévenant l'émetteur).

Clique sur chacun des quatre flux pour voir ce qu'en fait le pare-feu.

WAN · Internet DMZ · 172.16.80.0/24 LAN · 172.16.10.0/24 SRV-WEB .10 postes, SRV-01 pfSense AUTORISÉ NAT → .10:443 ✕BLOQUÉ ✕BLOQUÉ ① LAN → Internet (HTTPS) ② Internet → DMZ (portail) ③ Internet → LAN ④ DMZ piratée → LAN

Choisis un flux à gauche.

Le pare-feu applique une politique par zone : ce qui n'est pas explicitement autorisé est bloqué.
ACL d'un routeur (B2-07)Pare-feu (pfSense, Stormshield, Fortinet…)
Mémoire des connexionsNon (sans état) : il faut autoriser le retour à la mainOui (à états) : le retour est autorisé automatiquement
GestionLignes de commande, numérotéesInterface web, alias, descriptions, historique
JournauxLimitésDétaillés, consultables, exportables vers un SIEM
Fonctions en plus–VPN, proxy, IDS/IPS, portail captif, haute disponibilité

2. Le filtrage à états et la politique par défaut

Un pare-feu moderne est à états (stateful) : il garde en mémoire, dans une table d'états, chaque connexion qu'il a autorisée. Les paquets de réponse appartenant à une connexion connue passent sans qu'aucune règle ne soit nécessaire dans l'autre sens. Un paquet qui arrive de l'extérieur sans avoir été « demandé » ne trouve aucun état : il est confronté aux règles, et bloqué si aucune ne l'autorise.

PC-COMPTA pare-feu Internet LANWAN Table d'états 172.16.20.1:51022 → 3.3.3.3:443TCP · ESTABLISHED :443 :443 règle LAN : autorisé réponse connue : elle passe intrus ✕ inconnu : bloqué
La règle autorise l'aller ; c'est la table d'états qui laisse passer le retour.
ACCUEIL registreMme Roy →livreur ✓ bureaux (LAN)rue (Internet) attendu : il entre · inconnu : refoulé

Pour bien comprendre : l'hôtesse d'accueil

À l'accueil d'une entreprise, l'hôtesse applique une consigne : personne n'entre sans être attendu. C'est la politique par défaut du pare-feu.

Quand Mme Roy, de la comptabilité, sort chercher un colis, l'hôtesse le note dans son registre : le livreur qui l'accompagne au retour est attendu, il entre. Ce registre, c'est la table d'états.

Un inconnu qui se présente sans que personne ne l'attende est refoulé, et l'hôtesse note son passage : ce sont les journaux.

2.1 Ce que contient une règle

  • ActionPass (autoriser), Block (jeter en silence, l'émetteur attend dans le vide) ou Reject (jeter en prévenant l'émetteur). Vers Internet on bloque ; en interne, rejeter évite des attentes inutiles.
  • InterfaceL'interface par laquelle le paquet entre dans le pare-feu. Une règle « LAN vers DMZ » se place sur l'interface LAN.
  • ProtocoleTCP, UDP, ICMP, ou tous.
  • Source · DestinationAdresse, réseau ou alias, et pour TCP/UDP le port de destination (443, 53…). Le port source est presque toujours « any ».
  • Journalisation et descriptionCocher « Log » pour garder une trace des paquets concernés ; une description claire (« LAN vers portail web ») rend la règle compréhensible par un collègue.

1. Tout ce qui n'est pas autorisé est interdit : on part d'un refus total et on n'ouvre que les flux nécessaires (liste blanche), au plus juste.
2. La première règle qui correspond l'emporte : les règles d'une interface sont lues de haut en bas ; une règle large placée en haut rend inutiles les règles placées en dessous.

3. Découper en zones de confiance

Segmenter, c'est regrouper les équipements qui ont le même niveau de confiance et les mêmes besoins dans une même zone, puis filtrer entre zones. Plus une zone est exposée, moins on lui fait confiance.

WAN · Internetconfiance : aucunetout arrive bloqué DMZserveurs exposésconfiance : faible LANpostes et serveurs internesconfiance : élevée INVITÉS (Wi-Fi)Internet seulement GESTIONadministration des équipements
Chaque zone est une interface (ou un VLAN) du pare-feu, avec ses propres règles.

DMZ (zone démilitarisée) : zone isolée qui accueille les serveurs qu'on doit rendre accessibles depuis Internet (site web, messagerie, VPN). Les flux Internet → DMZ sont autorisés au strict nécessaire ; les flux DMZ → LAN sont interdits. Ainsi, un serveur exposé qui serait piraté ne donne pas accès au réseau interne.

4. Concevoir la matrice des flux

Avant de cliquer dans le pare-feu, on écrit la matrice des flux : un tableau qui liste, pour chaque besoin métier, la source, la destination, le service et la décision. C'est le document que valide le responsable, que l'on traduit ensuite en règles, et que l'on relit lors d'un audit.

N°SourceDestinationServiceDécisionJustification
1LANInternetHTTP, HTTPS, DNS✅ autoriséNavigation et mises à jour des postes
2LANSRV-WEB (DMZ)HTTPS✅ autoriséLes salariés consultent le portail
3GESTIONDMZSSH✅ autoriséAdministration du serveur web, depuis PC-ADMIN seulement
4InternetSRV-WEB (DMZ)HTTPS (redirection de port)✅ autoriséLes clients suivent leurs livraisons
5DMZInternetHTTP, HTTPS, DNS✅ autoriséMises à jour du serveur web
6DMZLANtout⛔ interditUn serveur exposé compromis ne doit pas atteindre le LAN
7INVITÉSLAN, DMZ, GESTIONtout⛔ interditLes visiteurs n'ont droit qu'à Internet
8InternetLANtout⛔ interditPolitique par défaut
Ce flux doit-il être ouvert ? Réponds pour le flux que l'on te demande d'ajouter

Un besoin métier précis, validé par le responsable, justifie-t-il ce flux ?« Le comptable doit déposer ses déclarations sur le site des impôts » est un besoin ; « au cas où » n'en est pas un.

Le flux part-il d'une zone moins sûre vers une zone plus sûre ?Internet → LAN, DMZ → LAN, invités → LAN.

Peux-tu le restreindre à une source, une destination et un port précis ?Par exemple LAN → SRV-WEB en TCP 443 plutôt que LAN → DMZ « tout ».

Ne l'ouvre pas. Un flux sans besoin identifié est une porte d'entrée gratuite pour un attaquant. Note la demande et fais-la valider.

Refuse, ou fais passer le service par la DMZ. Un service interne à exposer se publie via un serveur de la DMZ (ou un VPN, fiche B3-10), jamais par une ouverture directe vers le LAN.

Ouvre-le, au plus juste : règle sur l'interface d'entrée, source et destination en alias, port précis, journalisation, description, et une ligne dans la matrice des flux.

Reprends l'analyse avec le demandeur : un flux « tout vers tout » cache souvent un besoin mal compris. Fais-lui préciser quelle application, quel serveur et quel port.

5. Découvrir pfSense

pfSense est un pare-feu libre, basé sur FreeBSD, très répandu dans les PME et les collectivités (son cousin OPNsense fonctionne sur les mêmes principes). Il s'installe sur un petit boîtier ou dans une machine virtuelle ; on l'administre par une interface web, après un premier réglage à la console.

5.1 Les interfaces

Chaque carte réseau (ou chaque VLAN) de pfSense est une interface. À l'installation, il en propose deux : WAN (vers Internet, adresse souvent en DHCP) et LAN (réseau interne, 192.168.1.1/24 par défaut). Les suivantes s'appellent OPT1, OPT2… et on les renomme : DMZ, INVITES, GESTION.

pfSense menu de la consoleVM pfSense dans Proxmox
 WAN (wan)       -> vtnet0  -> v4/DHCP4: 10.138.60.141/24
 LAN (lan)       -> vtnet1  -> v4: 172.16.10.254/24
 DMZ (opt1)      -> vtnet2  -> v4: 172.16.80.254/24

 0) Logout (SSH only)                  9) pfTop
 1) Assign Interfaces                 10) Filter Logs
 2) Set interface(s) IP address       11) Restart webConfigurator
 3) Reset webConfigurator password    12) PHP shell + pfSense tools
 4) Reset to factory defaults         13) Update from console
 5) Reboot system                     14) Enable Secure Shell (sshd)
 6) Halt system                       15) Restore recent configuration
 7) Ping host                         16) Restart PHP-FPM
 8) Shell
  • 1) Assign InterfacesAssocie chaque carte réseau (vtnet0, vtnet1… dans Proxmox) à un rôle : WAN, LAN, OPT1. On peut y créer des VLAN sur une carte.
  • 2) Set interface(s) IP addressDonne l'adresse de chaque interface et propose d'activer un serveur DHCP dessus. Indispensable quand le LAN n'est pas en 192.168.1.0/24.
  • Adresse de l'interface webOn ouvre ensuite https://172.16.10.254 depuis un poste du LAN (identifiants par défaut : admin / pfsense, à changer immédiatement dans l'assistant).

5.2 Où trouver quoi

MenuRôle
Interfaces → AssignmentsAjouter une interface ou un VLAN, l'activer, le renommer, lui donner son adresse
Firewall → RulesLes règles, un onglet par interface (WAN, LAN, DMZ…), plus l'onglet Floating
Firewall → AliasesLes groupes d'adresses, de réseaux ou de ports réutilisés dans les règles
Firewall → NATPort Forward (redirections entrantes), Outbound (traduction des adresses internes en sortie)
Services → DHCP Server · DNS ResolverDistribuer les adresses et résoudre les noms pour chaque zone
Status → System Logs → FirewallLes paquets bloqués ou autorisés et journalisés
Diagnostics → States · Packet CaptureLa table d'états et la capture de paquets

pfSense peut porter plusieurs VLAN sur une seule carte, reliée à un trunk du commutateur : Interfaces → Assignments → VLANs, carte parente + numéro (par exemple vtnet1.80 pour la DMZ). C'est le même principe que le router-on-a-stick de la fiche B2-03 : le pare-feu devient la passerelle filtrante de chaque VLAN.

6. Écrire les règles avec des alias

Dans pfSense, chaque onglet de Firewall → Rules contient les règles appliquées aux paquets qui entrent par cette interface. Trois comportements par défaut sont à connaître :

  • sur le WAN, aucune règle : tout ce qui arrive d'Internet est bloqué ;
  • sur le LAN, une règle « Default allow LAN to any » autorise tout, plus une règle anti-lockout qui empêche de se couper soi-même l'accès à l'interface web ;
  • une nouvelle interface (DMZ, INVITES) n'a aucune règle : tout y est bloqué tant qu'on n'a rien ajouté.

Plutôt que de répéter des adresses dans dix règles, on crée des alias (Firewall → Aliases) : SRV_WEB = 172.16.80.10, PORTS_WEB = 80, 443, ADMINS = 172.16.99.20, RFC1918 = 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16. Si le serveur change d'adresse, on ne modifie que l'alias.

Firewall → Rules → DMZ · lues de haut en bas, la première qui correspond l'emporte ActionProtocoleSourceDestinationPortDescription ⛔ BlocktousDMZ netLAN net*Jamais de DMZ vers le LAN ✅ PassTCP/UDPDMZ netDMZ address53DNS du pare-feu ⛔ BlocktousDMZ netThis Firewall*Pas d'accès à pfSense ✅ PassTCPSRV_WEB! RFC1918PORTS_WEBMises à jour (Internet) (implicite) Blocktout le reste est bloqué par défaut → SRV-01 Un paquet de la DMZ vers SRV-01 (LAN) correspond dès la 1re ligne : il est bloqué, les suivantes ne sont pas lues.
La règle de blocage vers le LAN est placée en tête : aucune règle plus large en dessous ne pourra la contourner. ! RFC1918 (alias des réseaux privés, case Invert match) limite les mises à jour à Internet : ni le pare-feu, ni la gestion, ni les autres réseaux internes.

Sur le LAN, si « Default allow LAN to any » reste en premier, une règle « bloquer LAN vers DMZ en SSH » ajoutée en dessous ne sera jamais lue : le paquet a déjà été autorisé. Place toujours les règles les plus précises en haut, les plus générales en bas (glisser-déposer dans l'onglet, puis Save et Apply Changes).

7. NAT : sortir sur Internet et publier un serveur

pfSense fait aussi le NAT. En sortie (Outbound, mode automatique par défaut), il traduit les adresses privées du LAN et de la DMZ en son adresse WAN. En entrée, une redirection de port (Port Forward) envoie vers un serveur interne ce qui arrive sur un port de l'adresse publique : c'est ainsi qu'on publie le portail de la DMZ.

client Internet pfSense WAN 203.0.113.2DMZ .254 SRV-WEB172.16.80.10 → 203.0.113.2:443 Port Forward : WAN TCP 443 → SRV_WEB:443 203.0.113.2:443 ⇒ 172.16.80.10:443 → 172.16.80.10:443 règle WAN associée : Pass ← de 203.0.113.2 l'adresse privée du serveur n'apparaît jamais sur Internet
Redirection de port = NAT de destination ; NAT sortant = NAT de source. Les deux sont enregistrés dans la table d'états.

L'interface WAN de pfSense coche par défaut Block private networks et Block bogon networks : tout paquet arrivant du WAN avec une source privée (10.x, 172.16-31.x, 192.168.x) est jeté. Sur Internet, c'est une bonne protection. Mais au labo, ton « Internet » est le réseau du lycée, en adresses privées : décoche ces deux cases (Interfaces → WAN), sinon tes tests depuis la salle échouent.

8. Journaux, vérification et dépannage

Un pare-feu qui « ne laisse pas passer » se dépanne en lisant ses journaux : Status → System Logs → Firewall affiche chaque paquet bloqué (ou autorisé si la règle a l'option Log), avec l'interface, la source, la destination, le port et la règle responsable. La table d'états (Diagnostics → States) montre les connexions établies, et la capture (Diagnostics → Packet Capture) permet de vérifier qu'un paquet arrive bien sur une interface.

pfSense Status → System Logs → Firewall (vue simplifiée)
Action  Time             Interface  Rule                          Source              Destination          Proto
 ✕      Oct 14 10:02:11  DMZ        Jamais de DMZ vers le LAN     172.16.80.10:49812  172.16.50.10:445     TCP:S
 ✕      Oct 14 10:02:40  WAN        Default deny rule IPv4 (1000000103) 185.220.101.4:51544 203.0.113.2:22       TCP:S
 ✓      Oct 14 10:03:02  WAN        NAT Portail HTTPS             91.160.12.7:62110   172.16.80.10:443     TCP:S
  • Action✕ bloqué, ✓ autorisé (seulement si la règle journalise). Un blocage par « Default deny rule » signifie qu'aucune règle n'a autorisé le paquet.
  • Interface et règleL'interface d'entrée et la description de la règle qui a décidé : d'où l'intérêt des descriptions claires.
  • Source · Destination · ProtoAdresses et ports ; TCP:S = premier paquet d'une connexion (SYN). Une destination en port 445 (partage Windows) depuis la DMZ est un signal d'alerte.

Pour tester une règle : depuis la zone source, curl -I https://172.16.80.10 (Linux) ou Test-NetConnection 172.16.80.10 -Port 443 (PowerShell) indiquent si le port est joignable. Depuis l'extérieur, un balayage nmap -Pn -p 22,80,443 203.0.113.2 vérifie que seuls les ports prévus répondent.

8.1 Entraîne-toi : les tickets du support

Le pare-feu de Brocéliande Logistique est en service depuis une semaine. Six tickets arrivent : lis le message, observe le relevé, puis choisis la cause.

File d'attente du support6 tickets · un à la fois · l'explication s'affiche après ta réponse
Ticket n° 1De : technicienPriorité haute
« Je viens de créer l'interface DMZ et de brancher le serveur web. Il ne peut même pas faire ses mises à jour : apt update échoue. »
pfSense Firewall → Rules → DMZ
No rules are currently defined for this interface
All incoming connections on this interface will be blocked until pass rules are added.

Quelle est la cause ?

Cause : pfSense le dit lui-même : sans règle Pass, tout est bloqué sur une nouvelle interface. Correction : ajouter, dans l'ordre, la règle qui bloque DMZ → LAN, puis DNS vers le pare-feu et HTTP/HTTPS du serveur vers Internet (matrice des flux, lignes 5 et 6).

Ticket n° 2De : élève de SIO2, au laboPriorité moyenne
« J'ai créé la redirection de port 443 vers mon serveur web, la règle WAN associée existe, mais depuis un PC de la salle le site ne s'affiche pas. Les journaux montrent un blocage sur le WAN. »
pfSense journal
 ✕  WAN  Block private networks from WAN block 10/8   10.138.60.57:50122  172.16.80.10:443  TCP:S

Quelle est la cause ?

Cause : au labo, le « WAN » est le réseau du lycée, en adresses privées : la règle automatique « Block private networks » passe avant tout. Correction : Interfaces → WAN, décocher Block private networks et Block bogon networks (à laisser cochés sur un vrai accès Internet).

Ticket n° 3De : responsable sécuritéSécurité
« J'ai ajouté une règle qui interdit le SSH depuis le LAN vers la DMZ. Pourtant n'importe quel poste du LAN ouvre encore une session SSH sur le serveur web. »
pfSense Firewall → Rules → LAN
1  ✓ Pass   *    LAN net   *          *    Default allow LAN to any rule
2  ✕ Block  TCP  LAN net   DMZ net    22   LAN vers DMZ : pas de SSH

Pourquoi la règle 2 est-elle sans effet ?

Cause : première correspondance = décision. Correction : glisser la règle 2 au-dessus de la règle 1, Save, Apply Changes. Les sessions déjà ouvertes restent dans la table d'états : les supprimer dans Diagnostics → States pour tester.

Ticket n° 4Alerte de supervisionSécurité
« Depuis 3 h du matin, le journal du pare-feu se remplit de blocages venant du serveur web vers le réseau interne. »
pfSense journal
 ✕ DMZ  Jamais de DMZ vers le LAN  172.16.80.10:49812  172.16.50.10:445  TCP:S
 ✕ DMZ  Jamais de DMZ vers le LAN  172.16.80.10:49813  172.16.10.120:445 TCP:S
 ✕ DMZ  Jamais de DMZ vers le LAN  172.16.80.10:49814  172.16.10.121:3389 TCP:S

Que faut-il en conclure ?

Analyse : un serveur web n'a aucune raison de joindre des partages Windows (445) ou le bureau à distance (3389) : c'est un comportement d'attaquant qui cherche à rebondir. La DMZ a joué son rôle. Réaction : isoler le serveur, préserver les journaux et lancer la procédure de gestion d'incident (fiche B3-16).

Ticket n° 5De : directionPriorité moyenne
« Un consultant a branché un petit switch dans mon bureau pour y relier ses deux portables, sa station d'accueil et son imprimante. Depuis, plus rien ne marche sur cette prise. »
Cisco IOS SW1
%PM-4-ERR_DISABLE: psecure-violation error detected on Fa0/5,
putting Fa0/5 in err-disable state
SW1# show port-security interface fa0/5 | include Maximum|Violation
Maximum MAC Addresses      : 3
Violation Mode             : Shutdown

Quelle est la cause ?

Cause : c'est la protection voulue contre les équipements branchés sans autorisation. Correction : retirer le switch du consultant, puis interface fa0/5, shutdown, no shutdown pour réactiver le port. Si le besoin est légitime, on prévoit une prise dédiée, validée.

Ticket n° 6De : technicienPriorité haute
« J'ai activé le DHCP snooping sur SW1 pour les VLAN 10, 20 et 30. Depuis, plus aucun poste n'obtient d'adresse. »
Cisco IOS SW1
SW1# show ip dhcp snooping | include Interface|Gi0/1
Interface                  Trusted    Allow option    Rate limit (pps)
(aucune interface de confiance)

Quelle est la cause ?

Cause : avec le snooping, seuls les ports trusted peuvent faire passer des réponses DHCP (OFFER, ACK). Correction : interface g0/1 puis ip dhcp snooping trust (et sur le trunk vers SW2). Si le relais DHCP du routeur pose encore problème, ajouter no ip dhcp snooping information option.

9. Sécuriser l'accès au réseau : la prise murale

Le pare-feu protège les frontières entre zones ; il ne voit pas ce qui se passe à l'intérieur d'un VLAN. Un intrus qui branche un portable sur une prise libre est déjà dans le LAN. Les commutateurs Cisco offrent des protections de niveau 2, à activer sur les ports des postes.

ProtectionContre quoiPrincipe
Port-securityBranchement d'un appareil non autorisé, saturation de la table MACLimite le nombre d'adresses MAC par port, peut les mémoriser (sticky) ; en cas de dépassement : shutdown, restrict ou protect
DHCP snoopingFaux serveur DHCP (box branchée par erreur, attaquant)Seuls les ports « de confiance » peuvent envoyer des réponses DHCP ; le commutateur note qui a reçu quelle adresse
DAI (Dynamic ARP Inspection)Usurpation ARP (homme du milieu)Vérifie chaque réponse ARP par rapport à la table du DHCP snooping et jette les mensonges
802.1XAccès de toute personne qui trouve une priseLe port reste fermé tant que l'appareil ne s'est pas authentifié auprès d'un serveur RADIUS ; le serveur peut choisir le VLAN
SW1 PC-DIR box du visiteur vers SRV-01 (DHCP) Gi0/1 · trusted OFFER pirate IP 192.168.1.23 · GW 192.168.1.1le trafic part vers la box ! ✕ ACK SRV-01 IP 172.16.10.120 · GW .254
Le DHCP snooping distingue les ports de confiance (vers le vrai serveur) de tous les autres.
Cisco IOS SW1 · protections des ports des postes
SW1(config)# interface range fa0/1 - 16
SW1(config-if-range)# switchport port-security ! le port doit être en mode access
SW1(config-if-range)# switchport port-security maximum 3 ! poste + téléphone IP, vu dans les VLAN voix et données : 3 conseillé par Cisco
SW1(config-if-range)# switchport port-security mac-address sticky
SW1(config-if-range)# switchport port-security violation shutdown
SW1(config-if-range)# exit
SW1(config)# ip dhcp snooping
SW1(config)# ip dhcp snooping vlan 10,20,30
SW1(config)# ip arp inspection vlan 10,20,30 ! DAI, s'appuie sur la table du snooping
SW1(config)# interface range g0/1 - 2 ! vers la passerelle et vers SW2
SW1(config-if-range)# ip dhcp snooping trust
SW1(config-if-range)# ip arp inspection trust
SW1(config-if-range)# interface po1 ! EtherChannel vers SW2 (étape 5)
SW1(config-if)# ip dhcp snooping trust
SW1(config-if)# ip arp inspection trust
SW1(config-if)# do show ip dhcp snooping binding

L'attaquant envoie à PC-COMPTA des réponses ARP non sollicitées : « 172.16.20.254 est à mon adresse MAC ». PC-COMPTA envoie alors tout son trafic à l'attaquant, qui le lit puis le relaie au vrai routeur : c'est l'homme du milieu. La DAI bloque ces réponses, car l'adresse MAC annoncée ne correspond pas à ce que le DHCP snooping a enregistré.

Trois acteurs : le demandeur (le poste, son compte ou son certificat), l'authentificateur (le commutateur ou la borne Wi-Fi) et le serveur d'authentification RADIUS (NPS sous Windows Server, FreeRADIUS sous Linux). Le port n'ouvre que le trafic d'authentification (EAP) tant que RADIUS n'a pas répondu « accepté », et peut placer l'appareil dans le VLAN prévu. C'est la protection la plus forte, mais la plus lourde à déployer.

10. À l'examen et en entreprise

  • Documentation attendue : schéma des zones avec les interfaces du pare-feu, plan d'adressage, matrice des flux validée, export de la configuration de pfSense (Diagnostics → Backup & Restore).
  • Cahier de recette : pour chaque ligne de la matrice, un test qui doit réussir ou échouer, avec la commande et la trace dans les journaux.
  • Bonnes pratiques reprises par l'ANSSI : politique de refus par défaut, administration du pare-feu depuis une zone de gestion seulement, journaux conservés et centralisés (fiche B3-12), règles documentées et revues régulièrement, mises à jour du pare-feu.
  • En entreprise, on ajoute souvent deux pare-feu en haute disponibilité (CARP + pfsync), IDS/IPS Suricata (fiche B3-12), VPN (fiche B3-10).

11. L'essentiel

  1. Un VLAN cloisonne, un pare-feu filtre : il décide, flux par flux, selon une politique écrite.
  2. À états : le pare-feu mémorise les connexions autorisées, les réponses passent sans règle de retour.
  3. Politique par défaut : tout ce qui n'est pas autorisé est interdit (liste blanche).
  4. Une règle se place sur l'interface d'entrée du paquet ; la première règle qui correspond l'emporte.
  5. Zones : WAN (aucune confiance), DMZ (serveurs exposés), LAN, invités, gestion.
  6. DMZ → LAN interdit : un serveur exposé compromis ne mène nulle part.
  7. La matrice des flux (source, destination, service, décision, justification) précède toute configuration.
  8. pfSense : Firewall → Rules / Aliases / NAT ; une nouvelle interface bloque tout ; journaux dans Status → System Logs.
  9. Redirection de port = publier un serveur de la DMZ sur l'adresse publique, au port près.
  10. Au niveau 2 : port-security, DHCP snooping, DAI, et 802.1X pour fermer les prises aux inconnus.
Pare-feupfSense · zones Principeà états · refus par défaut1re règle qui correspond ZonesWAN · DMZ · LANinvités · gestion Concevoirmatrice des fluxau plus juste, justifié pfSenserègles par interfacealias · NAT · journaux Publierport forward → DMZjamais DMZ → LAN Niveau 2port-security · snoopingDAI · 802.1X
La fiche en une image : à refaire de mémoire, sur une feuille, avant de passer aux exercices.

Les commandes clés

Pour…Où ou quoi
Assigner et adresser les interfacesconsole : options 1 et 2 · Interfaces → Assignments
Écrire les règlesFirewall → Rules (onglet de l'interface d'entrée) · Firewall → Aliases
Publier un serveurFirewall → NAT → Port Forward avec règle associée
ContrôlerStatus → System Logs → Firewall · Diagnostics → States
Tester un portcurl -I https://172.16.80.10 · Test-NetConnection 172.16.80.10 -Port 443 · nmap -Pn -p 443
Port-security (Cisco)switchport port-security maximum 3 · … violation shutdown
Snooping et DAI (Cisco)ip dhcp snooping vlan 10 · ip dhcp snooping trust · ip arp inspection vlan 10

Tout cela tient sur une page : utilise le bouton Mémo à imprimer en haut de la fiche.

La pratiqueLe quiz noté pour vérifier tes acquis, les exercices à rendre à ton professeur, puis le TP au labo sur ton pare-feu pfSense.

12. Quiz noté

8 questions · 10 minutesRéponds à toutes les questions, puis valide. Seule ta première tentative est enregistrée : elle compte dans ton suivi. Ensuite, tu peux t'entraîner autant que tu veux.

1. Quelle politique par défaut recommande-t-on pour un pare-feu ?

2. Un poste du LAN ouvre un site web autorisé. Faut-il une règle sur l'interface WAN pour laisser revenir la réponse ?

3. Qu'est-ce qu'une DMZ ?

4. Sur l'onglet LAN, une règle « Pass LAN net vers any » est en 1re position et « Block LAN net vers DMZ net port 22 » en 2e. Un poste ouvre une session SSH vers la DMZ. Que se passe-t-il ?

5. Sur quelle interface place-t-on la règle qui autorise le serveur web de la DMZ à faire ses mises à jour sur Internet ?

6. À quoi sert une redirection de port (Port Forward) ?

7. Contre quelle menace le DHCP snooping protège-t-il ?

8. Un port configuré en port-security (maximum 3, violation shutdown) voit apparaître une 4e adresse MAC. Quel est son état ?

13. Exercices : à toi de répondre

Écris ta réponse sous chaque énoncé et envoie-la à ton professeur. Quand il l'a validée, le corrigé s'affiche à la place du cadenas ; s'il te la renvoie « à revoir », lis son commentaire et corrige.

Exercice 1 – Comprendre (SIO2)

Un collègue propose de remplacer pfSense par une simple ACL sur le routeur : « permit tcp 172.16.10.0 0.0.0.255 any eq 443 » en entrée du LAN. Explique ce qu'il faudrait ajouter pour que les réponses des sites web reviennent, et pourquoi cette solution est moins sûre qu'un pare-feu à états.

Le corrigé s'affichera ici dès que ton professeur aura validé ta réponse. Cherche d'abord par toi-même : c'est en se trompant qu'on retient.

Exercice 2 – Configurer (SIO2)

À partir des lignes 2, 3, 5 et 6 de la matrice des flux (partie 4), écris les règles des onglets LAN, GESTION et DMZ de pfSense, dans l'ordre, avec action, protocole, source, destination, port et description. Utilise les alias SRV_WEB, PORTS_WEB et ADMINS.

Le corrigé s'affichera ici dès que ton professeur aura validé ta réponse. Cherche d'abord par toi-même : c'est en se trompant qu'on retient.

Exercice 3 – Dépanner (SIO2)

Le portail est inaccessible depuis Internet. La redirection de port existe (WAN TCP 443 → SRV_WEB:443), mais la règle WAN associée a été supprimée par erreur. Que montrent les journaux ? Comment corriger proprement, et comment vérifier ?

Le corrigé s'affichera ici dès que ton professeur aura validé ta réponse. Cherche d'abord par toi-même : c'est en se trompant qu'on retient.

Exercice 4 – Concevoir (SIO2)

Brocéliande Logistique ajoute le Wi-Fi des visiteurs (VLAN 70) et la téléphonie IP (VLAN 40), et veut que pfSense devienne la passerelle filtrante de tous les VLAN à la place du routeur R1. Propose l'architecture (interfaces ou VLAN de pfSense, trunk), complète la matrice des flux pour ces deux zones et cite deux limites de cette solution.

Le corrigé s'affichera ici dès que ton professeur aura validé ta réponse. Cherche d'abord par toi-même : c'est en se trompant qu'on retient.

14. Au labo : un pare-feu pfSense avec une DMZ

Objectif

Sur ton pool Proxmox (page Mes serveurs et VM), tu mets en service un pfSense à trois interfaces, un serveur web Debian dans la DMZ et un poste Windows 11 dans le LAN. À la fin, le portail est joignable depuis la salle (le « WAN »), le LAN y accède en HTTPS, et la DMZ ne peut pas atteindre le LAN.

MachineRôleInterfaceAdresse
pfSensePare-feuWAN · vtnet0 (réseau du labo)DHCP du labo (10.138.x.x)
LAN · vtnet1172.16.10.254/24, DHCP .100 à .199
DMZ · vtnet2172.16.80.254/24
SRV-WEBDebian 13 + nginxDMZ172.16.80.10/24, passerelle .254
PC-LANWindows 11 ProLANDHCP (172.16.10.1xx)

Les ponts (vmbr) ou les VLAN Proxmox de chaque carte sont indiqués dans ta page « Mes serveurs et VM ». Vérifie, dans le matériel de chaque VM, que la bonne carte est sur le bon pont.

Ce que tu mets en place

  • pfSense à trois interfaces : WAN, LAN et DMZ.
  • Un serveur web en DMZ, publié par une redirection de port.
  • Des règles au plus juste, écrites avec des alias, dans le bon ordre.
  • Des preuves : tests et journaux dans le cahier de recette.

1 Assigner et adresser les interfaces à la console

Démarre pfSense. Option 1 : WAN = vtnet0, LAN = vtnet1, OPT1 = vtnet2. Option 2 : LAN en 172.16.10.254/24 avec un serveur DHCP de .100 à .199 ; OPT1 en 172.16.80.254/24, sans DHCP.

2 Terminer dans l'interface web

  1. Depuis PC-LAN (qui a reçu une adresse en .1xx), ouvre https://172.16.10.254, suis l'assistant et change le mot de passe admin.
  2. Interfaces → OPT1 : coche Enable, renomme-la DMZ, enregistre.
  3. Interfaces → WAN : décoche Block private networks et Block bogon networks (le WAN du labo est en adresses privées).
  4. Firewall → Aliases : SRV_WEB (Host) = 172.16.80.10, PORTS_WEB (Port) = 80, 443, RFC1918 (Network) = 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16.

3 Ouvrir les flux de la DMZ, puis installer le serveur web

Sur l'onglet Firewall → Rules → DMZ, crée dans cet ordre : Block DMZ net → LAN net (description « Jamais de DMZ vers le LAN », option Log cochée) ; Pass TCP/UDP DMZ net → DMZ address port 53 ; Block DMZ net → This Firewall ; Pass TCP SRV_WEB → RFC1918 avec Invert match coché, port PORTS_WEB (au labo, si le miroir Debian ou le proxy du lycée est en adresse privée, ajoute au-dessus une règle Pass vers lui). Puis, sur SRV-WEB :

Debian 13 SRV-WEB · /etc/network/interfaces puis installation
# dans /etc/network/interfaces (carte ens18) :
auto ens18
iface ens18 inet static
  address 172.16.80.10/24
  gateway 172.16.80.254
# echo "nameserver 172.16.80.254" > /etc/resolv.conf # DNS = résolveur de pfSense
# systemctl restart networking
# apt update && apt install -y nginx
# echo "Portail Broceliande - DMZ" > /var/www/html/index.html

4 Les règles du LAN et la publication

  1. Firewall → Rules → LAN, au-dessus de la règle par défaut : Pass TCP LAN net → SRV_WEB port PORTS_WEB, puis Block LAN net → DMZ net.
  2. Firewall → NAT → Port Forward : interface WAN, TCP, destination WAN address, port 80 (HTTP), redirection vers SRV_WEB port 80, Add associated filter rule. Sauvegarde et applique.

Vérifie que tu as bien compris où et comment écrire chaque élément : complète, puis contrôle avec ✓ ou Vérifier.

Onglet de la règle « serveur web → mises à jour » ›
Onglet de la règle « postes → portail » ›
Action de la 1re règle de la DMZ ›
Destination interne de la redirection ›
Menu des journaux du pare-feu ›

5 Tester et lire les journaux

  1. Depuis PC-LAN : Test-NetConnection 172.16.80.10 -Port 80 (réussi) puis Test-NetConnection 172.16.80.10 -Port 22 (échec attendu).
  2. Depuis SRV-WEB : ping -c 3 vers l'adresse de PC-LAN échoue ; repère la ligne bloquée dans Status → System Logs → Firewall (règle « Jamais de DMZ vers le LAN » : pense à cocher Log sur cette règle).
  3. Depuis un poste de la salle : ouvre http:// + l'adresse WAN de pfSense (visible sur la console) : la page « Portail Broceliande - DMZ » s'affiche.
  4. Fais une capture des règles de chaque onglet et de quelques lignes de journaux pour ton dossier.

6 Valider : le cahier de recette

N°TestCommande ou actionRésultat attenduOK
1Le LAN reçoit ses adressesipconfig sur PC-LAN172.16.10.1xx, passerelle .254
2Le LAN accède au portailTest-NetConnection 172.16.80.10 -Port 80TcpTestSucceeded : True
3Le LAN n'accède à rien d'autre en DMZTest-NetConnection 172.16.80.10 -Port 22False attendu
4La DMZ ne joint pas le LANping de SRV-WEB vers PC-LANÉchec, ligne bloquée dans le journal
5La DMZ fait ses mises à jourapt update sur SRV-WEBListes de paquets téléchargées
6Le portail est publiéNavigateur d'un poste de la salle vers l'adresse WANPage « Portail Broceliande - DMZ »
7Seul le port publié répondnmap -Pn -p 22,80,443 + adresse WAN, depuis la salle80 ouvert, 22 et 443 filtrés
Suis ta progressionConnecte-toi pour marquer les ressources comme terminées et retrouver ton avancement.
Se connecter