ufw VS iptables : quel est le meilleur

Lorsque l'on s'intéresse au firewall Linux, on peut tomber sur différentes solutions comme FirewallD, iptables ou ufw.
Même s'ils visent tous à configurer les règles de paquets IP du pare-feu du noyau Linux à travers les modules Netfilter, on peut alors se demander lequel est le meilleur et lequel il vaut mieux utiliser.

Dans ce tutoriel, je vous explique les différences entre iptables et ufw afin que vous puissiez faire votre choix.

ufw VS iptables : quel est le meilleur

Qu'est-ce que iptables

iptables est un programme utilitaire d'espace utilisateur qui permet à un administrateur système de configurer les règles de filtrage de paquets IP du pare-feu du noyau Linux, implémentées sous forme de différents modules Netfilter. Les filtres sont organisés en différentes tables, qui contiennent des chaînes de règles sur la façon de traiter les paquets de trafic réseau. Différents modules et programmes du noyau sont actuellement utilisés pour différents protocoles ; iptables s'applique à IPv4, ip6tables à IPv6, arptables à ARP et ebtables aux trames Ethernet.

Mais sa compréhension et la syntaxe complexe en font un outil assez difficile à prendre en main.

Qu'est-ce que ufw

UFW signifie Uncomplicated Firewall, il vise donc à proposer un firewall simple d'utilisation.
UFW est une alternative aux applications de contrôleur de trafic réseau frontal iptables et firewallD.

Il est est disponible par défaut dans Ubuntu.
La syntaxe est très simple pour une prise en main rapide.
Sa principale vocation est de proposer un pare-feu, ainsi, il ne permet par exemple pas de faire de l'IP Masquerade comme iptables.

Imagions la règle complexe ufw suivante :

sudo ufw deny from 192.168.2.100/8 to 192.168.2.101 proto tcp port 25

Son équivalent iptables est :

sudo iptables -I INPUT -s 192.168.2.100/8 -d 192.168.2.101 -p tcp --dport 25 -j DROP

Enfin on peut même utiliser gufw une interface graphique qui permet de créer des règles ufw.

ufw un front-end pour iptables

En réalité ufw est un front-end pour iptables.
Lorsque vous créez une règle ufw, cela créé une règle iptables.

Par exemple, prenons en compte les règles ufw suivantes

ufw un front-end pour iptables

Les règles ufw transcrites au format iptables se trouvent dans /etc/ufw/user.rules :

ufw créé les règles iptables avec une syntaxe simplifiée

On retrouve alors des chaînes ufw dans iptables ainsi que ces règles.

ufw créé les règles iptables avec une syntaxe simplifiée

ufw VS iptables : quel est le meilleur

Tout dépend de ce que vous souhaitez faire.
Pour une configuration rapide d'un pare-feu, ufw est certainement la meilleure solution.
Iptables est plutôt à utiliser pour des configurations plus complexes et plutôt destiné aux administrateurs réseaux.

En effet, ufw est une interface pour iptables et est particulièrement bien adapté aux pare-feu basés sur l'hôte. ufw fournit un cadre pour la gestion de netfilter, ainsi qu'une interface de ligne de commande pour manipuler le pare-feu. ufw vise à fournir une interface facile à utiliser pour les personnes peu familiarisées avec les concepts de pare-feu, tout en simplifiant les commandes iptables complexes pour aider un administrateur qui sait ce qu'il fait. ufw est un amont pour d'autres distributions et interfaces graphiques.

Par exemples iptables permet la mise en place d'IP Masquerading pour faire du NAT, ce que ne prend pas en charge ufw.
On peut toutefois imaginer que les prochaines versions d'ufw ajoute les syntaxes PREROUTING et POSTROUTING.

Tags: