Aller au contenu
Réussir mon BTS SIO

Tape une notion, une commande ou le nom d'une épreuve.

Par exemple

Chapitre 217 minAvancé

Pare-feu : fonctionnement et règles de filtrage

Par Josselyn C., prof de BTS SIO. Mis à jour le .

À la fin de ce chapitre, tu sauras

  • expliquer la différence entre filtrage sans état et avec état ;
  • écrire un tableau de règles de filtrage juste, dans le bon ordre ;
  • publier un service avec une redirection de port et sa règle ;
  • configurer le pare-feu local d'un serveur Linux ou Windows.

4 exercices corrigés

Un pare-feu (firewall) est un équipement ou un logiciel qui laisse passer ou bloque le trafic réseau entre des zones, selon des règles écrites par l'administrateur : adresse source, adresse de destination, protocole, port, et parfois application ou utilisateur. Ce chapitre explique comment il décide, la différence entre filtrage sans état et avec état, et comment écrire un tableau de règles de filtrage juste, l'exercice le plus fréquent de l'E7 SISR.

À quoi sert un pare-feu

Le pare-feu se place à un point de passage obligé : entre le réseau de l'entreprise et Internet (pare-feu périmétrique), entre deux zones internes (pare-feu interne, par exemple devant les serveurs), ou sur la machine elle-même (pare-feu local de Windows ou de Linux). Il applique une politique de filtrage : la liste des flux autorisés entre les zones.

Il ne fait pas tout. Un pare-feu qui autorise HTTPS vers Internet laisse passer un rançongiciel téléchargé en HTTPS ; il ne voit rien du trafic entre deux postes branchés sur le même switch ; il ne corrige pas une faille du serveur web qu'il expose. C'est une couche de la défense en profondeur, pas la défense entière.

Les types de pare-feu

