Configurer Firewalld

Firewalld est le « nouveau » service pare-feu qui équipe Linux Centos 7 et Red Hat 7. Introduit sur Fedora 15, Firewalld, se substituant à Iptables, est activé par défaut depuis Fedora 18. Il est sensé vous simplifier la vie. Pour une gestion plus fine du pare-feu, je vous recommande de revenir à ce bon vieux Iptables ! ;+)

Les outils de configuration

Si vous travaillez en mode graphique, vous disposez d’une console accessible à partir de l’interface Gnome. vous devez l’installer au préalable par la commande :

yum install firewall-config firewall-applet

Firewall-config, l'interface graphique de configuration de Firewalld

Sinon, vous disposez de la commande firewall-cmd.

La zone public

Par défaut, lors de l’installation de votre distribution Linux Centos / Red Hat/ Fedora, Firewalld utilise la zone « public » associée à votre carte enp0s3.

firewall-cmd --get-active-zones
firewall-cmd --get-zone-of-interface=enp0s3

Vous pouvez définir cette zone en ajoutant au fichier /etc/sysconfig/network-scripts/ifcfg-enp0s3 :

ZONE=public

Pour associer la zone à votre carte, tapez :

firewall-cmd --zone=public --add-interface=enp0s3

Pour définir la zone public comme étant la zone par défaut :

firewall-cmd --set-default-zone=public

Ajouter un port

Si vous installez un serveur Apache sur votre Linux, vous devez ajouter les applications Tcp/80 et Tcp/443. Firewalld a rendu la syntaxe extrêmement simple :

firewall-cmd --zone=public --add-port=80/tcp --permanent
firewall-cmd --zone=public --add-port=443/tcp --permanent

Vous pouvez, de manière alternative, ajouter les services http, https pré-configurés :

firewall-cmd --zone=public --add-service=http --permanent
firewall-cmd --zone=public --add-service=https --permanent

Changement de port pour le SSH

Après avoir changé le port d’écoute dans le fichier /etc/ssh/sshd_config et rechargé le service ssh, vous devez ajouter le nouveau port d’écoute 2222 et supprimer le service ssh pré-configuré sur le port 22 :

firewall-cmd --zone=public --add-port=2222/tcp --permanent
firewall-cmd --zone=public --remove-service=ssh --permanent

Recharger le service Firewalld

Le service Firewalld peut se recharger de deux façons :

firewall-cmd --reload
systemctl reload firewalld

Fichiers utilisés par Firewalld

Les zones et services sont définies dans /usr/lib/firewalld. Vous y trouverez les dossiers qui contiennent les fichiers XML définissant ces zones et ces services.

Les fichiers de configuration de Firewalld

Ils sont stockés dans le dossier /etc/firewalld. Le plus important d’entre eux est le fichier /etc/firewalld/zones/public.xml, dans lequel vous retrouverez la liste des services et des ports que vous avez ouverts :

<?xml version="1.0" encoding="utf-8"?>
<zone>
  <short>Public</short>
  <description>Public</description>
  <service name="dhcpv6-client"/>
  <service name="http"/>
  <port protocol="tcp" port="443"/>
  <port protocol="tcp" port="2222"/>
</zone>

Limites de Firewalld

Je n’ai rien vu dans Firewalld permettant le filtrage des paquets sortants. Par ailleurs, contrairement à Iptables 1.6, Firewalld ne permet pas le filtrage par processus ! Pour des utilisations plus avancées du pare-feu sous Linux, je vous conseille d’en revenir à ce bon vieux Iptables. ;+)

Documentation

Sécurité  / Centos Fedora FirewallD Formateur Centos Formateur Fedora Formateur Iptables Formateur Linux Formateur Red Hat Formateur Sécurité informatique Iptables Linux Pare-feu Linux Red Hat Sécurité informatique 

Commentaires

Pas encore de commentaire.

Laisser un commentaire

(requis)

(requis)