Comment démarrer avec firewalld sous Linux

0
58
fatmawati achmad zaenuri/Shutterstock.com

Si vous recherchez un pare-feu moderne et puissant pour Linux, facile à configurer en ligne de commande ou avec son interface graphique, alors firewalld est probablement ce que vous recherchez.

Le besoin de pare-feu

Les connexions réseau ont une origine et une destination. Le logiciel à l'origine demande la connexion et le logiciel à la destination l'accepte ou la refuse. S'il est accepté, les paquets de données (généralement appelés trafic réseau) peuvent passer dans les deux sens sur la connexion. Cela est vrai que vous partagez à travers la pièce dans votre propre maison, que vous vous connectiez à distance au travail depuis votre bureau à domicile ou que vous utilisiez une ressource distante basée sur le cloud.

RELATEDQue fait réellement un pare-feu ?

Les bonnes pratiques de sécurité indiquent que vous devez limiter et contrôler les connexions à votre ordinateur. C'est ce que font les pare-feu. Ils filtrent le trafic réseau par adresse IP, port ou protocole, et rejettent les connexions qui ne répondent pas à un ensemble prédéfini de critères (les règles de pare-feu) que vous avez configurées. Ils sont comme du personnel de sécurité lors d'un événement exclusif. Si votre nom n'est pas sur la liste, vous n'entrez pas à l'intérieur.

Bien sûr, vous ne voulez pas que vos règles de pare-feu soient si restrictives que vos activités normales soient restreintes. Plus il est simple de configurer votre pare-feu, moins vous avez de chance de mettre en place par inadvertance des règles conflictuelles ou draconiennes. Nous entendons souvent des utilisateurs dire qu'ils n'utilisent pas de pare-feu parce qu'il est trop compliqué à comprendre ou que la syntaxe de la commande est trop opaque.

Le pare-feu firewalld est puissant mais simple à configurer, à la fois sur la ligne de commande et via son application graphique dédiée. Sous le capot, les pare-feu Linux s'appuient sur netfilter , le framework de filtrage réseau côté noyau. Ici, dans le monde des utilisateurs, nous avons un choix d'outils pour interagir avec netfilter, tels que iptables, ufw le pare-feu simple et firewalld.

À notre avis, firewalld offre le meilleur équilibre entre fonctionnalité et granularité , et simplicité.

Installation de firewalld

Il y a deux parties à firewalld . Il y a firewalld , le processus démon qui fournit la fonctionnalité de pare-feu, et il y a firewall-config. Il s'agit de l'interface graphique facultative pour firewalld. Notez qu'il n'y a pas de “d” dans firewall-config.

L'installation de firewalld sur Ubuntu, Fedora et Manjaro est simple dans tous les cas, bien qu'ils aient chacun leur propre point de vue sur ce qui est préinstallé et ce qui est fourni.

< p>Pour installer sur Ubuntu, nous devons installer firewalld et firewall-config.

sudo apt install firewalld

sudo apt install firewall-config

Sur Fedora, firewalld est déjà installé. Nous avons juste besoin d'ajouter firewall-config .

sudo dnf install firewall-config

Sur Manjaro, aucun composant n'est préinstallé, mais ils sont regroupés dans un seul package afin que nous puissions les installer tous les deux avec une seule commande.

sudo pacman -Sy firewalld

Nous devons activer le démon firewalld pour lui permettre de s'exécuter à chaque démarrage de l'ordinateur.

sudo systemctl enable firewalld

Et nous devons démarrer le démon pour qu'il s'exécute maintenant.

sudo systemctl démarrer le pare-feu

Nous pouvons utiliser systemctl pour vérifier que firewalld a démarré et fonctionne sans problème :

sudo systemctl status firewalld

< p>Nous pouvons également utiliser firewalld pour vérifier s'il est en cours d'exécution. Cela utilise la commande firewall-cmd avec l'option –state. Notez qu'il n'y a pas de “d” dans firewall-cmd :

sudo firewall-cmd –state

Maintenant que le pare-feu est installé et opérationnel, nous pouvons passer à sa configuration.

Le concept de zones

Le pare-feu firewalld est basé sur des zones. Les zones sont des ensembles de règles de pare-feu et une connexion réseau associée. Cela vous permet de personnaliser différentes zones et un ensemble différent de limitations de sécurité sous lesquelles vous pouvez fonctionner. Par exemple, vous pouvez avoir une zone définie pour une course régulière et quotidienne, une autre zone pour une course plus sécurisée et une zone “rien à l'intérieur, rien à la sortie” ; zone de verrouillage complet.

Pour passer d'une zone à une autre, et effectivement d'un niveau de sécurité à un autre, vous déplacez votre connexion réseau de la zone dans laquelle elle se trouve, vers la zone dans laquelle vous souhaitez fonctionner .

