Configurer le pare-feu UFW sur Raspberry Pi
- UFW - Bases et installation simples du pare-feu
- UFW - Autoriser le trafic SSH vers la règle Raspberry Pi
- UFW - Supprimer les règles existantes
- UFW - Règles de blocage basées sur des adresses IP ou des plages
Cet article présentera plusieurs scénarios de configuration du pare-feu UFW sur Raspberry Pi.
UFW - Bases et installation simples du pare-feu
UFW (Uncomplicated FireWall) est un programme frontal permettant de manipuler les règles du sous-système de filtrage de paquets du noyau Linux appelé NetFilter. Étant donné que ce dernier est un module du noyau Linux, il nécessite une application en espace utilisateur pour fournir des outils de configuration et de gestion aux utilisateurs finaux.
Cela est principalement fait par les programmes utilitaires iptables
et ip6tables
, qui peuvent être utilisés pour configurer et inspecter les tables de règles de filtrage de paquets IPv4/IPv6 dans le noyau Linux. Bien que la configuration iptables
puisse être fastidieuse pour les nouveaux utilisateurs et administrateurs Linux, une autre couche de programmes de pare-feu frontaux (par exemple, UFW) existe pour simplifier la gestion de la configuration et fournir une interface plus simple avec iptables
.
UFW fait partie des packages Ubuntu par défaut et est également disponible dans Raspberry Pi OS pour être installé à partir des référentiels officiels. Vous pouvez installer UFW avec la commande suivante :
sudo apt install ufw
Une fois le package UFW installé, nous pouvons l’activer au démarrage du système et configurer les règles selon les besoins. La commande suivante peut être utilisée pour permettre au pare-feu de s’exécuter au démarrage et de démarrer le processus immédiatement :
sudo ufw enable
Notez que la commande précédente affiche l’avertissement que les connexions SSH existantes peuvent être interrompues, vous pouvez donc exécuter ces commandes sans connexion à distance pour ne pas être verrouillé hors de la machine.
À ce stade, UFW définit certaines règles par défaut pour le trafic entrant et sortant, le premier étant refusé et le second autorisé. L’état actuel du pare-feu peut être inspecté à l’aide de la commande :
sudo ufw status
Alternativement, vous pouvez ajouter des options verbose
ou numbered
à la commande précédente pour afficher les règles actuelles avec des informations supplémentaires :
sudo ufw status verbose
sudo ufw status numbered
UFW - Autoriser le trafic SSH vers la règle Raspberry Pi
Généralement, SSH utilise le numéro de port - 22, nous l’inclurons donc dans les commandes suivantes, mais vous pouvez avoir SSH à l’écoute sur un port différent. Ce dernier peut être réalisé en modifiant le fichier de configuration SSH sshd_config
, situé au chemin /etc/ssh/sshd_config
. Si vous souhaitez autoriser toutes les connexions SSH à Pi, exécutez la commande suivante.
sudo ufw allow 22
D’autre part, vous souhaiterez peut-être restreindre les connexions SSH afin que seules les adresses IP spécifiques soient autorisées à accéder à l’hôte. Vous pouvez réexécuter la commande suivante pour différentes adresses IP afin d’ajouter toutes les exceptions autorisées à se connecter au service donné.
sudo ufw allow proto tcp from 10.10.10.1 to any port 22
UFW - Supprimer les règles existantes
Les règles existantes dans UFW peuvent être supprimées à l’aide de la commande ufw delete
. Vous devez spécifier le numéro de la règle pour la supprimer. Notez que les règles numérotées peuvent être répertoriées à l’aide de la commande sudo ufw status number
. Dans ce cas, nous supprimerons la règle définie par l’exemple de commande précédent, qui se trouve être numéroté comme le troisième.
sudo ufw delete 3
UFW - Règles de blocage basées sur des adresses IP ou des plages
Certaines adresses et plages IP peuvent être empêchées d’établir des connexions réseau avec le Raspberry Pi. A savoir, l’adresse IP spécifique (par exemple 10.10.10.1
) sera bloquée avec la commande suivante.
sudo ufw deny from 10.10.10.1
Alternativement, l’ensemble du sous-réseau peut être bloqué si vous exécutez la commande suivante.
sudo ufw deny from 10.10.10.0/24
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook