introduction
UFW est un outil de configuration de pare-feu pour iptables inclus avec Ubuntu par défaut. Ce guide de style aide-mémoire fournit une référence rapide aux commandes UFW qui créeront des règles de pare-feu iptables sont utiles dans des scénarios courants et courants. Cela inclut des exemples UFW permettant et bloquant divers services par port, interface réseau et adresse IP source.
Comment utiliser ce guide
-
Si vous commencez à utiliser UFW pour configurer votre pare-feu, consultez notre https://www.digitalocean.com/community/tutorials/how-to-set-up-a-firewall-with-ufw-on-ubuntu -14-04 [introduction à UFW]
-
La plupart des règles décrites ici supposent que vous utilisez le jeu de règles UFW par défaut. Autrement dit, il est configuré pour autoriser le trafic sortant et le trafic entrant, via les stratégies par défaut, de sorte que vous devez autoriser le trafic de manière sélective dans
-
Utilisez les sections suivantes applicables à ce que vous essayez d’atteindre. La plupart des sections ne sont basées sur aucune autre, vous pouvez donc utiliser les exemples ci-dessous indépendamment
-
Utilisez le menu Contenu situé à droite de cette page (en largeur 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 remplaçant les valeurs en rouge par vos propres valeurs.
N’oubliez pas que vous pouvez vérifier votre ensemble de règles UFW actuel avec + sudo ufw status +
ou + sudo ufw status verbose +
.
Bloquer une adresse IP
Pour bloquer toutes les connexions réseau provenant d’une adresse IP spécifique, par exemple + 15.15.15.51 +
, exécutez la commande suivante:
sudo ufw deny from
Dans cet exemple, + à partir de 15.15.15.51 +
spécifie une adresse IP * source * de «15.15.15.51». Si vous le souhaitez, un sous-réseau, tel que + 15.15.15.0 / 24 +
, peut être spécifié ici à la place. L’adresse IP source peut être spécifiée dans n’importe quelle règle de pare-feu, y compris une règle * allow *.
Bloquer les connexions à une interface réseau
Pour bloquer les connexions à partir d’une adresse IP spécifique, par ex. + 15.15.15.51 +
, à une interface réseau spécifique, par exemple. + eth0 +
, utilisez cette commande:
sudo ufw deny in on eth0 from
Ceci est identique à l’exemple précédent, avec l’ajout de + in sur eth0 +
. L’interface réseau peut être spécifiée dans n’importe quelle règle de pare-feu et constitue un excellent moyen de limiter la règle à un réseau particulier.
Service: SSH
Si vous utilisez un serveur cloud, vous souhaiterez probablement autoriser les connexions SSH entrantes (port 22) afin de pouvoir vous connecter et gérer votre serveur. Cette section explique comment configurer votre pare-feu avec diverses règles liées à SSH.
Autoriser SSH
Pour autoriser toutes les connexions SSH entrantes, exécutez cette commande:
sudo ufw allow ssh
Une autre syntaxe consiste à spécifier le numéro de port du service SSH:
sudo ufw allow 22
Autoriser le SSH entrant à partir d’une adresse IP ou d’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, spécifiez la source. Par exemple, si vous souhaitez autoriser l’ensemble du sous-réseau + 15.15.15.0 / 24 +
, exécutez la commande suivante:
sudo ufw allow from to any port 22
Autoriser Rsync entrant à partir d’une adresse IP ou d’un sous-réseau spécifique
Rsync, qui fonctionne sur le port 873, peut être utilisé 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, spécifiez l’adresse IP source et le port de destination. Par exemple, si vous souhaitez autoriser l’ensemble du sous-réseau + 15.15.15.0 / 24 +
à rsync sur votre serveur, exécutez la commande suivante:
sudo ufw allow from to any port 873
Service: serveur Web
Les serveurs Web, tels qu’Apache et Nginx, écoutent généralement les demandes sur les ports 80 et 443 pour les connexions HTTP et HTTPS, respectivement. Si votre stratégie par défaut pour le trafic entrant est définie pour être supprimée ou refusée, vous souhaiterez créer des règles permettant à votre serveur de répondre à ces demandes.
Autoriser tous les HTTP entrants
Pour autoriser toutes les connexions HTTP entrantes (port 80), exécutez cette commande:
sudo ufw allow http
Une autre syntaxe consiste à spécifier le numéro de port du service HTTP:
sudo ufw allow 80
Autoriser tous les HTTPS entrants
Pour autoriser toutes les connexions HTTPS entrantes (port 443), exécutez cette commande:
sudo ufw allow https
Une autre syntaxe consiste à spécifier le numéro de port du service HTTPS:
sudo ufw allow 443
Autoriser tous les HTTP et HTTPS entrants
Si vous souhaitez autoriser le trafic HTTP et HTTPS, vous pouvez créer une seule règle autorisant les deux ports. Pour autoriser toutes les connexions HTTP et HTTPS (port 443) entrantes, exécutez cette commande:
sudo ufw allow proto tcp from any to any port 80,443
Notez que vous devez spécifier le protocole, avec + proto tcp +
, lorsque vous spécifiez plusieurs ports.
Service: MySQL
MySQL écoute les connexions client sur le port 3306. Si votre serveur de base de données MySQL est utilisé par un client sur un serveur distant, vous devez vous assurer d’autoriser ce trafic.
Autoriser MySQL à partir d’une adresse IP spécifique ou d’un sous-réseau
Pour autoriser les connexions MySQL entrantes à partir d’une adresse IP ou d’un sous-réseau spécifique, spécifiez la source. Par exemple, si vous souhaitez autoriser l’ensemble du sous-réseau + 15.15.15.0 / 24 +
, exécutez la commande suivante:
sudo ufw allow from to any port 3306
Autoriser MySQL sur une interface réseau spécifique
Pour autoriser les connexions MySQL à une interface réseau spécifique, par exemple, vous avez une interface réseau privée + eth1 +
, par exemple, utilisez cette commande:
sudo ufw allow in on to any port 3306
Service: PostgreSQL
PostgreSQL écoute les connexions client sur le port 5432. Si votre serveur de base de données PostgreSQL est utilisé par un client sur un serveur distant, vous devez être sûr d’autoriser ce trafic.
PostgreSQL depuis une adresse IP spécifique ou un sous-réseau
Pour autoriser les connexions PostgreSQL entrantes à partir d’une adresse IP ou d’un sous-réseau spécifique, spécifiez la source. Par exemple, si vous souhaitez autoriser l’ensemble du sous-réseau + 15.15.15.0 / 24 +
, exécutez la commande suivante:
sudo ufw allow from to any port 5432
La deuxième commande, qui autorise le trafic sortant des connexions * établies * PostgreSQL, n’est nécessaire que si la politique + OUTPUT +
n’est pas définie sur + ACCEPT +
.
Autoriser PostgreSQL vers une interface réseau spécifique
Pour autoriser les connexions PostgreSQL vers une interface réseau spécifique, par exemple, vous avez une interface réseau privée + eth1 +
, par exemple, utilisez cette commande:
sudo ufw allow in on to any port 5432
La deuxième commande, qui autorise le trafic sortant des connexions * établies * PostgreSQL, n’est nécessaire que si la politique + OUTPUT +
n’est pas définie sur + ACCEPT +
.
Service: courrier
Les serveurs de messagerie, tels que Sendmail et Postfix, écoutent sur différents ports en fonction des protocoles utilisés pour la distribution du courrier. Si vous utilisez un serveur de messagerie, déterminez les protocoles que vous utilisez et autorisez les types de trafic appropriés. Nous vous montrerons également comment créer une règle pour bloquer le courrier SMTP sortant.
Bloquer le courrier SMTP sortant
Si votre serveur ne doit pas envoyer de courrier sortant, vous pouvez bloquer ce type de trafic. Pour bloquer le courrier SMTP sortant, qui utilise le port 25, exécutez cette commande:
sudo ufw deny out 25
Ceci configure votre pare-feu pour * supprimer * tout le trafic sortant sur le port 25. Si vous devez rejeter un service différent par son numéro de port, remplacez-le simplement au port 25.
Autoriser tous les SMTP entrants
Pour permettre à votre serveur de répondre aux connexions SMTP, port 25, exécutez cette commande:
sudo ufw allow 25
Autoriser tous les IMAP entrants
Pour permettre à votre serveur de répondre aux connexions IMAP, port 143, exécutez cette commande:
sudo ufw allow 143
Autoriser tous les IMAPS entrants
Pour permettre à votre serveur de répondre aux connexions IMAPS, port 993, exécutez cette commande:
sudo ufw allow 993
Autoriser tous les POP3 entrants
Pour permettre à votre serveur de répondre aux connexions POP3, port 110, exécutez cette commande:
sudo ufw allow 110
Autoriser tous les POP3S entrants
Pour permettre à votre serveur de répondre aux connexions POP3S, port 995, exécutez cette commande:
sudo ufw allow 995
Conclusion
Cela devrait couvrir la plupart des commandes couramment utilisées lors de l’utilisation de UFW pour configurer un pare-feu. Bien entendu, UFW est un outil très flexible, alors n’hésitez pas à mélanger les commandes avec différentes options pour répondre à vos besoins spécifiques si elles ne sont pas traitées ici.
Bonne chance!