Notes
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
S’applique à : ✔️ Machines virtuelles Linux
Cet article explique comment utiliser un pare-feu non compliqué (UFW) pour diagnostiquer et résoudre les problèmes de connectivité sur une machine virtuelle Azure Ubuntu.
UFW est une interface conviviale pour la gestion d’un pare-feu Netfilter dans les distributions Linux, en particulier dans Ubuntu. Son objectif principal est de faciliter la gestion d’un pare-feu pour les utilisateurs susceptibles de constater que la configuration iptables
directe est difficile et complexe. UFW est l’outil de configuration de pare-feu par défaut pour Ubuntu.
Prerequisites
- Privilèges racines.
- Accès à la console série.
- Installé
net-tools
,iproute2
etnetcat-openbsd
packages.
Comment vérifier si un port est fermé dans la machine virtuelle Ubuntu avec UFW
Note
Par défaut, UFW n’est pas activé sur les machines virtuelles Ubuntu créées à l’aide d’images à partir du Place de marché Azure. L’activation d’UFW sur votre machine virtuelle ferme tous les ports, y compris le port 22 pour les services SSH.
Vérifiez l’état UFW :
sudo ufw status
Dans la sortie :
Status: active
indique que UFW est en cours d’exécution.Status: inactive
indique que UFW n’est pas actif et que le port ne sera pas bloqué par UFW.
Répertoriez les règles UFW actuelles :
sudo ufw status numbered
Cette commande répertorie toutes les règles. Il indique si des ports spécifiques sont autorisés ou refusés. Si un port n’apparaît pas dans la liste, il est refusé par défaut.
Vérifiez les règles UFW pour déterminer si un port particulier est refusé. Par exemple, pour vérifier si le port SSH 22 est refusé, exécutez la commande suivante :
sudo ufw status | grep '22'
- Si la sortie s’affiche
22/tcp ALLOW
, le port est autorisé via le pare-feu. - Si aucune sortie n’apparaît ou si la règle s’affiche
22/tcp DENY
, le port est refusé.
- Si la sortie s’affiche
Utilisez la ou
ss
lanetstat
commande pour vérifier si un port est en cours d’utilisation.tcp6 0 0 :::22 :::* LISTEN
- L’exemple de sortie montre qu’un service utilise ou écoute sur le port 22. Toutefois, cela ne confirme pas que le port est autorisé ou débloqué par le pare-feu. Même si un port est bloqué par le pare-feu, il peut toujours apparaître comme LISTEN dans la sortie.
- Aucune sortie indique que le port n’est pas écouté par un service.
Testez la connectivité de port à l’aide de
nc
:sudo nc -zv <server-ip> 22
- Si la connexion échoue, mais que le port est écouté, cela confirme que le port est refusé par le pare-feu.
- Une connexion réussie signifie que le port est autorisé.
Si le port que vous vérifiez n’apparaît pas dans les règles UFW ou s’il est marqué comme DENY
, UFW bloque le port. En outre, si vous ne pouvez pas vous connecter au port à l’aide d’outils externes, le port est bloqué.
Utilisation d’UFW
Scénario 1 : Autoriser la connectivité SSH pour toutes les adresses IP
Exécutez la commande suivante :
sudo ufw allow ssh
Rule added
Vérifiez la règle :
sudo ufw status
Status: active
To Action From
-- ------ ----
22/tcp ALLOW Anywhere
Scénario 2 : Autoriser SSH (port 22) pour une adresse IP spécifique
Exécutez la commande suivante :
sudo ufw allow from 10.0.10.10 to any port 22 proto tcp
Vérifiez la règle :
sudo ufw status
Status: active
To Action From
-- ------ ----
22/tcp ALLOW 10.0.10.10
Scénario 3 : Autoriser un sous-réseau à se connecter au port 22
Exécutez la commande suivante :
sudo ufw allow from 10.1.0.0/24 to any port 22 proto tcp
Vérifiez la règle :
sudo ufw status
Status: active
To Action From
-- ------ ----
22/tcp ALLOW 10.0.10.10
22/tcp ALLOW 10.1.0.0/24
Scénario 4 : Refuser SSH pour toutes les adresses IP
Exécutez les commandes suivantes :
sudo ufw deny ssh
sudo ufw status
Status: active
To Action From
-- ------ ----
22/tcp ALLOW 10.0.10.10
22/tcp ALLOW 10.1.0.0/24
22/tcp DENY Anywhere
Important
L’ordre des règles est important, car UFW traite les règles dans l’ordre dans lequel elles sont répertoriées. Cela signifie qu’une fois qu’une règle correspond, UFW applique cette règle et arrête le traitement de règles supplémentaires pour cette connexion.
Suppression d'une règle
Si vos règles ne sont pas dans l’ordre correct, vous pouvez supprimer une règle, puis la restaurer pour modifier l’ordre.
Pour supprimer une règle, vous pouvez utiliser son nombre à partir de la ufw status numbered
sortie. Par exemple, pour supprimer le numéro de règle 3 :
sudo ufw status numbered
Status: active
To Action From
-- ------ ----
[ 1] 22/tcp ALLOW 10.0.10.10
[ 2] 22 ALLOW 10.1.0.0/24
[ 3] 22/tcp DENY IN Anywhere
sudo ufw delete 3
Pour plus d’informations, consultez : Ubuntu - Communauté UFW
Contactez-nous pour obtenir de l’aide
Pour toute demande ou assistance, créez une demande de support ou posez une question au support de la communauté Azure. Vous pouvez également soumettre des commentaires sur les produits à la communauté de commentaires Azure.
Exclusion de responsabilité de tiers
Les produits tiers mentionnés dans le présent article sont fabriqués par des sociétés indépendantes de Microsoft. Microsoft exclut toute garantie, implicite ou autre, concernant les performances ou la fiabilité de ces produits.