Cela permet de passer très rapidement d'un ensemble défini de règles de pare-feu à un autre. Une autre façon d'utiliser les zones serait de faire en sorte que votre ordinateur portable utilise une zone lorsque vous êtes à la maison et une autre lorsque vous êtes à l'extérieur et que vous utilisez le Wi-Fi public.

firewalld est livré avec neuf zones préconfigurées. Celles-ci peuvent être modifiées et d'autres zones ajoutées ou supprimées.

  • drop : tous les paquets entrants sont supprimés. Le trafic sortant est autorisé. C'est le paramètre le plus paranoïaque.
  • bloquer : tous les paquets entrants sont supprimés et un message icmp-host-prohibited est envoyé à l'expéditeur. Le trafic sortant est autorisé.
  • de confiance: Toutes les connexions réseau sont acceptées et les autres systèmes sont approuvés. Il s'agit du paramètre le plus fiable et doit être limité à des environnements très sûrs, tels que des réseaux de test captifs ou votre domicile.
  • public : cette zone est destinée à être utilisée sur des réseaux publics ou autres où aucun des autres ordinateurs sont fiables. Une petite sélection de demandes de connexion courantes et généralement sûres sont acceptées.
  • externe: Cette zone est destinée à être utilisée sur des réseaux externes avec le masquage NAT (transfert de port) activé. Votre pare-feu agit comme un routeur redirigeant le trafic vers votre réseau privé qui reste accessible, mais toujours privé.
  • interne : cette zone est destinée à être utilisée sur les réseaux internes lorsque votre système agit en tant que passerelle ou routeur. Les autres systèmes de ce réseau sont généralement fiables.
  • dmz : cette zone est destinée aux ordinateurs situés dans la “zone démilitarisée” en dehors de vos défenses de périmètre et avec un accès limité à votre réseau.
  • travaillez: Cette zone est réservée aux machines de travail. Les autres ordinateurs de ce réseau sont généralement fiables.
  • domicile : cette zone est réservée aux ordinateurs domestiques. Les autres ordinateurs de ce réseau sont généralement fiables.

Les zones domicile, travail et interne fonctionnent de manière très similaire, mais les séparer en différentes zones vous permet d'affiner une zone pour votre goût, encapsulant un ensemble de règles pour un scénario particulier.

Un bon point de départ consiste à déterminer quelle est la zone par défaut. Il s'agit de la zone à laquelle vos interfaces réseau sont ajoutées lorsque firewalld est installé.

sudo firewall-cmd –get-default-zone

Notre zone par défaut est la zone publique. Pour voir les détails de configuration d'une zone, utilisez l'option –list-all. Ceci répertorie tout ce qui a été ajouté ou activé pour une zone.

sudo firewall-cmd –zone=public –list-all

Nous pouvons voir que cette zone est associée à la connexion réseau enp0s3 et autorise le trafic lié à DHCP, mDNS et SSH. Étant donné qu'au moins une interface a été ajoutée à cette zone, cette zone est active.

firewalld vous permet d'ajouter des services dont vous souhaitez accepter le trafic vers une zone. Cette zone autorise alors le passage de ce type de trafic. C'est plus facile que de se rappeler que mDNS, par exemple, utilise le port 5353 et le protocole UDP, et d'ajouter manuellement ces détails à la zone. Bien que vous puissiez le faire aussi.

Si nous exécutons la commande précédente sur un ordinateur portable avec une connexion Ethernet et une carte Wi-Fi, nous verrons quelque chose de similaire, mais avec deux interfaces.

sudo firewall-cmd –zone=public –list -all

Nos deux interfaces réseau ont été ajoutées à la zone par défaut. La zone a des règles pour les trois mêmes services que dans le premier exemple, mais DHCP et SSH ont été ajoutés en tant que services nommés, tandis que mDNS a été ajouté en tant qu'appariement de port et de protocole.

Pour répertorier toutes les zones, utilisez le –get-zones option.

sudo firewall-cmd –get-zones

Pour voir la configuration pour toutes les zones à la fois, utilisez l'option –list-all-zones. Vous aurez envie de diriger cela vers less.

sudo firewall-cmd –list-all-zones | moins

Ceci est utile car vous pouvez faire défiler la liste ou utiliser la fonction de recherche pour rechercher des numéros de port, des protocoles et des services.

Sur notre ordinateur portable, nous allons déplacer notre connexion Ethernet de la zone publique vers la zone d'accueil. Nous pouvons le faire avec les options –zone et –change-interface.

sudo firewall-cmd –zone=home –change-interface=enp3s0

Jetons un coup d'œil à la zone d'accueil et voyons si notre modification a été effectuée.

