FirewallD : Un pare-feu sous Linux en 3 minutes

Sécuriser son serveur sous Linux avec FirewallD. Configurer un pare-feu pour protéger son VPS ou son serveur dédié facilement.
  • Administration système
Pare-feu firewallD sous Linux sur le port HTTP
FirewallD – Bloquer le port HTTP sous Linux

FirewallD est une surcouche à iptables permettant de gérer son pare-feu beaucoup plus simplement à l’aide de zones. Iptables fonctionne très bien mais est très verbeux, les options disponibles sont nombreuses et ce n’est peut-être pas la solution la plus simple pour sécuriser son serveur Linux avec un pare-feu.

Installer et configurer le pare-feu FirewallD

Sous Centos 7, il suffit simplement de lancer la commande :

yum install firewalld

Par défaut, seuls les éléments suivants sont autorisés.

# firewall-cmd --zone=public --list-services
ssh dhcpv6-client

Configurer son pare-feu pour le serveur web

La zone par défaut est la zone public.

# firewall-cmd --get-default-zone
public

A savoir que si vous avez plusieurs cartes réseaux, vous pouvez aisément configurer une zone par carte réseau !

Pour rajouter http à la zone public.

# firewall-cmd --zone=public --add-service=https
success

A noter qu’ajouter https n’ajoutera pas automatique http à votre liste de services autorisés.

Vous pourriez être tenté de n’autoriser que https sur votre serveur. Mais attention si vous utilisez Let’s Encrypt, certbot peut utiliser des challenges http pour générer votre certificat SSL.

Autoriser un port spécifique sur FirewallD

# firewall-cmd --zone=public --add-port=3000/tcp

Pour lister l’ensemble des ports autorisés :

# firewall-cmd --zone=public --list-ports
3000/tcp

Conclusion : Sécuriser son serveur VPS avec FirewallD

Rien qu’avec cette configuration, le serveur web backend (Apache sur le port 8080) n’est plus accessible, tout comme le serveur MySQL sur le port 3306.

Ceci paraît peut-être très simple, mais votre serveur n’est désormais ouvert sur l’extérieur que via une liste de services déterminés. C’est le minimum en matière de sécurité mais c’est déjà beaucoup. Pour aller plus loin vous pouvez regarder comment sécuriser votre accès SSH.

N’oubliez pas (sous CentOS et cie) de lancer FirewallD au démarrage du serveur une fois la configuration validée !

systemctl enable firewalld

Problème avec FirewallD

Attention, sous Centos 7.7 (si vous êtes chez OVH), un souci de noyaux vous empêche d’utiliser le pare-feu après la mise à jour. Il vous faudra utiliser le paquet firewallD de la version 7.6 de Centos.

https://github.com/firewalld/firewalld/issues/519#issuecomment-546586485

Article publié le

Dernière modification le

Laisser un commentaire

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

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.