Guide pratique pour réinitialiser un mot de passe Linux local sur des machines virtuelles Azure
S’applique à : ✔️ Machines virtuelles Linux
Cet article présente trois méthodes de réinitialisation de mots de passe Linux locaux sur les machines virtuelles. Si le compte d’utilisateur a expiré ou si vous souhaitez créer un compte, utilisez les méthodes suivantes. Elles vous permettront de créer un compte d’administrateur local et de retrouver l’accès à la machine virtuelle.
Réinitialiser le mot de passe à l’aide de l’agent Linux Azure
Vous pouvez réinitialiser le mot de passe sans attacher le disque du système d’exploitation à une autre machine virtuelle. Cette méthode nécessite que l’Agent Linux Azure soit installé sur la machine virtuelle affectée.
Assurez-vous que le service de l’agent Linux Azure (waagent) s’exécute sur la machine virtuelle affectée et est dans un état prêt dans le portail Azure.
Configurez les variables d’environnement, puis utilisez Azure CLI ou Azure Cloud Shell pour réinitialiser le mot de passe :
AZ_RESOURCE_GROUP="YourResourceGroupName" AZ_VM_NAME="VMname" AZ_ADMIN_USER="adminName" AZ_MSADMIN_PASS="newPassword" az vm user update -u $AZ_ADMIN_USER -p $AZ_MSADMIN_PASS -g $AZ_RESOURCE_GROUP -n $AZ_VM_NAME
Essayez d’accéder à la machine virtuelle.
Pour mettre à jour la clé SSH, consultez l’article Gérer les utilisateurs administratifs, SSH à l’aide de l’extension VMAccess avec Azure CLI.
Vous pouvez également réinitialiser le mot de passe ou la clé SSH à l’aide de la fonctionnalité Réinitialiser le mot de passe disponible dans le portail Azure.
Pour plus d’informations, consultez Extension vmaccess pour Linux.
Réinitialiser le mot de passe à l’aide de la console série en mode mono-utilisateur
Vous pouvez utiliser la console série pour réinitialiser le compte admin user
ou root
via le mode mono-utilisateur pour l’accès aux machines virtuelles.
Utilisez le mode mono-utilisateur pour réinitialiser ou ajouter un mot de passe.
Vérifiez que l’authentification par mot de passe est activée sur le serveur OpenSSH si vous essayez de vous connecter au serveur à l’aide de l’authentification SSH et par mot de passe.
Vérifiez si la valeur
PasswordAuthentitcation
est définie suryes
ouno
dans/etc/ssh/sshd_config
en exécutant la commande suivante :egrep "^PasswordAuthentication" /etc/ssh/sshd_config
Si la valeur
PasswordAuthentication
est définie surno
, utilisez un éditeur de texte tel quevi
ounano
pour remplacer la valeur paryes
.
Créez un mot de passe pour le compte
admin user
ouroot
en exécutant la commandepasswd
:passwd <admin_user>
Vérifiez si
SElinux
est en modeenforcing
dans/etc/sysconfig/selinux
en exécutant la commande suivante :cat /etc/sysconfig/selinux
Si
SElinux
est en modeenforcing
, assurez-vous queSElinux
autorise les modifications apportées au fichier avec la commandepasswd
. Une fois le mot de passe modifié, vous pouvez exécuter la commande suivante pour réétiqueter le système de fichiers afin de faciliter le chargement de la modification.touch /.autorelabel
Redémarrez la machine virtuelle en exécutant la commande suivante :
/usr/sbin/reboot -f
Essayez d’accéder à la machine virtuelle.
Réinitialiser le mot de passe à l’aide d’une machine virtuelle de récupération
Cette méthode a été testée à l’aide des distributions et versions Linux prises en charge.
Note
Si vous rencontrez des problèmes qui affectent une appliance réseau virtuelle Azure, cette méthode ne s’applique pas à votre situation. À la place, vous devez contacter le fournisseur de l’appliance réseau virtuelle pour obtenir des instructions sur la façon de réinitialiser le mot de passe en toute sécurité.
Vous pouvez exécuter les commandes de réparation de machine virtuelle pour créer une machine virtuelle de réparation à laquelle est connectée une copie du disque de système d’exploitation de la machine virtuelle affectée. Ensuite, montez la copie des systèmes de fichiers du système d’exploitation dans la machine virtuelle de réparation à l’aide de l’environnement chroot.
Note
Vous pouvez également créer manuellement une machine virtuelle de secours à l’aide du portail Azure. Pour plus d’informations, consultez l’article Résoudre les problèmes d’une machine virtuelle Linux en attachant le disque du système d’exploitation à une machine virtuelle de récupération à l’aide du portail Azure.
Exécutez les commandes az vm repair create suivantes pour créer une copie du disque du système d’exploitation. Ensuite, le disque est automatiquement attaché à une machine virtuelle de récupération.
AZ_RESOURCE_GROUP="YourResourceGroupName" AZ_VM_NAME="VMname" AZ_ADMIN_USER="userName" AZ_MSADMIN_PASS="newPassword" az vm repair create -g $AZ_RESOURCE_GROUP -n $AZ_VM_NAME --repair-username $AZ_ADMIN_USER --repair-password "$AZ_MSADMIN_PASS" --verbose
Connectez-vous à la machine virtuelle de réparation et résolvez les problèmes liés à l’environnement chroot.
Vérifiez que l’authentification par mot de passe est activée sur le serveur OpenSSH si vous essayez de vous connecter au serveur à l’aide de l’authentification SSH et par mot de passe.
Vérifiez si la valeur
PasswordAuthentitcation
est définie suryes
ouno
dans/etc/ssh/sshd_config
en exécutant la commande suivante :egrep "^PasswordAuthentication" /etc/ssh/sshd_config
Si la valeur
PasswordAuthentication
est définie surno
, utilisez un éditeur de texte tel quevi
ounano
pour remplacer la valeur paryes
.
Créez un mot de passe pour le compte
admin user
ouroot
en exécutant la commandepasswd
:passwd <admin_user>
Vérifiez si
SElinux
est en modeenforcing
dans/etc/sysconfig/selinux
en exécutant la commande suivante :cat /etc/sysconfig/selinux
Si
SElinux
est en modeenforcing
, assurez-vous queSElinux
autorise les modifications apportées au fichier avec la commandepasswd
. Une fois le mot de passe modifié, vous pouvez exécuter la commande suivante pour réétiqueter le système de fichiers afin de faciliter le chargement de la modification.touch /.autorelabel
Quittez l’environnement chroot.
Remontez le disque du système d’exploitation sur la machine virtuelle affectée en permutant les disques du système d’exploitation :
az vm repair restore -g $AZ_RESOURCE_GROUP -n $AZ_VM_NAME --verbose
Essayez d’accéder à la machine virtuelle.
Prochaines étapes
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.