Leçon 1 / 6
Leçon 01 · pfSense/OPNsense

C'est quoi un firewall ?

Le rôle d'un pare-feu

Un firewall (pare-feu) est un dispositif — logiciel ou matériel — qui filtre le trafic réseau entrant et sortant selon un ensemble de règles. Il se place entre deux zones réseau (typiquement ton réseau local et internet) et décide quels paquets passent et lesquels sont bloqués.

C'est le gardien de ta porte d'entrée réseau. Sans lui, n'importe quel trafic provenant d'internet peut tenter de joindre tes machines. Avec lui, seul ce que tu autorises explicitement entre ou sort.

💡

Un firewall travaille sur des règles : chaque règle définit une condition (source, destination, port, protocole) et une action (autoriser, bloquer, rejeter). Les règles sont évaluées dans l'ordre — la première qui correspond s'applique.

// Schéma simplifié d'un firewall

Internet  ──→  [ FIREWALL ]  ──→  Réseau local (LAN)
               ↑
        Règles : autoriser / bloquer
        - Port 443 (HTTPS) → autorisé
        - Port 23 (Telnet) → bloqué
        - Tout le reste   → bloqué par défaut

Stateless vs Stateful

Il existe deux grandes familles de firewalls selon leur façon d'analyser le trafic :

Pare-feu stateless (sans état)

Un firewall stateless examine chaque paquet de façon indépendante, sans tenir compte du contexte. Il applique ses règles paquet par paquet, sans savoir si ce paquet fait partie d'une connexion déjà établie.

Problème : il est facile de le tromper en forgeant un paquet qui ressemble à une réponse légitime. Les ACL (Access Control Lists) des vieux routeurs Cisco fonctionnaient ainsi.

Pare-feu stateful (avec état)

Un firewall stateful maintient une table d'états — une liste de toutes les connexions actives. Quand un paquet arrive, il vérifie s'il appartient à une connexion connue et légitime. Les paquets orphelins (sans connexion correspondante) sont rejetés.

C'est le standard moderne. pfSense et OPNsense sont tous les deux des firewalls stateful, basés sur pf (Packet Filter), le moteur de FreeBSD.

Pourquoi le stateful est supérieur : il comprend le contexte d'une connexion TCP (SYN → SYN-ACK → ACK). Un paquet entrant qui ne correspond à aucune connexion initiée depuis ton LAN est automatiquement rejeté, même si son port est autorisé. C'est une protection implicite puissante.

// Table d'états — exemple

Source            Destination       Proto  État
192.168.1.10:52341  93.184.216.34:443   TCP    ESTABLISHED
192.168.1.12:55012  8.8.8.8:53          UDP    SINGLE
192.168.1.10:52399  185.12.4.1:443      TCP    TIME_WAIT

→ Un paquet entrant sans entrée dans cette table = rejeté.

Niveaux de pare-feu

Les firewalls existent à deux niveaux distincts, complémentaires et non substituables :

Niveau hôte

Chaque machine possède son propre pare-feu local. Sous Linux c'est iptables (ancien) ou nftables (moderne), sous Windows c'est le pare-feu Windows Defender, sous macOS c'est pf. Il protège uniquement la machine elle-même.

Niveau réseau (appliance)

Un firewall réseau se place entre des zones. Il protège tous les appareils derrière lui, même ceux qui n'ont aucun pare-feu local. C'est là que pfSense et OPNsense interviennent — ils jouent le rôle de routeur + firewall pour tout un réseau.

⚠️

Un firewall réseau ne remplace pas les firewalls hôtes. La stratégie défense en profondeur consiste à cumuler les deux : si un attaquant franchit la périphérie, les firewalls locaux restent une dernière ligne de défense.

pfSense vs OPNsense

Ces deux distributions sont les solutions open source de référence pour un firewall réseau professionnel. Elles partagent la même base technique mais ont des histoires différentes.

pfSense

Créé en 2004, basé sur FreeBSD et le moteur pf. Développé par Netgate, qui en propose aussi des appliances matérielles. La version communautaire (CE) est gratuite. pfSense Plus est la version commerciale. Interface très mature, énorme communauté, documentation abondante.

OPNsense

Fork de pfSense créé en 2015 par Deciso, suite à des désaccords sur la gouvernance open source. OPNsense a opté pour une philosophie plus transparente, avec des mises à jour hebdomadaires, une interface plus moderne (Bootstrap), et une architecture de plugins mieux structurée. Il intègre nativement Zenarmor (IDS/IPS) et WireGuard.

🔀

