Réinitialiser le mot de passe root sous Linux

root

Ciel mon mot de passe (again) !

Le compte root est indipensable pour administrer une machine Linux. Il est par défaut le seul compte habilité à installer de nouvelles applications et à modifier la configuration de votre serveur.

Cet article vous présente quelques tactiques pour récupérer l'accès au compte root dont vous avez oublié le mot de passe.

Réinitialiser votre mot de passe depuis une console root

Commençons par la situation idéale.
Vous avez oublié votre mot de passe mais vous avez accès à une console root. Vous pouvez réinitialiser le mot de passe root en ligne de commande :

# password
Enter new UNIX password: 
Retype new UNIX password: 
passwd: password updated successfully

Cracker votre mot de passe depuis une console avec privilège

Si vous avez suffisamment de privilège pour lire le fichier /etc/shadow sur votre serveur ou dans une sauvegarde.
Vous pouvez tenter de cracker votre mot de passe avec le logiciel John the Ripper.
Installez john et lancez la commande sur le fichier shadow :

$ john shadow

Attendez de quelques minutes à plusieurs jours en fonction de la complexité du mot de passe. Vous obtiendrez une sortie de ce type :

Created directory: /root/.john
Loaded 1 password hash (FreeBSD MD5 [32/32])
Hello!              (root)

Dans cet exemple, le mot de passe est Hello!.

Réinitialiser le mot de passe root en mode single user

Cette approche nécessite un accès à la console physique du serveur.
Par défaut, le niveau 1 entraine l'arrêt de tous les services type serveur Web, vpn, mail, sshd... Si vous ne disposez pas d'un accès physique à votre serveur, votre serveur sera inaccessible depuis Internet le temps qu'un opérateur le redémarre.

Si vous avez les droits nécessaire et qu'aucun mot de passe vous est demandé, vous obtenez une invite root, symbolisée par le caractère #, et vous pouvez réinitialiser le mot de passe :

$ init 1
# passwd

Sinon, vous devrez procéder à un reboot hard de la machine, bouton reset ou on/off.

La majorité des distributions Linux sont installées avec le logiciel Grub pour gérer l'initialisation du boot.
A l'invite Grub :

  • positionnez le curseur sur l'OS souhaité
  • éditez les options de démarrage en appuyant sur la touche e.
  • ajoutez à la fin de la ligne le chiffre 1 et validez.
  • appuyez sur b pour démarrer.

A l'invite, il est possible que la partition soit montée en lecture seule. Pour pouvoir la modifier, lancez la commande suivante :

# mount -o remount,rw /

Puis, saisissez votre nouveau mot de passe :

# passwd