(Plesk pour Linux) Le pare-feu de Plesk
Résumé: Le pare-feu de Plesk est un outil que vous pouvez utiliser afin d’améliorer la sécurité de votre serveur Plesk pour Linux en restreignant les connexions réseau au serveur et/ou depuis le serveur.
Dans cette section, vous découvrirez comment ajouter et supprimer des règles et des politiques du pare-feu, comment bloquer des connexions entrantes de pays spécifiques et comment importer/exporter des règles du pare-feu afin de réutiliser la configuration du pare-feu sur différents serveurs.
Prudence: Le pare-feu de Plesk et firewalld sont des outils pour gérer le pare-feu iptables. Leur utilisation simultanée risque de générer des conflits et d’entraîner la fermeture de ports requis pour le fonctionnement de Plesk. Nous vous recommandons d’utiliser un seul outil.
Prérequis
Avant de commencer, l’extension « Firewall » doit être installée sur le serveur. Si l’extension n’est pas installée, alors installez l’extension depuis le Catalogue des extensions.
Gérer les règles et les politiques du pare-feu
Par défaut, la configuration du pare-feu de Plesk se compose de politiques et de règles. Les politiques couvrent de nombreux aspects et affectent toutes les connexions depuis ou vers le serveur, selon la politique elle-même. Par exemple, vous pouvez utiliser la politique System policy for incoming traffic (disponible dans Outils & Paramètres > Pare-feu) pour bloquer complètement toutes les connexions entrantes vers le serveur. Les règles sont plus précises et gouvernent les connexions entrantes vers des services individuels de Plesk, comme SMTP ou MySQL.
Notez que les règles écrasent les politiques. Par exemple : si une politique globale refuse tout trafic entrant et si une règle autorise le trafic entrant depuis une adresse IP spécifique, la règle est prioritaire. Vous pouvez utiliser ce mécanisme pour renforcer ou assouplir facilement la sécurité du serveur. Par exemple : configurer des politiques pour interdire toutes les connexions depuis et vers le serveur sauf pour quelques adresses IP et ports permet d’améliorer la sécurité. Toutefois, certaines applications risquent de ne pas fonctionner correctement en raison de restrictions du réseau. À l’inverse, autoriser toutes les connexions par défaut et utiliser des règles pour bloquer l’accès vers des services individuels ou depuis des adresses IP individuelles réduit la sécurité du serveur mais évite les problèmes de connexion. Faites vos propres tests pour déterminer le meilleur compromis entre usage et sécurité.
Vous pouvez gérer le pare-feu de deux manières :
- Modifier les paramètres des politiques et règles par défaut.
- Créer des règles personnalisées.
Pour modifier les paramètres des politiques et règles par défaut, allez dans Outils & Paramètres > Pare-feu (groupe Sécurité) et cliquez sur Activer la gestion des règles du pare-feu. Confirmez l’activation de la gestion des règles, patientez jusqu’à l’application des modifications, puis cliquez sur Modifier les règles du pare-feu Plesk. Cliquez sur la règle ou la politique que vous voulez modifier. Vous pouvez définir une politique pour autoriser ou refuser des connexions ainsi qu’une règle pour autoriser ou refuser des connexions, ou autoriser les connexions depuis des adresses indiquées uniquement et refuser toutes les autres. Une fois que vous avez procédé aux modifications, cliquez sur Appliquer les changements pour faire entrer en vigueur les modifications ou sur Abandonner les changements pour tout annuler.
Pour ajouter une règle personnalisée, activez la gestion des règles comme indiqué ci-dessus et cliquez sur Ajouter une règle personnalisée. Les règles personnalisée sont plus flexibles que les règles standard et peuvent être configurées pour autoriser ou refuser toutes les connexions entrantes, sortantes ou transférées depuis ou vers un port ou une adresse IP spécifique. Une fois que vous avez ajouté une ou plusieurs règles personnalisées, cliquez sur Appliquer les changements pour les appliquer aux jeux de règles ou sur Abandonner les changements pour tout annuler. Si ultérieurement vous décidez de supprimer une ou plusieurs règles personnalisées, cochez les cases correspondantes. Cliquez sur Supprimer, confirmez la suppression et cliquez sur Appliquer les changements pour supprimer les règles du jeu de règles.
Lorsque vous créez des règles personnalisées, veillez à ne pas bloquer par inadvertance des ports utilisés par les services Plesk.
Note: Si vous utilisez des conteneurs Docker, les règles du pare-feu Docker ne sont pas ajoutées aux règles du pare-feu Plesk.
Blocage par pays
Vous pouvez utiliser le pare-feu de Plesk pour bloquer l’accès vers ou depuis des adresses IP d’un pays spécifique.
Bloquer l’accès depuis un pays spécifique
- Connectez-vous à Plesk.
- Allez dans Outils & Paramètres > Pare-feu (sous « Sécurité »).
- Cliquez sur le bouton « Protection par pare-feu » pour le passer sur « Activé ». Si la protection par pare-feu est déjà activée, ignorez cette étape.
- Cliquez sur le bouton
.
- (Facultatif) Donnez un nom à votre règle.
- Définissez « Action » sur « Refuser ».
- Dans « Sources », saisissez le code pays ISO 3166 à deux lettres du pays que vous voulez bloquer. Par exemple, pour bloquer toutes les connexions entrantes depuis l’Afghanistan, saisissez AF.
- (Facultatif) Cliquez sur « Add one more » (« Ajouter un autre ») et répétez l’étape précédente pour bloquer tout autre pays. Vous pouvez bloquer autant de pays que vous le souhaitez.
- Cliquez sur Enregistrer lorsque vous aurez ajouté tous les pays que vous voulez bloquer.
- Cliquez sur Appliquer les modifications, puis sur Appliquer.
Une fois que la configuration du pare-feu a été appliquée, toutes les connexions entrantes vers votre serveur depuis le ou les pays bloqués seront refusées.
Par défaut, Plesk utilise la base de données gratuite « IP to Country Lite » de DB-IP. Vous pouvez également utiliser à la place une base de données gratuite ou payante de MaxMind. Avant cela, vous devez disposer d’une licence gratuite ou payante de MaxMind et recevoir votre clé de licence.
Passer à une base de données GeoIP2 payante
-
Ajoutez les lignes suivantes dans le fichier panel.ini :
[ext-firewall] geoipDataSource = maxmind-lite
pour utiliser une base de données GeoLite2 gratuite ou
[ext-firewall] geoipDataSource = maxmind
pour utiliser une base de données GeoIP2 payante.
-
Connectez-vous au serveur via SSH, puis exécutez la commande suivante :
LICENSE_KEY=<enter your license key here> plesk sbin modules/firewall/ipsets --configure --data-source maxmind-lite --force
ou
LICENSE_KEY=<enter your license key here> plesk sbin modules/firewall/ipsets --configure --data-source maxmind --force
pour utiliser la base de données gratuite ou payante de MaxMind, respectivement.
Note: La commande peut terminer par l’avertissement Set cannot be destroyed`. Vous pouvez ignorer cet avertissement sans problème.
-
Allez dans Outils & Paramètres > Pare-feu (sous « Sécurité »).
-
Cliquez sur Appliquer les modifications, puis sur Appliquer.
Note: Si le bouton Appliquer les modifications est absent, créez une nouvelle règle de pare-feu pour déclencher l’option afin d’appliquer les modifications. Vous pourrez supprimer cette règle par la suite.
Une fois que la configuration du pare-feu aura été appliquée, la base de données GeoIP2 sera utilisée à la place de la base de données GeoLite2.
Pour revenir à la base de données gratuite de DB-IP, supprimez la ligne geoipDataSource = maxmind-lite
ou geoipDataSource = maxmind
du fichier et appliquez à nouveau la configuration du pare-feu.
Importer et exporter la configuration du pare-feu
Vous aurez peut-être besoin de dupliquer la configuration du pare-feu d’un serveur Plesk pour Linux sur d’autres serveurs Plesk pour Linux. Le plus simple est d’exporter la configuration du pare-feu vers un fichier et de l’importer sur chacun des serveurs Plesk pour Linux. Vous pouvez importer et exporter la configuration du pare-feu via l’interface graphique et la ligne de commande.
Exporter la configuration du pare-feu via la GUI
- Connectez-vous à Plesk sur le serveur dont vous voulez copier la configuration du pare-feu.
- Allez dans Outils & Paramètres > Pare-feu (sous « Sécurité »).
- Cliquez sur Exporter.
La configuration du pare-feu sera enregistrée dans un fichier .json
. Vous pouvez le trouver dans le répertoire de téléchargements de votre navigateur.
Importer la configuration du pare-feu via la GUI
- Connectez-vous à Plesk sur le serveur sur lequel vous voulez copier la configuration du pare-feu.
- Allez dans Outils & Paramètres > Pare-feu (sous « Sécurité »).
- Cliquez sur le bouton « Protection par pare-feu » pour le passer sur « Activé ». Ensuite, cliquez sur Appliquer. Si la protection par pare-feu est déjà activée, ignorez cette étape.
- Cliquez sur Importer. Puis, cherchez le fichier
.json
exporté sur le serveur dont vous voulez copier la configuration du pare-feu.
La configuration du pare-feu du fichier sera appliquée.
Exporter la configuration du pare-feu via la CLI
-
Connectez-vous via SSH au serveur dont vous voulez copier la configuration.
-
Exécutez la commande suivante pour exporter la configuration du pare-feu :
plesk ext firewall --export > rules.json
Vous pouvez nommer ce fichier comme vous le souhaitez. « rules.json » est seulement un exemple.
La configuration du pare-feu sera enregistrée dans le fichier spécifié.
Importer la configuration du pare-feu via la CLI
-
Connectez-vous via SSH au serveur sur lequel vous voulez copier la configuration du pare-feu d’un autre serveur. Vous devez ouvrir deux sessions SSH distinctes pour importer la configuration du pare-feu.
-
Dans la première session SSH, exécutez la commande suivante pour activer la protection par pare-feu. Si la protection par pare-feu est déjà activée, ignorez cette étape.
plesk ext firewall --enable
-
Dans la deuxième session SSH, exécutez la commande suivante pour confirmer la protection par pare-feu. Si la protection par pare-feu est déjà activée, ignorez cette étape.
plesk ext firewall --confirm
-
Dans la première session SSH, exécutez la commande suivante pour importer et activer la configuration du pare-feu :
plesk ext firewall --import -config <the file's URL or local path> && plesk ext firewall --apply
Par exemple
plesk ext firewall --import -config https://example.com/rules.json && plesk ext firewall --apply
ou
plesk ext firewall --import -config /tmp/rules.json && plesk ext firewall --apply
-
Dans la deuxième session SSH, exécutez la commande suivante pour confirmer l’import de la configuration du pare-feu.
plesk ext firewall --confirm
La configuration du pare-feu du fichier sera appliquée au serveur.