Dans ce tutoriel, nous allons vous montrer comment configurer un pare-feu sur CentOS 7. Pour ceux d'entre vous qui ne le savaient pas, FirewallD est une solution de pare-feu complète qui gère les règles iptables du système et fournit une interface D-Bus pour les utiliser. À partir de CentOS 7, FirewallD remplace iptables comme outil de gestion de pare-feu par défaut.
Cet article suppose que vous avez au moins des connaissances de base sur Linux, que vous savez utiliser le shell et, plus important encore, que vous hébergez votre site sur votre propre VPS. L'installation est assez simple et suppose que vous s'exécutent dans le compte root, sinon vous devrez peut-être ajouter 'sudo
‘ aux commandes pour obtenir les privilèges root. Je vais vous montrer étape par étape, configurer le pare-feu sur CentOS 7.
Prérequis
- Un serveur exécutant l'un des systèmes d'exploitation suivants :CentOS 7.
- Il est recommandé d'utiliser une nouvelle installation du système d'exploitation pour éviter tout problème potentiel.
- Accès SSH au serveur (ou ouvrez simplement Terminal si vous êtes sur un ordinateur).
- Un
non-root sudo user
ou l'accès à l'root user
. Nous vous recommandons d'agir en tant qu'non-root sudo user
, cependant, car vous pouvez endommager votre système si vous ne faites pas attention lorsque vous agissez en tant que root.
Configurer le pare-feu sur CentOS 7
Étape 1. Tout d'abord, commençons par nous assurer que votre système est à jour.
yum clean all yum -y update
Étape 2. Installation de FirewallD sur CentOS 7.
Firewalld est installé par défaut sur CentOS 7, mais s'il n'est pas installé sur votre système, vous pouvez exécuter la commande suivante pour son installation :
sudo yum install firewalld
Après avoir installé FirewallD, vous pouvez activer le service et redémarrer votre serveur. N'oubliez pas que l'activation de FirewallD entraînera le démarrage du service au démarrage :
sudo systemctl start firewalld sudo systemctl enable firewal sudo reboot
Nous pouvons vérifier que le service est en cours d'exécution et accessible en tapant :
sudo firewall-cmd --state
Étape 3. Installation et configuration de FirewallD sur CentOS 7.
FirewallD utilise des services et des zones au lieu des règles et des chaînes iptables. Par défaut, les zones suivantes sont disponibles :
- déposer – Supprimez tous les paquets réseau entrants sans réponse, seules les connexions réseau sortantes sont disponibles.
- bloquer – Rejeter tous les paquets réseau entrants avec un message ICMP-host-interdit, Seules les connexions réseau sortantes sont disponibles.
- public – Seules les connexions entrantes sélectionnées sont acceptées, pour une utilisation dans les espaces publics
- externe Pour les réseaux externes dont le masquage est activé, seules les connexions entrantes sélectionnées sont acceptées.
- DMZ – Zone démilitarisée DMZ, accessible au public avec un accès limité au réseau interne, seules les connexions entrantes sélectionnées sont acceptées.
- fonctionne – Pour les ordinateurs de votre région d'origine, seules les connexions entrantes sélectionnées sont acceptées.
- accueil – Pour les ordinateurs de votre région d'origine, seules les connexions entrantes sélectionnées sont acceptées.
- interne -Pour les ordinateurs de votre réseau interne, seules les connexions entrantes sélectionnées sont acceptées.
- de confiance – Toutes les connexions réseau sont acceptées.
Pour répertorier toutes les zones disponibles, exécutez :
firewall-cmd --get-zones work drop internal external trusted home dmz public block
Pour lister la zone par défaut :
firewall-cmd --get-default-zone public
Pour changer la zone par défaut :
firewall-cmd --set-default-zone=dmz firewall-cmd --get-default-zone dmz
Par exemple, voici comment vous pouvez configurer votre pare-feu VPS avec FirewallD si vous utilisiez un serveur Web, SSH sur le port 8888 ou un serveur de messagerie.
Tout d'abord, nous allons définir la zone par défaut sur DMZ.
firewall-cmd --set-default-zone=dmz
Pour ajouter des règles de service permanentes pour HTTP et HTTPS à la zone DMZ, exécutez :
firewall-cmd --zone=dmz --add-service=http --permanent firewall-cmd --zone=dmz --add-service=https --permanent
Puisque le port SSH est changé en 7022, nous allons supprimer le service ssh (port 22) et ouvrir le port 8888
firewall-cmd --remove-service=ssh --permanent firewall-cmd --add-port=8888/tcp --permanent
Pour mettre en œuvre les modifications, nous devons recharger le pare-feu avec :
firewall-cmd --reload
Enfin, vous pouvez lister les règles avec :
### firewall-cmd --list-all dmz target: default icmp-block-inversion: no interfaces: sources: services: http https imap imaps pop3 pop3s smtp smtps ports: 7022/tcp protocols: masquerade: no forward-ports: sourceports: icmp-blocks: rich rules:
Étape 4. Désactivez le pare-feu sur CentOS 7.
Vous pouvez arrêter temporairement le service FirewallD avec la commande suivante :
sudo systemctl stop firewalld
Pour désactiver définitivement le pare-feu sur votre système CentOS 7, suivez les étapes ci-dessous :
sudo systemctl disable firewalld
Sortie :
Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
Félicitations ! Vous avez configuré le pare-feu avec succès. Merci d'avoir utilisé ce didacticiel pour installer FirewallD sur le système CentOS 7. Pour obtenir de l'aide supplémentaire ou des informations utiles, nous vous recommandons de consulter le site Web officiel de FirewallD.