One place for hosting & domains

      Essentials

      UFW Essentials : règles et commandes de pare-feu


      Introduction

      UFW est un outil de configuration de pare-feu pour les iptables qui est inclus dans Ubuntu par défaut. Sous forme d’aide-mémo, ce guide vous permettra de trouver rapidement les commandes UFW qui créeront des règles de pare-feu iptables qui sont utiles dans les scénarios classiques du quotidien. Ceci intègre des exemples UFW d’autorisation et de blocage de plusieurs services par port, interface de réseau ou adresse IP source.

      • S’il s’agit de vos premiers pas avec UFW pour la configuration de pare-feu, consultez notre introduction à UFW
      • La plupart des règles décrites ici supposent que vous utilisez le règlement UFW par défaut. En effet, il est configuré pour autoriser le trafic sortant et refuser le trafic entrant, par défaut. Par conséquent, vous pouvez autoriser le trafic de manière sélective par le biais des politiques par défaut.
      • Utilisez les sections suivantes pour réaliser ce que vous tentez de faire. La plupart des sections ne sont prédites sur aucune autre. Vous pouvez donc utiliser les exemples ci-dessous indépendamment
      • Utilisez le menu Contents sur le côté droit de cette page (sur les largeurs de page large) ou la fonction de recherche de votre navigateur pour localiser les sections dont vous avez besoin
      • Copiez et collez les exemples de ligne de commande donnés, en substituant les valeurs en rouge par vos propres valeurs

      N’oubliez pas que vous pouvez vérifier votre règlement UFW actuel avec sudo ufw status ou sudo ufw status verbose.

      Bloquer une adresse IP

      Pour bloquer toutes les connexions réseau qui proviennent d’une adresse IP spécifique, 15.15.15.51 par exemple, exécutez la commande suivante :

      • sudo ufw deny from 15.15.15.51

      Dans cet exemple, from 15.15.15.51 spécifie une adresse IP source de « 15.15.15.51 ». Si vous le souhaitez, vous pouvez spécifier ici un sous-réseau, tel que 15.15.15.0/24 à la place. L’adresse IP source peut être spécifiée dans toute règle de pare-feu, notamment une règle allow.

      Bloquer les connexions à une interface réseau

      Pour bloquer les connexions d’une adresse IP spécifique, par exemple 15.15.15.51 à une interface réseau spécifique, par exemple eth0, utilisez la commande suivante :

      • sudo ufw deny in on eth0 from 15.15.15.51

      C’est la même chose que dans l’exemple précédent, en ajoutant in on eth0. Vous pouvez spécifier l’interface réseau dans n’importe quelle règle de pare-feu. C’est un excellent moyen de limiter la règle à un réseau spécifique.

      Service : SSH

      Si vous utilisez un serveur cloud, vous voudrez probablement autoriser les connexions SSH entrantes (port 22) afin de pouvoir vous connecter à votre serveur et le gérer. Cette section vous montre de quelle manière configurer votre pare-feu avec plusieurs règles liées au SSH.

      Autoriser SSH

      Pour autoriser toutes les connexions SSH entrantes, exécutez la commande suivante :

      Voici une autre syntaxe qui vous permettra de spécifier le numéro de port du service SSH :

      Autoriser un SSH entrant à partir de l'adresse IP ou un sous-réseau spécifique

      Pour autoriser les connexions SSH entrantes à partir d'une adresse IP ou d'un sous-réseau spécifique, vous devez spécifier la source. Par exemple, si vous souhaitez autoriser l'intégralité du sous-réseau 15.15.15.0/24, vous devez exécuter la commande suivante :

      • sudo ufw allow from 15.15.15.0/24 to any port 22

      Autoriser un Rsync entrant à partir de l'adresse IP ou un sous-réseau spécifique

      Vous pouvez utiliser Rsync, qui fonctionne sur le port 873, pour transférer des fichiers d'un ordinateur à un autre.

      Pour autoriser les connexions rsync entrantes à partir d'une adresse IP ou d'un sous-réseau spécifique, vous devez spécifier l'adresse IP source et le port de destination. Par exemple, si vous souhaitez autoriser que l'intégralité du sous-réseau 15.15.15.0/24 soit en mesure de rsync sur votre serveur, exécutez la commande suivante :

      • sudo ufw allow from 15.15.15.0/24 to any port 873

      Service : serveur web

      Les serveurs Web, comme Apache et Nginx, écoutent généralement les requêtes des connexions HTTP et HTTPS sur le port 80 et 443, respectivement. Si votre politique pour le trafic entrant est configurée sur drop ou deny par défaut, il vous faudra créer des règles qui permettront à votre serveur de répondre à ces requêtes.

      Autoriser tous les HTTP entrants

      Pour autoriser toutes les connexions HTTP entrantes (port 80), exécutez la commande suivante :

      Vous pouvez également utiliser une autre syntaxe en spécifiant le numéro de port du service HTTP :

      Autoriser tous les HTTP entrants

      Exécutez la commande suivante pour autoriser toutes les connexions HTTPS entrantes (port 443) :

      Vous pouvez également utiliser une autre syntaxe en spécifiant le numéro de port du service HTTPS :

      Autoriser tout le trafic HTTP et HTTPS entrant

      Si vous souhaitez autoriser le trafic à la fois HTTP et HTTPS, vous pouvez créer une règle unique qui autorise les deux ports. Pour autoriser toutes les connexions HTTP et HTTPS entrantes (port 443), exécutez la commande suivante :

      • sudo ufw allow proto tcp from any to any port 80,443

      Notez que vous devez indiquer le protocole en utilisant proto tcp lorsque vous spécifiez plusieurs ports.

      Service : MySQL

      MySQL écoute les connexions des clients sur le port 3306. Si un client utilise votre serveur de base de données MySQL sur un serveur distant, vous devez avoir la garantie de bien autoriser ce trafic.

      Autoriser MySQL à partir de l'adresse IP ou un sous-réseau spécifique

      Pour autoriser les connexions MySQL entrantes à partir d'une adresse IP ou d'un sous-réseau spécifique, vous devez spécifier la source. Par exemple, si vous souhaitez autoriser l'intégralité du sous-réseau 15.15.15.0/24, vous devez exécuter la commande suivante :

      • sudo ufw allow from 15.15.15.0/24 to any port 3306

      Autoriser MySQL sur l'interface réseau spécifique

      Disons que vous disposez par exemple d'une interface réseau privée eth1, vous devez utiliser la commande suivante pour autoriser les connexions MySQL sur une interface réseau spécifique :

      • sudo ufw allow in on eth1 to any port 3306

      Service : PostgreSQL

      PostgreSQL écoute les connexions des clients sur le port 5432. Si un client utilise votre serveur de base de données PostgreSQL sur un serveur distant, vous devez avoir la garantie de bien autoriser ce trafic.

      PostgreSQL à partir d'une adresse IP ou un sous-réseau spécifique

      Pour autoriser les connexions PostgreSQL entrantes à partir d'une adresse IP ou d'un sous-réseau spécifique, vous devez spécifier la source. Par exemple, si vous souhaitez autoriser l'intégralité du sous-réseau 15.15.15.0/24, vous devez exécuter la commande suivante :

      • sudo ufw allow from 15.15.15.0/24 to any port 5432

      La deuxième commande qui autorise le trafic sortant des connexions PostgreSQL established, n'est nécessaire que si la politique OUTPUT n'est pas défini sur ACCEPT.

      Autoriser PostgreSQL sur une interface réseau spécifique

      Disons que vous disposez par exemple d'une interface réseau privée eth1, vous devez utiliser la commande suivante pour autoriser les connexions PostgreSQL sur une interface réseau spécifique :

      • sudo ufw allow in on eth1 to any port 5432

      La deuxième commande qui autorise le trafic sortant des connexions PostgreSQL established, n'est nécessaire que si la politique OUTPUT n'est pas défini sur ACCEPT.

      Service : Mail

      Les serveurs de courrier électronique, comme Sendmail et Postfix, écoutent sur une variété de ports en fonction des protocoles utilisés pour livrer les courriels. Si vous utilisez un serveur de messagerie, vous devez déterminer les protocoles que vous utilisez et autoriser les types de trafic applicables. Nous allons également vous montrer de quelle manière créer une règle pour bloquer les courriels SMTP sortants.

      Bloquer un courriel SMTP sortant

      Si votre serveur ne doit pas envoyer de courriel sortant, il vous faudra bloquer ce type de trafic. Pour bloquer les courriels SMTP sortants, qui utilise le port 25, exécutez la commande suivante :

      Vous configurez votre pare-feu de sorte qu'il drop tout le trafic sortant sur le port 25. Si vous devez rejeter un autre service en fonction de son numéro de port, vous pouvez l'utiliser à la place du port 25, vous devez simplement le remplacer.

      Autoriser tous les SMTP entrants

      Pour permettre à votre serveur de répondre aux connexions SMTP, port 25, exécutez la commande suivante :

      Remarque : il est courant que les serveurs SMTP utilisent le port 587 pour le courrier sortant.

      Autoriser tous les IMAP entrants

      Pour permettre à votre serveur de répondre aux connexions IMAP, port 143, exécutez la commande suivante :

      Autoriser tous les IMAPS entrants

      Pour permettre à votre serveur de répondre aux connexions IMAPS, port 993, exécutez la commande suivante :

      Autoriser tous les POP3 entrants

      Pour permettre à votre serveur de répondre aux connexions POP3, port 110, exécutez la commande suivante :

      Autoriser tous les POP3S entrants

      Pour permettre à votre serveur de répondre aux connexions POP3S, port 995, exécutez la commande suivante :

      Conclusion

      Ainsi, vous devriez couvrir plusieurs des commandes que l'on utilise couramment pour configurer un pare-feu en utilisant UFW. Bien entendu, UFW est un outil très flexible. N'hésitez pas à combiner les commandes avec différentes options selon vos besoins spécifiques si elles ne sont pas couvertes ici.

      Bonne chance !



      Source link