Étapes détaillées supplémentaires de résolution des problèmes SSH pour la connexion à une machine virtuelle Linux dans Azure
S’applique à : ✔️ Machines virtuelles Linux
Il existe de nombreuses raisons pour lesquelles le client SSH peut ne pas pouvoir accéder au service SSH sur la machine virtuelle. Si vous avez suivi les étapes de dépannage générales pour SSH, vous devez aussi résoudre le problème de connexion. Cet article vous guide tout au long des étapes de dépannage détaillées pour déterminer où la connexion SSH échoue et comment résoudre le problème.
Commencer par les étapes préliminaires
La figure suivante montre les composants concernés.
Les étapes suivantes vous aident à isoler la source du problème et à déterminer différentes solutions.
Vérifiez l’état de la machine virtuelle sur le portail. Dans le portail Azure, sélectionnez Machines virtuelles>Nom de la machine virtuelle.
Le volet d’état de la machine virtuelle doit afficher En cours d’exécution. Faites défiler vers le bas pour voir l’activité récente des ressources de calcul, de stockage et réseau.
Sélectionnez Paramètres pour examiner les points de terminaison, les adresses IP, les groupes de sécurité réseau et les autres paramètres.
La machine virtuelle doit avoir un point de terminaison défini pour le trafic SSH que vous pouvez consulter sous Points de terminaison ou Groupe de sécurité réseau. Les points de terminaison pour les machines virtuelles créées à l’aide de Resource Manager sont stockés dans un groupe de sécurité réseau. Vérifiez que les règles ont été appliquées au groupe de sécurité réseau et qu’elles sont référencées dans le sous-réseau.
Pour vérifier la connectivité réseau, contrôlez les points de terminaison configurés et déterminez si vous pouvez vous connecter à la machine virtuelle par le biais d’un autre protocole, comme HTTP ou un autre service.
Une fois ces étapes effectuées, essayez à nouveau la connexion SSH.
Découvrir la source du problème
Le client SSH sur votre ordinateur n’a peut-être pas pu se connecter au service SSH sur la machine virtuelle Azure en raison de problèmes ou de mauvaises configurations dans les domaines suivants :
- Ordinateur client SSH
- Appareil du périmètre de l’organisation
- Groupes de sécurité réseau
- Machine virtuelle Linux Azure
Source 1 : ordinateur client SSH
Pour vérifier que votre ordinateur n’est pas la source du problème, vérifiez qu’il peut établir des connexions SSH avec un autre ordinateur Linux local.
Si la connexion échoue, recherchez les problèmes suivants sur votre ordinateur :
- un paramètre de pare-feu local qui bloque le trafic SSH entrant ou sortant (TCP 22) ;
- un logiciel de proxy client installé localement qui empêche les connexions SSH ;
- un logiciel de surveillance réseau installé localement qui empêche les connexions SSH ;
- d’autres types de logiciels de sécurité qui surveillent le trafic ou autorisent/interdisent des types spécifiques de trafic.
Si une de ces conditions s’applique, désactivez temporairement le logiciel et tentez d’établir une connexion SSH à un ordinateur local pour connaître le motif du blocage de la connexion sur votre ordinateur. Ensuite, contactez votre administrateur réseau pour corriger les paramètres du logiciel et autoriser les connexions SSH.
Si vous utilisez l’authentification par certificat, vérifiez que vous avez ces autorisations sur le dossier .ssh dans votre répertoire de base :
- Chmod 700 ~/.ssh
- Chmod 644 ~/.ssh/*.pub
- Chmod 600 ~/.ssh/id_rsa (ou tout autre fichier contenant vos clés privées)
- Chmod 644 ~/.ssh/known_hosts (contient les hôtes auxquels vous vous êtes connecté via SSH)
Source 2 : appareil du périmètre de l’organisation
Pour vous assurer que votre appareil de périmètre de l’organisation n’est pas la cause du problème, vérifiez qu’un ordinateur directement connecté à Internet peut établir des connexions SSH à votre machine virtuelle Azure. Si vous accédez à la machine virtuelle via un VPN de site à site ou une connexion Azure ExpressRoute, passez à La source 3 : Groupes de sécurité réseau.
Si votre ordinateur n’est pas directement connecté à Internet, créez une machine virtuelle Azure dans son propre groupe de ressources ou service cloud, et utilisez-la. Pour plus d’informations, consultez Créer une machine virtuelle exécutant Linux dans Azure. Une fois le test terminé, supprimez le groupe de ressources ou la machine virtuelle et le service cloud.
Si vous pouvez créer une connexion SSH avec un ordinateur directement connecté à Internet, vérifiez sur l’appareil de périmètre de l’organisation :
- un pare-feu interne qui bloque le trafic SSH avec Internet ;
- un serveur proxy qui empêche les connexions SSH ;
- un logiciel de détection d’intrusion ou de surveillance réseau s’exécutant sur les appareils de votre réseau de périmètre qui empêche les connexions SSH.
Contactez votre administrateur réseau pour corriger les paramètres de vos appareils du périmètre de l’organisation pour permettre le trafic SSH avec Internet.
Source 3 : Groupes de sécurité réseau
Les groupes de sécurité réseau vous permettent de mieux contrôler le trafic entrant et sortant autorisé. Vous pouvez créer des règles qui s’étendent aux sous-réseaux et aux services cloud d’un réseau virtuel Azure. Vérifiez les règles de votre groupe de sécurité réseau pour vous assurer que le trafic SSH vers et depuis Internet est autorisé. Pour plus d'informations, consultez À propos des groupes de sécurité réseau.
Vous pouvez également utiliser Vérification IP pour valider la configuration NSG. Pour plus d’informations, consultez Vue d’ensemble de la surveillance réseau Azure.
Source 4 : Machine virtuelle Azure linux
La dernière source des problèmes possibles est la machine virtuelle Azure elle-même.
Si ce n’est déjà fait, suivez les instructions permettant de réinitialiser un mot de passe pour les machines virtuelles Linux.
Essayez une nouvelle fois de vous connecter à partir de votre ordinateur. Si l’échec se reproduit, l’une des raisons suivantes en est peut-être la cause :
- Le service SSH n’est pas en cours d’exécution sur la machine virtuelle cible.
- Le service SSH n’est pas à l’écoute sur le port TCP 22. Pour effectuer un test, installez un client telnet sur votre ordinateur local et exécutez « telnet NomServiceCloud.cloudapp.net 22 ». Cette étape détermine si la machine virtuelle autorise les communications entrantes et sortantes avec le point de terminaison SSH.
- Le pare-feu local sur la machine virtuelle cible a des règles qui empêchent le trafic SSH entrant ou sortant.
- Un logiciel de détection d’intrusion ou de surveillance réseau s’exécutant sur la machine virtuelle Azure empêche les connexions SSH.
Ressources supplémentaires
Pour plus d’informations sur la résolution des problèmes d’accès aux applications, consultez Résoudre les problèmes d’accès à une application s’exécutant sur une machine virtuelle Azure.
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.