Renforcement de la sécurité des ports avec Iptables

Protection des services sensibles à l'aide de chaînes de vérification personnalisées.

Iptables est l'outil en ligne de commande standard pour gérer le pare-feu Netfilter sous Linux. Il permet un filtrage granulaire du trafic selon des critères spécifiques. La protection contre le scan de ports repose sur la constitution d'une « liste blanche » d'adresses IP de confiance pour les services restreints.

Concepts fondamentaux

Une gestion efficace du pare-feu s'appuie sur trois éléments clés :

  • Table : Un groupe de chaînes fonctionnelles (la table filter est active par défaut).
  • Chaîne (Chain) : Une séquence ordonnée de règles que les paquets doivent traverser (p. ex. INPUT pour le trafic entrant).
  • Règle (Rule) : Un ensemble de conditions et une action. Si un paquet correspond aux critères, une action telle que ACCEPT ou DROP est exécutée.

Mise en place d'une chaîne « antiscan » personnalisée

La création d'une chaîne antiscan dédiée est une bonne pratique pour centraliser la gestion des accès. Elle permet de séparer les restrictions propres à certains services de la chaîne INPUT principale.

1. Créer la chaîne personnalisée :

iptables -N antiscan

2. Ajouter les adresses IP de confiance à la liste blanche : Ajoutez les adresses IP autorisées à accéder aux ports restreints.

# Remplacez par les adresses IP réelles de l'administrateur ou du bureau
iptables -A antiscan -s 1.1.1.1 -j ACCEPT
iptables -A antiscan -s 2.2.2.2 -j ACCEPT

3. Bloquer tout autre trafic : La dernière règle de la chaîne garantit que les adresses IP non autorisées sont bloquées.

iptables -A antiscan -j DROP

4. Rediriger le trafic de ports spécifiques vers la chaîne antiscan : Le trafic ciblant des ports sensibles est redirigé vers la chaîne personnalisée pour vérification.

Pour les ports TCP (p. ex. bases de données, serveurs de messagerie, panneaux de contrôle) :

iptables -I INPUT -p tcp --match multiport --dports 25,3306,8083 -j antiscan

Pour les ports UDP (p. ex. SNMP, RPC) :

iptables -I INPUT -p udp --match multiport --dports 111,161 -j antiscan

Rendre les règles persistantes

Les configurations Iptables standard sont volatiles et sont effacées au redémarrage. Pour garantir leur persistance :

Debian / Ubuntu

iptables-save > /etc/iptables.rules
# Créer un script de démarrage réseau
echo -e '#!/bin/bash\niptables-restore < /etc/iptables.rules' > /etc/network/if-pre-up.d/iptablesup
chmod +x /etc/network/if-pre-up.d/iptablesup

Remarque

L'installation du paquet iptables-persistent est recommandée pour une gestion automatisée sur les distributions récentes.

Points d'attention

  • Ordre des règles : les règles sont traitées séquentiellement de haut en bas. Dès qu'une correspondance est trouvée, les règles suivantes ne sont plus évaluées.
  • Accès SSH : vérifiez que le port SSH (22 par défaut) n'est pas bloqué par inadvertance afin d'éviter toute perte d'accès distant.
  • Tests : la connectivité doit être vérifiée depuis une adresse IP de la liste blanche et depuis une adresse externe pour valider la logique du pare-feu.

Aide

Une question ou besoin d'un coup de main ? Écrivez-nous via le système de tickets — nous sommes toujours là pour vous aider !

Besoin d’aide?Nos ingénieurs vous aideront gratuitement pour n’importe quelle question en quelques minutesNous contacter