Debian, Gnu/Linux, Trucs et astuces, Ubuntu

Restaurer votre mot de passe root oublié sous Ubuntu et Debian GNU/Linux

Attention : cet article présente des manipulations, si mal exécutées, elles peuvent casser votre système !

Il n’est pas de rare de croiser sur les forums des différentes distributions, des utilisateurs qui ne se souviennent plus de leurs mots de passe root. Malheureusement, certaines personnes n’ont pas ce réflexe d’aller chercher sur le Web une solution à leur problème, ou d’ouvrir un topic sur un forum pour demander l’aide, et préfèrent passer direct au mode bourrin et réinstaller leurs distros.

Pourtant, restaurer le mot de passe de root n’est pas une tâche impossible ou même difficile, et dans les pires des cas, ça ne vous prendra pas plus de 10 minutes. Voici donc un petit tutoriel, pour vous montrer comment récupérer votre mot de passe root.

La première chose à faire, c’est de booter votre distro en mode dépannage (recovery mode). Pour ça, appuyer sur la touche shift quand vous démarrez votre ordinateur, afin de faire apparaître le menu Grub. Une fois c’est fait, sélectionnez recovery mode puis appuyez sur e.  Repérez la ligne qui commence par “linux /boot/vmlinuz-…….”, et à sa fin ajouter init /bin/bash. Enfin, appuyez sur Ctrl-X et attendez que la séquence de démarrage se termine.

Dans le mode dépannage, la partition root est monté en lecture seulement. Il faut donc la remonter en écriture et lecture pour qu’on puisse restaurer le mot de passe root.

Première chose à faire, c’est de trouver la partition root, pour exécuter cette ligne de commande :

fdisk -l

Périphérique Amorce  Début        Fin      Blocs     Id  Système
/dev/sda1     *      1            1028159 51206144 83    Linux
/dev/sda2            1028160      ...      ...       ... ...
...

La partition qui nous intéresse est celle qui a le signe astérisque (*), donc la /dev/sda1.

mount -o remount,rw /dev/sda1 /

Maintenant on peut changer le mot de passe en exécutant la commande suivante :

passwd

Voilà, j’espère que ce tuto vous sera utile et qu’il vous sauvera un de ces jours ;)

15 Comments

  1. waouh !
    Je ne faisais pas spécialement parti des réinstalleurs de distribs, mais je ne connaissais pas cette méthode.
    Je passais par un live-cd et rehashai un nouveau pass, ou recopiai celui de mon user (semi-bourrin :D ).
    Merci pour l’astuce (trop ?) simple :)

    • crowd42

      Content que ça puisse aider :)

  2. fonctionne pour archlinux aussi …

    • crowd42

      À priori et logiquement, celà devrait fonctionner sur toutes les distros, mais comme j’essaye de ne parler que des choses que j’ai testé, j’ai évité de parler des autres distrib

  3. daufinsyd

    astucieux, je passais aussi par un livecd, mais cette méthode est mille fois plus pratique!
    merci !

  4. Et ça montre aussi que, quoi que l’on fasse, des que quelqu’un a accès à la machine il n’y a pas grand chose qui tienne la route en matière de sécurité. À l’heure ou de plus en plus de gens utilisent des portables (que l’on peut perdre ou se faire voler plus facilement) ça interpelle quand même.

  5. Tuxicoman

    Si tu rajoute l’option “single” à grub c’est encore plus simple non?

    http://www.debuntu.org/how-to-recover-root-password-under-linux-with-single-user-mode/

  6. @lordphoenix:
    Il y a une solution simple : chiffre ton disque. T’as juste un password de plus à donner au boot et ca resoud ton probleme.

    • Baronsed

      Non : ça protège l’accès à tes données la première fois. Mais si l’attaquant a eu un compte root, il y a fort à parier que, lors de ta prochaine connexion, un keylogger t’attendra.

  7. Sur Debian, ça ne suffit pas quand tu utilises “su” et non pas “sudo”. En effet, le bootloader (que ce soit init ou systemd) te demande d’entrer le mot de passe root ou d’appuyer sur Ctrl+D pour continuer un boot normal.

    Là, la solution est beaucoup plus fine : au lieu de faire un démarrage normal de ton OS, on outrepasse le bootloader et on exécute directement un shell qui a donc les droits root et peut modifier quoique ce soit (c’est le bootloader qui vérifie les droits des processus fils apparemment).

    Cette solution est donc bien plus universelle. Par contre, il faut penser que par défaut le shell bash a un clavier américain (en_US) et donc le mot de passe doit être taper en conséquence.

    Merci beaucoup, je ne serais plus un bourrin et je pourrais mettre en pratique mon cours sur les OS :)

  8. pascal jornat

    Salut
    j’ai eu un probleme similaire jeudi dernier
    j’ai supprimé mon mdp user pour ne pas avoir a mettre un mdp a chaque connexion
    en cherchant j’ai trouvé l’astuce suivante
    dans un terminal tapez
    passwd nom login
    le nom login est en general le nom que l’on trouve dans le dossier /home/… pour les debutants
    j’ai donc retapé mon mdp et je me connecte toujours sans mdp mais j’utilise mon mdp root a nouveau

  9. Quand je montre cette technique je n’oublie jamais de parler de la solution pour la bloquer.

    http://www.cromwell-intl.com/linux/linux-break-in-howto.html <== voir DEFENCE LEVEL 3

    • Me suis trompé c’est DEFENSE LEVEL 2 avec le grub-md5-crypt

  10. La meilleure méthode pour récupérer le mot de passe root perdu est d’utiliser le LiveCD. 1-Boot avec le LiveCD 2-Lacer la commande fdisk puis utiliser l’option p pour connaître le device relatif à votre partition boot et root.

Trackbacks / Pings

Laisser un commentaire