UFW

Un firewall (pare-feu en 🇫🇷) permet de bloquer les tentatives d’accès à des combinaisons de ports/protocoles que nous définissons. Un firewall permet par exemple, de n’autoriser les connexions ssh que depuis certaines adresses IP.

UFW a été conçu pour simplifier la mise en place d’un Firewall iptables sous Linux, qui est relativement complexe a configurer… C’est donc une interface simple a utiliser, qui va créer les règles iptables sous-jacentes.

Installation

L’installation se fait par un simple sudo apt install ufw -y .
Le firewall est alors installé mais désactivé suite à l’installation, ce qui nous laisse le temps de le configurer avant de l’activer (et de se retrouver bloquer si on ne fait pas attention à débloquer le ssh 🤣 )

Par défaut les règles suivantes sont implémentées, bloquant les flux entrant et autorisant tout les flux sortant (de notre machine):

ufw default deny incoming

ufw default allow outgoing

Pour visualiser l’état du Firewall à tout moment, il suffit d’utiliser : ufw status verbose

Les commandes de base

# lister les règles en place
ufw status verbose

# autoriser un protocole en spécifiant son nom
ufw allow ssh
ufw allow in 22/tcp

# supprimer une règle
ufw delete allow in 22/tcp

# pour autoriser une adresse IP
ufw allow from 192.168.0.1

# pour autoriser une plage de Ports
ufw allow out 6880:6999/tcp


ufw status numbered
ufw delete <numéro-de-la-règle

Journalisation

Il est bien entendu possible de logger l’activité de notre Firewall dans des fichiers (se trouveront par défaut dans /var/log/ufw.log) ou dans un rsyslog:

# activer a journalisation les fichiers de log
ufw logging on

# ou encore en spécifiant le niveau de logs
ufw logging low|medium|high

Controle du Firewall

systemctl status ufw

# activer/désactiver le firewall
ufw enable
ufw disable

#pour recharger la configuration qui vient d’être modifiée
ufw reload

# pour un reset complet des règles
ufw reset

Liens