Ce guide présente comment le routage du trafic internet peut être assuré par des règles précises d’iptables sur Linux. Il cible les administrateurs et ingénieurs réseau qui souhaitent renforcer la sécurité réseau de leurs serveurs.
Après une présentation conceptuelle, des exemples concrets montreront la mise en œuvre des règles de filtrage et du NAT. Retenez d’abord ces points essentiels avant d’aborder les commandes et la persistance.
A retenir :
- Politique par défaut restrictive et listes d’accès minimales
- Filtrage par chaîne INPUT, FORWARD, OUTPUT pour contrôle précis
- NAT documenté, DNAT et SNAT pour publication et sortie
- Persistante des règles sauvegardée et restaurée au redémarrage
Iptables et routage du trafic internet sous Linux
Après ces éléments essentiels, examinons comment iptables s’intègre au routage du trafic internet sur une machine Linux. Cette mise en perspective aide à placer chaque règle au bon hook du noyau et à éviter des erreurs de logique.
Tables et chaînes pour le filtrage et le routage
Ce point relie la notion de tables au parcours des paquets au sein du noyau Linux et explique les hooks disponibles. Comprendre INPUT, FORWARD et OUTPUT clarifie où appliquer le contrôle d’accès et la gestion des paquets.
Chaîne
Table
Rôle
INPUT
filter
Contrôle les paquets destinés au pare-feu lui‑même
FORWARD
filter
Gère les paquets transitant par l’équipement
OUTPUT
filter
Filtre le trafic émis localement
PREROUTING / POSTROUTING
nat
DNAT avant routage, SNAT après routage
Selon netfilter.org, cette architecture sépare clairement traduction d’adresse et filtrage, ce qui améliore la lisibilité des règles. Comprendre cette matrice prépare la définition de règles ciblées et persistantes.
Commandes essentielles :
- sudo iptables -L -v -n pour lister les règles
- sudo iptables -A INPUT … pour ajouter une règle
- sudo iptables -D INPUT
pour supprimer une règle - sudo iptables -F pour effacer une chaîne
« J’ai sécurisé un VPS en appliquant une politique INPUT DROP et en autorisant SSH uniquement depuis un réseau connu »
Fatima Z.
Flux de paquets et points d’application des règles
Ce paragraphe situe le parcours d’un paquet sortant, entrant ou transitant et montre où appliquer DNAT ou SNAT. Le schéma mental PREROUTING → FORWARD → POSTROUTING évite souvent des règles mal placées.
Selon Ubuntu-fr, ces placements déterminent si une règle affecte une nouvelle connexion ou une session déjà établie. Comprendre ces flux réduit les erreurs opérationnelles.
Règles de filtrage, NAT et gestion des paquets avec iptables
Avec les flux clarifiés, passons aux mécanismes concrets de filtrage, de NAT et à la gestion des paquets par conntrack. Ces notions sont essentielles pour publier des services et contrôler l’accès au réseau.
Création de règles et modules de correspondance
Ce passage explique comment combiner sélecteurs et cibles avec -A, -p, -s, –dport et -j. L’usage de -m state ou –ctstate permet de limiter les règles aux connexions NEW ou ESTABLISHED.
Ports et services :
- 22 SSH accès administratif restreint
- 80 HTTP publication publique du site
- 443 HTTPS chiffrement obligatoire
- 53 DNS requêtes sortantes autorisées
Selon Hostinger, grouper les ports avec multiport simplifie les règles et réduit la surface d’erreur. Cette approche facilite aussi la maintenance à l’échelle.
Exemples pratiques pour filtrer et NATer
Ce point illustre des commandes courantes pour publier un service web et masquer un réseau local derrière une IP publique. Les exemples sont directement applicables à une passerelle Linux.
Exemple
Commande
But
Autoriser loopback
iptables -A INPUT -i lo -j ACCEPT
Communication locale protégée
Ouvrir SSH
iptables -A INPUT -p tcp –dport 22 -j ACCEPT
Administration distante
Publier HTTP
iptables -t nat -A PREROUTING -p tcp –dport 80 -j DNAT –to-destination 192.168.2.2
Redirection vers DMZ
MASQUERADE sortie
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
NAT sortant pour clients privés
« En déployant SNAT sur la passerelle, le réseau local a retrouvé un accès sortant stable »
Alexandre P.
Persistance, bonnes pratiques et contrôle d’accès du pare-feu iptables
Après la configuration et le NAT, abordons la persistance, le contrôle d’accès et les routines d’audit qui maintiennent un firewall fiable en production. Ces étapes évitent de perdre les règles au redémarrage et limitent les erreurs humaines.
Sauvegarde, restauration et automatisation des règles
Ce segment décrit iptables-save et iptables-restore ainsi que le paquet iptables-persistent pour automatiser le chargement des règles. Sauvegarder après chaque modification évite les régressions lors d’un redémarrage.
Sauvegarde recommandée :
- Exporter règles avec iptables-save vers /etc/iptables/rules.v4
- Restaurer avec iptables-restore au démarrage
- Installer iptables-persistent pour chargement automatique
- Conserver versions de configuration hors machine
« L’équipe a constaté une réduction des incidents réseaux après l’activation des règles »
Pauline M.
Audit, journaux et comportements à surveiller
Ce passage montre comment journaliser les tentatives bloquées et détecter l’usurpation d’IP en se basant sur des règles de logging ciblées. Le suivi des compteurs et des logs facilite les réponses rapides.
Selon netfilter.org, la combinaison conntrack et règles ESTABLISHED,RELATED réduit les règles nécessaires et limite les faux positifs. Selon Ubuntu-fr, toujours autoriser SSH avant d’appliquer une politique DROP pour éviter de se verrouiller.
« À mon avis, documenter les règles évite des erreurs critiques lors d’interventions »
Marc L.
Source : Hostinger, « Tutoriel Iptables pour VPS », Hostinger ; Netfilter.org, « Netfilter and iptables », netfilter.org ; Ubuntu-fr, « Iptables », wiki.ubuntu-fr.org.

