Malmoosk

← Tous les projets

Linux iptables

Contactez-moi

iptables est l’interface historique de configuration du pare-feu du noyau Linux : elle permet de définir des règles de filtrage, de NAT et de journalisation du trafic réseau, organisées en tables et chaînes (INPUT, OUTPUT, FORWARD…). C’est l’outil de base pour sécuriser un serveur exposé, limiter les ports ouverts, ou router du trafic entre interfaces.

Historique

iptables apparaît avec le noyau Linux 2.4 en 1999, en remplacement d’ipchains, en s’appuyant sur le framework de filtrage réseau Netfilter introduit dans le noyau. Il devient pendant plus de quinze ans la méthode standard de pare-feu sous Linux, avant que le projet Netfilter ne développe nftables (disponible depuis le noyau 3.13, 2014) comme successeur, avec une syntaxe unifiée IPv4/IPv6 et de meilleures performances.

Avantages des versions récentes

Bannissement par pays avec ipset

Pour bloquer des pays entiers sans alourdir le pare-feu, j’utilise des listes ipset. Un ipset est une structure du noyau qui stocke des milliers de plages d’adresses IP dans une table de hachage : une seule règle iptables interroge la liste, avec un temps de recherche quasi constant, là où des milliers de règles individuelles ralentiraient chaque paquet.

Le trafic indésirable est ainsi écarté dès le noyau, avant même d’atteindre le reverse proxy ou l’application.

Bannissement des scans OWASP avec Fail2ban et Coraza

Le filtrage par pays ne suffit pas : un scanner de vulnérabilités peut venir de n’importe où. Une seconde couche réagit au comportement :

  1. Coraza, le WAF (moteur compatible ModSecurity et OWASP Core Rule Set), analyse chaque requête et détecte les signatures d’attaque : injections SQL, XSS, traversée de répertoires, sondes de scanners.
  2. Chaque requête bloquée est écrite dans le journal Coraza.
  3. Fail2ban surveille ce journal avec un filtre dédié : une IP qui déclenche plusieurs règles OWASP en peu de temps est identifiée comme un scan.
  4. La « jail » bannit l’adresse pendant 1 heure en ajoutant une règle de rejet dans iptables. Le ban expire seul, ce qui limite l’impact d’un faux positif.
pays bannis → DROP Internet visiteurs + scanners iptables + ipset listes par pays Reverse proxy WAF Coraza (OWASP) Application trafic sain Journal Coraza requêtes bloquées Fail2ban filtre scans OWASP attaque détectée ban 1 h

Mon expertise

Je protège mes serveurs en deux couches complémentaires :

Paquet entrant INPUT FORWARD Processus local Autre interface
Contactez-moi