cybercursus

Le pare-feu : filtrer, autoriser, journaliser

11 min · Intermédiaire · 7 août 2026

Sommaire
  1. Filtrer : une liste de règles, évaluées dans l’ordre
  2. Autoriser : par exception, jamais par défaut
  3. Journaliser : la trace qui alimente la détection

Filtrer : une liste de règles, évaluées dans l’ordre

Un pare-feu compare chaque connexion à une liste de règles, dans l’ordre où elles sont écrites, et s’arrête à la première qui correspond. Ce détail, souvent sous-estimé, détermine le comportement réel bien plus que le contenu de chaque règle prise isolément.

python
import ipaddress

regles = [
  {"action": "autoriser", "source": "10.0.10.0/24", "port": 443},
  {"action": "autoriser", "source": "10.0.10.0/24", "port": 22},
  {"action": "refuser",   "source": "0.0.0.0/0",     "port": 22},
  {"action": "autoriser", "source": "0.0.0.0/0",     "port": 443},
]

def evaluer(regles, source_ip, port):
  source = ipaddress.ip_address(source_ip)
  for regle in regles:
      reseau = ipaddress.ip_network(regle["source"])
      if source in reseau and regle["port"] == port:
          return regle["action"]
  return "refuser (politique par defaut)"

tests = [
  ("10.0.10.5",   22),   # administrateur interne vers SSH
  ("203.0.113.9", 22),   # IP externe vers SSH
  ("203.0.113.9", 443),  # IP externe vers HTTPS
  ("203.0.113.9", 3389), # IP externe vers RDP, aucune regle ne le mentionne
]

for ip, port in tests:
  resultat = evaluer(regles, ip, port)
  print(f"{ip:15} -> port {port:5} : {resultat}")

La connexion RDP (port 3389) ne correspond à aucune règle explicite : elle tombe sur la politique par défaut, en toute fin de liste.

Autoriser : par exception, jamais par défaut

Danger

La dernière ligne, invisible dans la liste de règles elle-même, compte souvent plus que toutes les autres : que se passe-t-il quand rien ne correspond ? Un pare-feu correctement configuré refuse par défaut, et n’autorise que ce qui a été explicitement anticipé.

Journaliser : la trace qui alimente la détection

Chaque règle, en particulier celles qui refusent une connexion, peut journaliser l’évènement plutôt que de l’ignorer silencieusement. Ces journaux rejoignent directement ceux vus dans le cours sur la défense et la détection : une rafale de refus vers des ports différents, depuis une même source, est justement le pattern recherché au chapitre 5 de ce cours.

Comment un pare-feu détermine-t-il quelle règle s'applique à une connexion donnée ?
Pourquoi une politique par défaut de refus est-elle généralement préférée à une politique par défaut d'autorisation ?

Pour aller plus loin

Commentaires

Recherche