Lequel choisir ? Pour un homelab ou une nouvelle installation, OPNsense est recommandé en 2024 : mises à jour plus fréquentes, interface plus claire, meilleure intégration des fonctions modernes (WireGuard, Zenarmor). pfSense reste excellent si tu trouves plus de ressources sur ton cas d'usage spécifique ou si tu utilises du matériel Netgate officiel.

// Comparatif rapide

                  pfSense CE       OPNsense
Base OS           FreeBSD          FreeBSD
Moteur firewall   pf               pf
Interface         Ancienne/stable  Moderne (Bootstrap)
Mises à jour      Trimestrielles   Hebdomadaires
WireGuard natif   Non (plugin)     Oui
IDS/IPS           Snort/Suricata   Zenarmor + Suricata
Licence           Apache 2.0       BSD 2-Clause
Société           Netgate          Deciso

Cas d'usage

pfSense et OPNsense s'adaptent à de nombreux contextes :

  • Homelab : remplacer la box opérateur basique par un vrai routeur/firewall. Segmentation réseau (VLAN IoT, invités, serveurs), VPN entrant, règles granulaires.
  • PME : remplacer un UTM propriétaire coûteux (Fortinet, SonicWall) par une solution open source sur mini-PC. Économies importantes, flexibilité totale.
  • Routeur domestique avancé : QoS (priorisation du trafic), blocage publicitaire DNS (pfBlockerNG / Unbound), surveillance du trafic, failover multi-WAN.
  • Lab de sécurité : apprendre les concepts réseau avancés dans un environnement contrôlé (IDS, honeypots, capture de trafic).

Ce qu'un firewall ne protège pas

Un firewall est puissant mais ne fait pas tout. Il est important de comprendre ses limites :

  • Trafic chiffré (HTTPS) : un firewall standard ne peut pas inspecter le contenu d'une connexion TLS. Il voit la destination et le port, pas les données. L'inspection SSL/TLS est possible mais complexe (man-in-the-middle sur le réseau local).
  • Zero-day : une faille inconnue dans une application autorisée passe à travers le firewall sans être détectée. Un IDS/IPS complète le firewall pour ce cas.
  • Menaces internes (insider threats) : un utilisateur malveillant sur ton LAN peut faire beaucoup de dégâts si la segmentation réseau est insuffisante.
  • Phishing et ingénierie sociale : si un utilisateur télécharge volontairement un malware via HTTPS, le firewall ne bloque pas ce téléchargement (sauf DNS filtering).
⚠️

Un firewall protège le périmètre réseau. Il ne protège pas contre les erreurs humaines, les logiciels vulnérables, ou les attaques qui passent par des canaux autorisés. La sécurité réseau est une stratégie multicouche.

Matériel requis

Pour faire tourner pfSense ou OPNsense, tu as plusieurs options selon ton budget et ton contexte :

Appliances dédiées

  • Netgate (pfSense officiel) : gamme 1100, 2100, 4200. Matériel certifié, support inclus. À partir de ~200€. Idéal en production professionnelle.
  • Protectli Vault : mini-PC x86 avec 2 à 6 ports Intel NIC. Très populaire en homelab. Fanless, compact. Modèles VP2420, FW4B. À partir de ~180€.
  • PC Engines APU2 : plateforme AMD embarquée très utilisée. 3 ports GbE, carte SIM optionnelle. Robuste, low-power (~6W). Plus difficile à trouver neuf.

Virtualisation (Proxmox)

Dans un homelab sous Proxmox, pfSense/OPNsense tourne parfaitement en VM avec quelques contraintes : il faut des cartes réseau dédiées (passthrough PCIe ou NICs supplémentaires) pour séparer WAN et LAN. Une VM avec 1 vCPU et 1 Go de RAM suffit pour un usage domestique.

🖥️

Configuration minimale VM : 1 vCPU, 1 Go RAM, 8 Go disque, 2 interfaces réseau (WAN + LAN). Pour ajouter IDS/IPS (Suricata/Zenarmor) : 2 vCPU et 2-4 Go RAM recommandés.

// À retenir
  • Un firewall filtre le trafic selon des règles : source, destination, port, protocole.
  • Stateful = maintient une table des connexions actives. Bien supérieur au stateless.
  • Deux niveaux : hôte (iptables/nftables) et réseau (pfSense/OPNsense).
  • OPNsense recommandé pour les nouveaux projets : mises à jour fréquentes, interface moderne.
  • Matériel : mini-PC Protectli, APU2, ou VM sous Proxmox.
  • Un firewall ne protège pas contre le chiffrement applicatif, les zero-day, ni les menaces internes.