Mise en place d'un firewall sous Linux

Utilisation de Netfilter avec VMware Server

Guilhem Urroz

Alexandre Lanave

Vendredi 2 Juin 2006

Résumé

Nous traiterons ici de l'étude de la mise en place d'un firewall Netfilter sous GNU/Linux. Pour plus de commodité, nous ferons le choix d'utiliser une machine virtuelle de type VMware Server, et nous placerons le filtrage entre la machine virtuelle et son hôte.

Nous présenterons dans un premier temps l'outil VMware utilisé, et plus généralement les outils de virtualisation. Dans un deuxième temps, nous nous pencherons sur le fonctionnement de netfilter sous GNU/Linux. Nous verrons ensuite l'installation et la configuration de ces outils, pour pouvoir enfin mettre en place le filtrage de façon efficace.

Ce document étant supposé constituer une documentation pour de futurs utilisateurs de VMware et Netfilter à l'Université de Limoges, il a été réalisé à l'aide de Docbook, un format ouvert de documentation.

Cette documentation a été écrite pour un système basé sur Debian, en l'occurence Ubuntu, cependant elle devrait pouvoir être appliquée facilement à tout système fonctionnant sous GNU/Linux, moyennant quelques adaptations.


Table des matières

1. Présentation de VMware
Qu'est-ce que VMware ?
Rappels sur la virtualisation
Fonctionnement de VMware
Un aperçu des outils VMware
Les outils pour les postes de travail
Les outils serveurs
2. Présentation de Netfilter
Qu'est-ce que netfilter ?
Définition
Rappels sur le filtrage IP
Fonctionnement général de netfilter
Les tables Netfilter
La table Filter
La table NAT
La table Mangle
Critique de netfilter
Ses qualités
Ses défauts
3. Installation et configuration
Installation de Netfilter
Téléchargement et compilation du noyau
Installation de la commande Iptables
Les configurations réseau de VMware
Les composants du réseau virtuel
Les types de réseau VMware
Installation de VMware
Téléchargement et installation de l'application
Configuration de VMware Server
Utilisation d'une interface virtuelle « perso »
Script de création
Installation de dnsmasq
Finalisation de l'installation
4. Mise en place du filtrage IP
Quelques précisions
Où se situera le filtrage?
Des règles, des chaînes, et des cibles
Les chaînes de la table filter
Les chaines utilisateurs
Prise en main de NetFilter
Les principales commandes
Les principales options
5. Petite étude de cas
Ce que l'on souhaite réaliser
Mise en place
Fixer les politiques par défaut
Gestion du trafic considére comme « sûr »
Gestion du trafic réseau local/extérieur
Gestion du trafic DNS
Accès SSH depuis l'extérieur
Petite amélioration
Gestion du log de filtrage
Glossaire
Webographie

Liste des illustrations

2.1. Les tables Netfilter
3.1. Le réseau ponté
3.2. Le réseau NAT
3.3. Le réseau « host-only »
4.1. Emplacement du filtrage
4.2. La chaîne INPUT
4.3. La chaîne OUTPUT
4.4. La chaîne FORWARD
4.5. La cible ACCEPT
4.6. La cible REJECT
4.7. La cible DROP