Comment vérifier si une zone de pare-feu réseau est active sous Linux

LinuxLinuxBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

Dans ce laboratoire (lab), vous apprendrez à vérifier si une zone de pare-feu réseau est active sous Linux en utilisant firewalld. Nous commencerons par utiliser la commande firewall-cmd --get-active-zones pour identifier les zones actuellement actives et les interfaces réseau auxquelles elles sont associées.

Ensuite, nous explorerons les fichiers de configuration de firewalld situés dans le répertoire /etc/firewalld pour comprendre où les règles de zone sont définies. Enfin, nous examinerons les règles iptables sous-jacentes pour voir comment firewalld traduit ses configurations de zone en règles réelles de filtrage de paquets. Ce laboratoire offre une compréhension de base de la façon dont firewalld gère la sécurité réseau sur votre système Linux.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicFileOperationsGroup(["Basic File Operations"]) linux(("Linux")) -.-> linux/SystemInformationandMonitoringGroup(["System Information and Monitoring"]) linux(("Linux")) -.-> linux/RemoteAccessandNetworkingGroup(["Remote Access and Networking"]) linux/BasicFileOperationsGroup -.-> linux/ls("Content Listing") linux/BasicFileOperationsGroup -.-> linux/cat("File Concatenating") linux/SystemInformationandMonitoringGroup -.-> linux/service("Service Managing") linux/RemoteAccessandNetworkingGroup -.-> linux/ifconfig("Network Configuring") linux/RemoteAccessandNetworkingGroup -.-> linux/netstat("Network Monitoring") linux/RemoteAccessandNetworkingGroup -.-> linux/ip("IP Managing") subgraph Lab Skills linux/ls -.-> lab-558734{{"Comment vérifier si une zone de pare-feu réseau est active sous Linux"}} linux/cat -.-> lab-558734{{"Comment vérifier si une zone de pare-feu réseau est active sous Linux"}} linux/service -.-> lab-558734{{"Comment vérifier si une zone de pare-feu réseau est active sous Linux"}} linux/ifconfig -.-> lab-558734{{"Comment vérifier si une zone de pare-feu réseau est active sous Linux"}} linux/netstat -.-> lab-558734{{"Comment vérifier si une zone de pare-feu réseau est active sous Linux"}} linux/ip -.-> lab-558734{{"Comment vérifier si une zone de pare-feu réseau est active sous Linux"}} end

Vérifier les zones avec firewall-cmd --get-active-zones

Dans cette étape, nous allons commencer à explorer firewalld, l'outil de gestion dynamique de pare-feu sous Linux. Les pare-feu sont essentiels pour la sécurité réseau, car ils contrôlent le trafic autorisé à entrer et à sortir de votre système.

firewalld utilise le concept de "zones" pour gérer les règles de pare-feu. Les zones définissent le niveau de confiance des connexions réseau. Différentes zones ont des règles par défaut différentes. Par exemple, une zone "public" peut avoir des règles plus strictes qu'une zone "trusted" (fiable).

Vérifions quelles zones sont actuellement actives sur votre système. Nous allons utiliser la commande firewall-cmd avec l'option --get-active-zones.

Ouvrez votre terminal si ce n'est pas déjà fait. N'oubliez pas que vous pouvez trouver l'icône du Xfce Terminal sur le côté gauche de votre bureau.

Tapez la commande suivante et appuyez sur Entrée :

firewall-cmd --get-active-zones

Vous devriez voir une sortie similaire à celle-ci :

public
  interfaces: eth0

Cette sortie nous indique que la zone public est actuellement active et qu'elle est associée à l'interface réseau eth0. L'interface eth0 est la façon dont votre machine virtuelle se connecte au réseau.

Comprendre les zones actives est la première étape pour gérer votre pare-feu avec firewalld. Dans les étapes suivantes, nous examinerons les fichiers de configuration et la manière dont les règles sont appliquées.

Cliquez sur Continuer pour passer à l'étape suivante.

Vérifier la configuration de firewalld avec cat /etc/firewalld

Dans l'étape précédente, nous avons vu quelles zones firewalld étaient actives. Maintenant, regardons où firewalld stocke ses fichiers de configuration. Ces fichiers définissent les règles pour chaque zone.

Le répertoire de configuration principal de firewalld est /etc/firewalld. À l'intérieur de ce répertoire, vous trouverez des sous-répertoires pour les zones, les services et autres éléments de configuration.

Nous pouvons utiliser la commande cat pour afficher le contenu des fichiers. Pour voir ce qu'il y a dans le répertoire /etc/firewalld, nous pourrions essayer d'utiliser cat, mais cat est conçu pour les fichiers, pas pour les répertoires. Au lieu de cela, listons le contenu du répertoire en utilisant la commande ls.