sudo firewall-cmd –zone=home –list-all

Et c'est le cas. Notre connexion Ethernet est ajoutée à la zone d'accueil.

Cependant, ce n'est pas un changement permanent. Nous avons modifié la configuration d'exécution du pare-feu, et non sa configuration stockée. Si nous redémarrons ou utilisons l'option –reload, nous rétablirons nos paramètres précédents.

Pour rendre une modification permanente, nous devons utiliser l'option bien nommée –permanent.

Cela signifie que nous pouvons modifier le pare-feu pour des besoins ponctuels sans modifier la configuration stockée du pare-feu. Nous pouvons également tester les modifications avant de les envoyer à la configuration. Pour rendre notre changement permanent, le format que nous devons utiliser est :

sudo firewall-cmd –zone=home –change-interface=enp3s0 –permanent

Si vous apportez des modifications mais oubliez d'utiliser –permanent sur certaines d'entre elles, vous pouvez écrire les paramètres de la session en cours d'exécution du pare-feu dans la configuration à l'aide de l'option –runtime-to-permanent.

sudo firewall -cmd –runtime-to-permanent

CONNEXE : Ce que Le protocole DHCP (Dynamic Host Configuration Protocol) est-il ?

Ajout et suppression de services

firewalld connaît de nombreux services. Vous pouvez les lister en utilisant l'option –get-services.

sudo firewall-cmd –get-services

Notre version de firewalld répertorie 192 services. Pour activer un service dans une zone, utilisez l'option –add-service.

Nous peut ajouter un service à une zone en utilisant l'option –add-service.

sudo firewall-cmd –zone=public –add-service=http

Le nom du service doit correspondre à son entrée dans la liste des services de firewalld.

Pour supprimer un service, remplacez –add-service par –remove-service

Ajouter et supprimer des ports et des protocoles

Si vous préférez choisir quels ports et protocoles sont ajoutés, vous pouvez également le faire. Vous devez connaître le numéro de port et le protocole pour le type de trafic que vous ajoutez.

Ajoutons le trafic HTTPS à la zone publique. Cela utilise le port 443 et est une forme de trafic TCP.

sudo firewall-cmd –zone=public –add-port=443/tcp

Vous pouvez fournir une plage de ports en indiquant le premier et le dernier ports avec un tiret “-” entre eux, comme “400-450.”

Pour supprimer un port, remplacez –add-port par –remove-port .

CONNEXION : Quelle est la différence entre TCP et UDP ?

Utilisation de l'interface graphique

Appuyez sur votre “Super” clé et commencez à taper “pare-feu.” Vous verrez l'icône représentant un mur de briques pour l'application de configuration du pare-feu.

Cliquez sur cette icône pour lancer l'application.

Pour ajouter un service à firewalld à l'aide de l'interface graphique, il suffit de sélectionner une zone dans la liste des zones et de sélectionner le service dans la liste des services.

< p>Vous pouvez choisir de modifier la session en cours ou la configuration permanente en sélectionnant “Runtime” ou “Permanent” de la “Configuration” menu déroulant.

Pour apporter des modifications à la session en cours et ne valider les modifications qu'une fois que vous les avez testées, définissez la “Configuration” menu sur “Exécution.” Apportez vos modifications. Une fois que vous êtes satisfait qu'ils fassent ce que vous voulez, utilisez les Options > Option de menu Runtime to Permanent.

Pour ajouter un port et une entrée de protocole à une zone, sélectionnez la zone dans la liste des zones, puis cliquez sur “Ports.” Cliquer sur le bouton Ajouter vous permet de fournir le numéro de port et de choisir le protocole dans un menu.

Pour ajouter un protocole, cliquez sur “Protocoles”, cliquez sur le bouton “Ajouter” et sélectionnez le protocole dans le menu contextuel.

Pour déplacer une interface d'une zone à une autre, double-cliquez sur l'interface dans les “Connexions” liste, puis sélectionnez la zone dans le menu contextuel.

La partie émergée de l'iceberg

Vous pouvez faire beaucoup plus avec firewalld, mais c'est suffisant pour être opérationnel. Avec les informations que nous vous avons fournies, vous serez en mesure de créer des règles significatives dans vos zones.

LIRE LA SUITE

  • › Combien coûte l'utilisation d'une tondeuse à gazon électrique ?
  • &rsaquo ; Quels sont les meilleurs jeux Nintendo Switch en 2022 ?
  • › Nouveautés de la mise à jour 22H2 de Windows 11 : 10 principales nouvelles fonctionnalités
  • › Que faire si vous laissez tomber votre smartphone dans l'océan
  • &rsaquo ; Ne placez pas votre téléviseur au-dessus de votre cheminée
  • › Un monde sans fils : 25 ans de Wi-Fi