Filtrage réseau avec netfilter/iptables

Philippe Latu

inetdoc.net
Enseignant - Chargé de mission Systèmes & Réseaux
IUT - Université Toulouse III - Paul Sabatier

Résumé

Étude du filtrage réseau dans le contexte d'un routeur central (hub) connecté à un routeur d'agence (spoke) via un lien WAN. Comme dans les autres supports de travaux pratiques de cette série, on assimile ces configurations types à des interconnexions entre réseaux locaux et réseaux étendus. Les questions de ce support sont présentées comme une introduction pas à pas au filtrage réseau. On débute avec les outils, on poursuit avec les fonctions de suivi de communication (stateful inspection) sur une interface, puis on ajoute à ce filtrage les fonctions de traduction d'adresse (NAT).


1. Copyright et Licence

Copyright (c) 2000,2017 Philippe Latu.
Permission is granted to copy, distribute and/or modify this document under the
terms of the GNU Free Documentation License, Version 1.3 or any later version
published by the Free Software Foundation; with no Invariant Sections, no
Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included
in the section entitled "GNU Free Documentation License".
Copyright (c) 2000,2017 Philippe Latu.
Permission est accordée de copier, distribuer et/ou modifier ce document selon
les termes de la Licence de Documentation Libre GNU (GNU Free Documentation
License), version 1.3 ou toute version ultérieure publiée par la Free Software
Foundation ; sans Sections Invariables ; sans Texte de Première de Couverture,
et sans Texte de Quatrième de Couverture. Une copie de la présente Licence est
incluse dans la section intitulée « Licence de Documentation Libre GNU ».

1.1. Méta-information

Cet article est écrit avec DocBook XML sur un système Debian GNU/Linux. Il est disponible en version imprimable au format PDF : interco.netfilter.qa.pdf.

Toutes les commandes utilisées dans ce document ne sont pas spécifiques à une version particulière des systèmes GNU/Linux. C'est la distribution Debian GNU/Linux qui est utilisée pour les tests présentés. Voici une liste des paquets contenant les commandes :

  • procps - utilitaires pour le système de fichiers /proc

  • iproute2 - outils de contrôle du trafic et du réseau

  • ifupdown - outils de haut niveau pour configurer les interfaces réseau

  • iputils-ping - outils pour tester l'accessibilité de noeuds réseaux

  • hping3 - Active Network Smashing Tool

  • iptables - outils d'administration pour le filtrage de paquets et le NAT

  • iptstate - top-like interface to your netfilter connection-tracking table

1.2. Conventions typographiques

Tous les exemples d'exécution des commandes sont précédés d'une invite utilisateur ou prompt spécifique au niveau des droits utilisateurs nécessaires sur le système.

  • Toute commande précédée de l'invite $ ne nécessite aucun privilège particulier et peut être utilisée au niveau utilisateur simple.

  • Toute commande précédée de l'invite # nécessite les privilèges du super utilisateur.