Utilisation du pare-feu avec UFW dans Ubuntu Linux [Beginner’s Guide]


  • Français


  • UFW (Uncomplicated Firewall) est un utilitaire de pare-feu simple à utiliser avec de nombreuses options pour tous les types d’utilisateurs.

    Il s’agit en fait d’une interface pour iptables, qui est l’outil classique de bas niveau (et plus difficile à maîtriser) pour définir des règles pour votre réseau.

    Pourquoi utiliser un pare-feu ?

    Un pare-feu est un moyen de réguler le trafic entrant et sortant sur votre réseau. Ceci est crucial pour les serveurs, mais cela rend également le système d’un utilisateur régulier beaucoup plus sûr, vous donnant le contrôle. Si vous faites partie de ces personnes qui aiment garder le contrôle à un niveau avancé, même sur le bureau, vous pouvez envisager de mettre en place un pare-feu.

    En bref, le pare-feu est un must pour les serveurs. Sur les ordinateurs de bureau, c’est à vous de décider si vous souhaitez le configurer.

    Configurer un pare-feu avec UFW

    Il est important de configurer correctement les pare-feux. Une configuration incorrecte peut rendre le serveur inaccessible si vous le faites pour un système Linux distant, comme un serveur cloud ou VPS. Par exemple, vous bloquez tout le trafic entrant sur le serveur auquel vous accédez via SSH. Vous ne pourrez plus accéder au serveur via SSH.

    Dans ce didacticiel, je vais passer en revue la configuration d’un pare-feu qui répond à vos besoins, en vous donnant un aperçu de ce qui peut être fait à l’aide de cet utilitaire simple. Cela devrait convenir à la fois aux utilisateurs de serveurs Ubuntu et de bureau.

    Veuillez noter que j’utiliserai ici la méthode de la ligne de commande. Il existe une interface graphique appelée Gufw pour les utilisateurs de bureau, mais je ne le couvrirai pas dans ce tutoriel. Il existe un guide dédié à Gufw si vous souhaitez l’utiliser.

    Installer UFW

    Si vous utilisez Ubuntu, UFW devrait déjà être installé. Sinon, vous pouvez l’installer à l’aide de la commande suivante :

    sudo apt install ufw

    Pour les autres distributions, veuillez utiliser votre gestionnaire de packages pour installer UFW.

    Pour vérifier que UFW est correctement installé, entrez :

    ufw --version

    S’il est installé, vous devriez voir les détails de la version :

    [email protected]:~$ ufw --version
    ufw 0.36.1
    Copyright 2008-2021 Canonical Ltd.

    Super! Vous avez donc UFW sur votre système. Voyons comment l’utiliser maintenant.

    Remarque : Vous devez utiliser sudo ou être root pour exécuter (presque) toutes les commandes ufw.

    Vérifier le statut et les règles ufw

    UFW fonctionne en définissant des règles pour le trafic entrant et sortant. Ces règles consistent à en permettant et nier sources et destinations spécifiques.

    Vous pouvez vérifier les règles du pare-feu à l’aide de la commande suivante :

    sudo ufw status

    Cela devrait vous donner la sortie suivante à ce stade :

    Status: inactive

    La commande ci-dessus vous aurait montré les règles du pare-feu si le pare-feu était activé. Par défaut, UFW n’est pas activé et n’affecte pas votre réseau. Nous nous en occuperons dans la section suivante.

    vérifier le statut ufw
    Vérification de l’état UFW

    Mais voici le truc, vous pouvez voir et modifier les règles du pare-feu même ufw n’est pas activé.

    sudo ufw show added

    Et dans mon cas, il a montré ce résultat:

    [email protected]:~$ sudo ufw show added
    Added user rules (see 'ufw status' for running firewall):
    ufw allow 22/tcp
    [email protected]:~$

    Maintenant, je ne me souviens pas si j’ai ajouté cette règle manuellement ou non. Ce n’est pas un nouveau système.

    Politiques par défaut

    Par défaut, UFW refuse tout trafic entrant et autorise tout trafic sortant. Ce comportement est parfaitement logique pour l’utilisateur de bureau moyen, car vous souhaitez pouvoir vous connecter à divers services (tels que http/https pour accéder aux pages Web) et ne souhaitez pas que quiconque se connecte à votre machine.

    Cependant, si vous utilisez un serveur distant, vous devez autoriser le trafic sur le port SSH afin que vous puissiez vous connecter au système à distance.

    Vous pouvez soit autoriser le trafic sur le port 22 par défaut SSH :

    sudo ufw allow 22

    Si vous utilisez SSH sur un autre port, autorisez-le au niveau du service :

    sudo ufw allow ssh

    Notez que le pare-feu n’est pas encore actif. C’est une bonne chose. Vous pouvez modifier les règles avant d’activer ufw afin que les services essentiels ne soient pas impactés.

    Si vous envisagez d’utiliser UFW sur un serveur de production, assurez-vous de autoriser les ports via UFW pour les services en cours.

    Par exemple, les serveurs Web utilisent généralement le port 80, utilisez donc “sudo ufw allow 80”. Vous pouvez également le faire au niveau du service “sudo ufw allow apache”.

    Cette responsabilité vous incombe et il est de votre responsabilité de vous assurer que votre serveur fonctionne correctement.

    Pour utilisateurs de bureauvous pouvez continuer avec les stratégies par défaut.

    sudo ufw default deny incoming
    sudo ufw default allow outgoing

    Activer et désactiver UFW

    Pour qu’UFW fonctionne, vous devez l’activer :

    sudo ufw enable

    Cela démarrera le pare-feu et programmera son démarrage à chaque démarrage. Vous recevez le message suivant :

    Firewall is active and enabled on system startup.

    Encore: si vous êtes connecté à une machine via ssh, assurez-vous que ssh est autorisé avant d’activer ufw en entrant sudo ufw autoriser ssh.

    Si vous souhaitez désactiver UFW, saisissez :

    sudo ufw disable

    Vous récupérerez :

    Firewall stopped and disabled on system startup

    Recharger le pare-feu pour les nouvelles règles

    Si UFW est déjà activé et que vous modifiez les règles du pare-feu, vous devez le recharger avant que les modifications ne prennent effet.

    Vous pouvez redémarrer UFW en le désactivant et en le réactivant :

    sudo ufw disable && sudo ufw enable

    Ou recharger les règles:

    sudo ufw reload

    Réinitialiser les règles de pare-feu par défaut

    Si, à tout moment, vous bousillez l’une de vos règles et souhaitez revenir aux règles par défaut (c’est-à-dire, aucune exception pour autoriser le trafic entrant ou le refus sortant), vous pouvez recommencer avec :

    sudo ufw reset

    Gardez à l’esprit que cela supprimera toutes vos configurations de pare-feu.

    Configuration du pare-feu avec UFW (vue plus détaillée)

    Très bien! Vous avez donc appris la plupart des commandes ufw de base. A ce stade, je préférerais rentrer un peu plus dans le détail de la configuration des règles de pare-feu.

    Autoriser et refuser par protocole et ports

    C’est ainsi que vous ajoutez de nouvelles exceptions à votre pare-feu ; Autoriser permet à votre machine de recevoir des données du service spécifié, tandis que Nier fait le contraire

    Par défaut, ces commandes ajouteront des règles pour les deux IP et IPv6. Si vous souhaitez modifier ce comportement, vous devrez modifier /etc/default/ufw. Changer

    IPV6=yes

    à

    IPV6=no

    Cela étant dit, les commandes de base sont :

    sudo ufw allow <port>/<optional: protocol>
    sudo ufw deny <port>/<optional: protocol>

    Si la règle a été ajoutée avec succès, vous obtenez :

    Rules updated
    Rules updated (v6)

    Par exemple:

    sudo ufw allow 80/tcp
    sudo ufw deny 22
    sudo ufw deny 443/udp

    Noter: si vous n’incluez pas de protocole spécifique, la règle sera appliquée pour les deux TCP et UDP.

    Si vous activez (ou, s’il est déjà en cours d’exécution, rechargez) UFW et vérifiez son état, vous pouvez voir que les nouvelles règles ont été appliquées avec succès.

    Ports UFW

    Vous pouvez également autoriser/refuser plages de ports. Pour ce type de règle, vous devez spécifier le protocole. Par exemple:

    sudo ufw allow 90:100/tcp

    Autorisera tous les services sur les ports 90 à 100 en utilisant le protocole TCP. Vous pouvez recharger et vérifier l’état :

    Plages de ports UFW

    Autoriser et refuser par services

    Pour faciliter les choses, vous pouvez également ajouter des règles en utilisant le nom du service :

    sudo ufw allow <service name>
    sudo ufw deny <service name>

    Par exemple, pour autoriser les services ssh et de blocage entrants et les services HTTP entrants :

    sudo ufw allow ssh
    sudo ufw deny http

    Ce faisant, UFW lira les services de /etc/service. Vous pouvez consulter la liste vous-même :

    less /etc/services
    Liste /etc/services

    Ajouter des règles pour les applications

    Certaines applications fournissent des services nommés spécifiques pour faciliter l’utilisation et peuvent même utiliser différents ports. Un tel exemple est chut. Vous pouvez voir une liste de ces applications qui sont présentes sur votre machine avec les éléments suivants :

    sudo ufw app list
    Liste des applications UFW

    Dans mon cas, les applications disponibles sont TASSES (un système d’impression en réseau) et OpenSSH.

    Pour ajouter une règle pour une application, saisissez :

    sudo ufw allow <application>
    sudo ufw deny <application>

    Par exemple:

    sudo ufw allow OpenSSH

    En rechargeant et en vérifiant le statut, vous devriez voir que la règle a été ajoutée :

    Applications UFW

    Conclusion

    Ce n’était que la pointe du iceberg pare-feu. Il y a tellement plus de pare-feu sous Linux qu’un livre peut être écrit dessus. En fait, il existe déjà un excellent livre Linux Firewalls de Steve Suehring.

    Si vous pensez configurer un pare-feu avec UFW, vous devriez essayer d’utiliser iptables ou nftables. Ensuite, vous réaliserez à quel point UFW simplifie la configuration du pare-feu.

    J’espère que vous avez aimé ce guide du débutant sur UFW. Faites-moi savoir si vous avez des questions ou des suggestions.


    Source

    Houssen Moshinaly

    Pour contacter personnellement le taulier :

    Laisser un commentaire

    Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *

    Copy code