Tapez la commande suivante et appuyez sur Entrée :

ls /etc/firewalld/

Vous devriez voir une liste de répertoires et de fichiers, quelque chose comme ceci :

icmptypes  lockdown-whitelist.xml  modules  panic-iface.conf  services  zones

Cela montre la structure de la configuration de firewalld. Le répertoire zones est particulièrement important, car il contient les fichiers de configuration pour chaque zone (comme public.xml, trusted.xml, etc.).

Regardons à l'intérieur du répertoire zones. Tapez :

ls /etc/firewalld/zones/

Vous verrez une liste de fichiers XML, un pour chaque zone prédéfinie :

block.xml  dmz.xml  drop.xml  external.xml  home.xml  internal.xml  public.xml  trusted.xml  work.xml

Ces fichiers XML contiennent les règles spécifiques pour chaque zone. Par exemple, public.xml définit les règles pour la zone public que nous avons vu être active dans l'étape précédente.

Bien que nous ne rentrerons pas dans les détails des fichiers XML dans ce laboratoire (lab), savoir où est stockée la configuration est une partie essentielle pour comprendre firewalld.

Cliquez sur Continuer pour passer à l'étape suivante.

Inspecter les règles iptables avec iptables -L

Alors que firewalld est la méthode moderne pour gérer les pare-feu sur de nombreuses distributions Linux, il fonctionne souvent en configurant le framework netfilter sous-jacent, qui est traditionnellement géré par la commande iptables.

Même lorsque vous utilisez firewalld, vous pouvez toujours inspecter les règles que firewalld a créées dans netfilter en utilisant la commande iptables. Cela peut être utile pour comprendre comment firewalld traduit ses règles basées sur les zones en règles iptables de bas niveau.

Pour lister les règles iptables actuelles, nous allons utiliser la commande iptables avec l'option -L. Étant donné que la visualisation des règles de pare-feu nécessite des privilèges administratifs, nous devrons utiliser sudo.

Tapez la commande suivante et appuyez sur Entrée :

sudo iptables -L

Vous verrez beaucoup de résultats ! Cette sortie montre les différentes chaînes iptables (comme INPUT, FORWARD, OUTPUT) et les règles qui les composent. firewalld crée ses propres chaînes, souvent préfixées par FWD, IN_, OUT_, etc., pour gérer le trafic en fonction des zones et des services.

Voici un extrait de ce que vous pourriez voir (la sortie exacte variera) :

Chain INPUT (policy ACCEPT)
target     prot opt source               destination
ACCEPT     all  --  anywhere             anywhere             ctstate RELATED,ESTABLISHED
ACCEPT     all  --  anywhere             anywhere
INPUT_direct  all  --  anywhere             anywhere
INPUT_ZONES_SOURCE  all  --  anywhere             anywhere
INPUT_ZONES  all  --  anywhere             anywhere
...
Chain FORWARD (policy ACCEPT)
target     prot opt source               destination
...
Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination
...
Chain INPUT_ZONES (1 references)
target     prot opt source               destination
FWD_public  all  --  anywhere             anywhere             [goto] /* zone public */
...

Ne vous inquiétez pas pour comprendre chaque ligne de cette sortie pour le moment. Le point clé est que firewalld gère activement ces règles iptables en arrière-plan. La commande iptables -L vous donne un aperçu des règles de filtrage de paquets effectivement appliquées par le noyau.

Cette étape conclut notre brève introduction à firewalld et à sa relation avec iptables. Vous avez appris à vérifier les zones actives, à localiser les fichiers de configuration et à inspecter les règles iptables sous-jacentes.

Cliquez sur Continuer pour terminer le laboratoire.

Résumé

Dans ce laboratoire (lab), nous avons commencé à explorer firewalld pour vérifier les zones actives du pare-feu réseau sous Linux. Nous avons appris que firewalld utilise des zones pour gérer les règles de pare-feu et que la commande firewall-cmd --get-active-zones permet d'identifier quelles zones sont actuellement actives et associées aux interfaces réseau. Nous avons vu un exemple où la zone public était active sur l'interface eth0.

Ensuite, nous avons commencé à examiner les fichiers de configuration de firewalld, en notant que le répertoire de configuration principal est /etc/firewalld. Nous avons tenté d'afficher le contenu du répertoire, en comprenant que cat est utilisé pour les fichiers, pas pour les répertoires, et que lister le contenu du répertoire est la méthode appropriée pour voir les fichiers de configuration des zones, des services et d'autres éléments.