TypeCe qu'il regardeExemples
Filtrage sans état (stateless, liste de contrôle d'accès)Chaque paquet isolément : adresses, protocole, ports. Il ne sait pas si le paquet appartient à une connexion déjà acceptéeACL d'un routeur ou d'un switch de niveau 3
Filtrage avec état (stateful)Les connexions : il garde une table d'états et accepte automatiquement les réponses d'une connexion autoriséepfSense, OPNsense, nftables sous Linux, pare-feu Windows
Nouvelle génération (NGFW, UTM)En plus : l'application (« Teams », « Dropbox »), l'utilisateur de l'annuaire, la réputation des sites, avec IPS, filtrage web et inspection TLS intégrésStormshield, Fortinet FortiGate, Palo Alto, Sophos
Pare-feu applicatif web (WAF)Le contenu des requêtes HTTP vers un site, pour bloquer les injections et autres attaques applicativesModSecurity, services des hébergeurs

Comment le pare-feu décide

Pour chaque nouvelle connexion, le pare-feu parcourt ses règles de haut en bas et applique la première qui correspond ; les suivantes sont ignorées. Si aucune ne correspond, il applique la politique par défaut.

  • Politique par défaut : tout refuser. C'est la seule acceptable. Tout ce qui n'est pas explicitement autorisé est bloqué. pfSense (comme OPNsense) bloque par défaut tout trafic entrant sur une interface qui n'a pas de règle.
  • Ordre des règles. Une règle large placée trop haut masque les règles plus précises en dessous. Les règles d'exception (un refus précis, une autorisation précise) vont avant les règles générales.
  • Refuser ou rejeter. Bloquer (drop) jette le paquet sans réponse : l'émetteur attend jusqu'au délai d'expiration. Rejeter (reject) renvoie un refus immédiat (TCP RST ou message ICMP). On bloque en général côté Internet, pour ne rien révéler, et on rejette côté interne, pour que les utilisateurs aient un message d'erreur rapide.
  • Journaliser. Les refus importants sont journalisés : c'est là qu'on repère un balayage de ports ou une machine compromise qui cherche à joindre l'extérieur.

Écrire une règle de filtrage

Une règle se lit comme une phrase : « sur telle interface, autoriser (ou bloquer) le trafic de telle source vers telle destination, pour tel protocole et tel port ». Les sujets demandent un tableau de cette forme (sujet 2026, question B2.3 du sujet 2025) :

N°InterfaceSourcePort sourceDestinationPort destinationProtocoleActionCommentaire
1POSTES192.168.10.64/26*192.168.10.17753UDP, TCPAutoriserPostes vers le DNS interne
2POSTES192.168.10.64/26**80, 443TCPAutoriserNavigation web des postes
3POSTES*****BloquerRefus explicite, journalisé
4SERVEURS192.168.10.177**53UDP, TCPAutoriserLe DNS interne résout les noms d'Internet

Chez Sorbier Logistique, chaque VLAN arrive sur sa propre interface du pare-feu (POSTES, SERVEURS, DMZ…), comme tu le verras au chapitre 3 : les règles d'une interface filtrent le trafic qui entre par elle, donc celui dont la source est dans ce VLAN.

Quelques règles d'écriture qui évitent la plupart des erreurs :

  • Le port source vaut presque toujours *. Le client choisit un port éphémère au hasard pour chaque connexion : entre 49152 et 65535 sous Windows (la plage dynamique de l'IANA), entre 32768 et 60999 par défaut sous Linux. Seul le port de destination, celui du service, est connu.
  • La source et la destination sont aussi précises que possible : un réseau (192.168.10.64/26) plutôt que any, une adresse de serveur plutôt qu'un réseau.
  • Le protocole de transport est indiqué : DNS utilise UDP et TCP, HTTPS utilise TCP (et UDP 443 pour HTTP/3, à décider explicitement).
  • L'interface est celle où le trafic entre dans le pare-feu, pour pfSense (comme pour OPNsense).
  • La dernière règle est un refus explicite, même si la politique par défaut refuse déjà : elle rend la politique lisible et permet de journaliser.

Les ports à connaître

ServicePortTransportRemarque de sécurité
SSH22TCPAdministration à distance ; jamais ouvert à tout Internet
SMTP25TCPÉchange entre serveurs de messagerie
Soumission de courriel587 (465 en TLS implicite)TCPEnvoi par les clients, authentifié et chiffré
DNS53UDP et TCPLes postes ne devraient interroger que le DNS interne
DHCP67 (serveur), 68 (client)UDPReste dans le réseau local
HTTP, HTTPS80, 443TCP (et UDP 443 pour HTTP/3)HTTP seul ne sert plus qu'à rediriger vers HTTPS
Kerberos88TCP et UDPAuthentification Active Directory
NTP123UDPSynchronisation de l'heure, indispensable aux journaux
SNMP, traps SNMP161, 162UDPSupervision ; SNMPv3 obligatoire (chapitre 5)
LDAP, LDAPS389, 636TCPAnnuaire ; préférer LDAPS, chiffré
SMB445TCPPartages Windows ; jamais exposé à Internet
Syslog514 (UDP), 6514 (TLS)UDP, TCPEnvoi des journaux vers un collecteur
IKE, IPsec NAT-T500, 4500UDPVPN IPsec (chapitre 7)
OpenVPN1194UDP (par défaut)VPN
RADIUS1812, 1813UDPAuthentification 802.1X (chapitre 8)
RDP3389TCPBureau à distance ; jamais exposé à Internet
WireGuard51820UDP (par défaut)VPN

Le rappel sur TCP, UDP et la notion de port est dans le cours Réseaux fondamentaux.

De la matrice des flux aux règles

On n'écrit pas des règles au fil de l'eau : on part d'une matrice des flux, un tableau qui dit, pour chaque couple de zones, quels flux sont autorisés et pourquoi. Chaque case non vide donne une ou plusieurs règles ; une case vide signifie « refusé ».

Depuis ↓ / vers →InternetDMZServeursPostes
Internet—HTTPS vers le serveur webrienrien
DMZDNS, mises à jour—rien (ou un flux précis vers une base)rien
ServeursDNS, mises à jourrien—rien
PostesHTTP, HTTPSHTTPSDNS, Kerberos, LDAP, SMB, application de gestion—

Cette matrice est celle de Sorbier Logistique, que tu retrouves au chapitre 3 avec ses adresses. Elle se lit ligne par ligne : la ligne « Internet » ne contient qu'un seul flux, vers la DMZ. Aucun flux ne va d'Internet vers les postes ou les serveurs : c'est tout l'intérêt de la DMZ.

NAT et redirection de port

Le réseau interne utilise des adresses privées, non routées sur Internet. Le pare-feu fait donc aussi de la traduction d'adresses (NAT) :

  • NAT source (ou masquerading) : les postes sortent sur Internet avec l'adresse publique du pare-feu (203.0.113.17 chez Sorbier). C'est automatique sur pfSense et OPNsense.
  • NAT de destination (redirection de port, port forwarding) : une connexion qui arrive sur l'adresse publique, port 443, est redirigée vers le serveur web de la DMZ (192.168.10.225, port 443).

Une redirection de port ne suffit pas : il faut aussi une règle de filtrage qui autorise le flux. pfSense et OPNsense proposent de créer cette règle associée automatiquement. Dans un tableau de réponse, écris les deux : la redirection (adresse et port publics vers adresse et port internes) et la règle (Internet vers 192.168.10.225, TCP 443, autoriser).

Le pare-feu local d'un serveur

Le pare-feu périmétrique ne voit pas le trafic entre deux machines d'une même zone. Le pare-feu local de chaque serveur complète le dispositif : il n'accepte que les flux prévus, même depuis une machine voisine.

Sous Linux (Debian 13), on utilise nftables. Voici le jeu de règles d'un serveur web de la DMZ qui n'accepte que HTTPS depuis partout, SSH depuis le réseau d'administration, et le ping limité. Il s'enregistre dans /etc/nftables.conf et s'active avec systemctl enable --now nftables :

bash
#!/usr/sbin/nft -f
flush ruleset

table inet filtre {
  chain entree {
    type filter hook input priority 0; policy drop;

    ct state established,related accept   # réponses des connexions acceptées
    ct state invalid drop
    iif "lo" accept                         # trafic local de la machine

    tcp dport 443 accept                    # HTTPS pour tout le monde
    ip saddr 192.168.10.208/28 tcp dport 22 accept   # SSH depuis le réseau d'administration
    icmp type echo-request limit rate 5/second accept
    meta l4proto ipv6-icmp accept           # indispensable au fonctionnement d'IPv6

    log prefix "nft-refus " counter         # journalise ce qui va être refusé
  }
}

La politique drop de la chaîne refuse tout ce qui n'a pas été accepté plus haut. nft list ruleset affiche les règles chargées, et les compteurs montrent combien de paquets chacune a traités.

Sous Windows Server, le pare-feu Windows Defender se règle par stratégie de groupe ou en PowerShell :

powershell
New-NetFirewallRule -DisplayName "HTTPS entrant" -Direction Inbound -Protocol TCP -LocalPort 443 -Action Allow
Get-NetFirewallProfile | Select-Object Name, Enabled, DefaultInboundAction

Les erreurs fréquentes dans un tableau de règles

ErreurPourquoi c'est fauxCorrection
Une règle de retour pour chaque fluxInutile sur un pare-feu avec état, et dangereuxUne seule règle, dans le sens d'ouverture
Port source 443 au lieu du port destinationLe client utilise un port éphémèrePort source *, port destination 443
Règle générale avant l'exceptionLa première règle qui correspond s'applique, l'exception n'est jamais lueExceptions en haut
DNS oubliéLes postes ne résolvent plus aucun nom, la navigation « ne marche pas »Autoriser DNS vers le résolveur interne seulement
ICMP entièrement bloquéLe diagnostic devient impossible et certaines connexions échouent (découverte de la taille maximale des paquets)Autoriser les messages ICMP utiles, limiter le ping
IPv6 ignoréLes postes ont souvent une adresse IPv6 : des flux passent sans être filtrésÉcrire aussi les règles IPv6, ou désactiver IPv6 proprement

Exercices

Exercice 1 sur 4 Avec état ou sans état ? Réussi À revoir

Un administrateur a écrit ces deux règles sur un pare-feu pfSense (avec état) :

N°InterfaceSourcePort sourceDestinationPort destinationProtocoleAction
1POSTES192.168.10.64/26**443TCPAutoriser
2WAN*443192.168.10.64/26*TCPAutoriser
  1. À quoi sert la règle 2 dans l'esprit de l'administrateur ?
  2. Est-elle nécessaire ? Est-elle dangereuse ? Justifie.
Voir la réponseMasquer la réponse de l'exercice 1
  1. Il pense devoir autoriser les réponses des sites web vers les postes.
  2. Elle est inutile : le pare-feu garde l'état des connexions ouvertes par la règle 1 et laisse passer leurs réponses automatiquement. Elle est dangereuse : n'importe quelle machine d'Internet peut ouvrir une connexion vers n'importe quel port d'un poste en utilisant 443 comme port source, ce qu'elle choisit librement. (Ici, le NAT limite en partie le risque, mais on ne compte pas sur le NAT pour filtrer.) Il faut la supprimer.

Tu avais trouvé ?

Exercice 2 sur 4 L'ordre des règles Réussi À revoir

Sur l'interface POSTES, on trouve, dans cet ordre :

N°SourceDestinationPort destinationProtocoleAction
1192.168.10.64/26***Autoriser
2192.168.10.64/26*445TCPBloquer
3****Bloquer
  1. Un poste peut-il joindre un partage SMB sur Internet ? Pourquoi ?
  2. Corrige le tableau pour que les postes aillent sur le web (HTTP, HTTPS) et utilisent le DNS interne 192.168.10.177, et rien d'autre vers l'extérieur.
Voir la réponseMasquer la réponse de l'exercice 2
  1. Oui. La règle 1 correspond à tout le trafic des postes, elle s'applique en premier et la règle 2 n'est jamais lue.
  2. Par exemple :
N°SourceDestinationPort destinationProtocoleAction
1192.168.10.64/26192.168.10.17753UDP, TCPAutoriser
2192.168.10.64/26*80, 443TCPAutoriser
3****Bloquer (journaliser)

SMB vers Internet est alors refusé par la règle 3, sans règle particulière. Si l'on veut voir ces tentatives dans les journaux, on peut ajouter avant la règle 3 un refus explicite du port 445 avec journalisation.

Tu avais trouvé ?

Exercice 3 sur 4 Publier le site de suivi des livraisons Réussi À revoir

Sorbier publie son site de suivi des livraisons, hébergé sur 192.168.10.225 dans la DMZ, sur son adresse publique 203.0.113.17, en HTTPS. Le site doit aussi rediriger HTTP vers HTTPS.

  1. Écris la ou les redirections de port.
  2. Écris les règles de filtrage sur l'interface WAN.
  3. Un collègue propose de rediriger aussi le port 22 pour administrer le serveur de chez lui. Que lui réponds-tu ?
Voir la réponseMasquer la réponse de l'exercice 3
  1. Redirections (NAT de destination) : 203.0.113.17 TCP 443 → 192.168.10.225 TCP 443 ; 203.0.113.17 TCP 80 → 192.168.10.225 TCP 80.
  2. Règles sur WAN :
N°SourcePort sourceDestinationPort destinationProtocoleAction
1**192.168.10.225443TCPAutoriser
2**192.168.10.22580TCPAutoriser
3*****Bloquer

(Sur pfSense, la règle WAN désigne l'adresse interne de destination, après traduction.)

  1. Non : un port SSH exposé est testé par des robots en quelques minutes, et une faille ou un mot de passe faible suffit pour entrer. Il doit d'abord se connecter au VPN de l'entreprise, puis administrer le serveur depuis le réseau d'administration ou un bastion.

Tu avais trouvé ?

Exercice 4 sur 4 Trouver les erreurs Réussi À revoir

Voici les règles proposées par un stagiaire pour que les postes (192.168.10.64/26) consultent l'application de gestion en HTTPS sur 192.168.10.179, à travers un pare-feu avec état :

N°SourcePort sourceDestinationPort destinationProtocoleAction
1192.168.10.64/26443192.168.10.179*TCPAutoriser
2192.168.10.179*192.168.10.64/26443TCPAutoriser
3****UDPAutoriser

Relève les trois erreurs et écris la règle correcte.

Voir la réponseMasquer la réponse de l'exercice 4
  • Règle 1 : les ports sont inversés. Le port source est éphémère (*) ; c'est le port de destination qui vaut 443.
  • Règle 2 : règle de retour inutile sur un pare-feu avec état, et fausse de surcroît (elle autorise le serveur à ouvrir des connexions vers le port 443 des postes).
  • Règle 3 : autoriser tout UDP de partout vers partout ouvre DNS, SNMP, TFTP et bien d'autres sans contrôle.
  • Règle correcte, suivie d'un refus final :
N°SourcePort sourceDestinationPort destinationProtocoleAction
1192.168.10.64/26*192.168.10.179443TCPAutoriser
2*****Bloquer

Tu avais trouvé ?

Chapitre terminé !

Fais les 4 exercices avant de passer à la suite : c'est en t'entraînant que tout se fixe.

chapitres
–
de série
–
du cours
–
Chapitre suivant : DMZ, VLAN et segmentation du réseauRevoir le sommaire du cours