Publié le 15 avril 2020 - par

A l’aide ! Au secours ! J’ai oublié mon mot de passe

Que celui à qui ça n’est jamais arrivé me jette la première bière ! On ressort une carte Raspberry Pi sous Raspbian qu’on n’a pas touchée depuis des mois. On l’alimente et… grand moment de solitude. Bon sang pourquoi j’ai changé le mot de passe et… qu’est ce que j’ai bien pu mettre à la place de pi, raspberry ? Pas de panique, on va s’en sortir 😉 

Réinitialiser le mot de passe perdu sur le Raspberry Pi

Bon, en fait ça ne devrait pas arriver, mais on en est tous là. On nous recommande de ne pas utiliser deux fois le même mot de passe, de ne pas faire de phrase, pas les prénoms, les dates de naissances… A moins d’avoir un gestionnaire de mots de passe, c’est souvent la galère.

Et là justement sur ce Raspberry Pi utilisé comme AP (Point d’accès WiFi) il n’était pas question de laisser les identifiants par défaut. Trop risqué sur une expo. Alors hop! un mot de passe à la con que même les zaqueurs Russes mettront 3 milliards d’années à trouver. Un pt’tit postit au cas où et ça roule.

Mouais mais quand tu ressors le Raspberry Pi des mois après tu t’aperçois que le postit, il a dû rester collé sur la table du stand quand tu as rangé le soir en vitesse. pfff

Bon, on pourrait refaire la carte mais c’est ballot, il y avait tout ce qu’il fallait sur celle là. Opération “Sauvetage” on va remettre tout ça d’aplomb !

Passer Raspbian en mono-utilisateur

Protection Linux

Une machine Linux est en général bien protégée contre les attaques. Après si votre mot de passe est azerty ou 123456, on ne peut plus rien pour vous 😀 
Malgré tout, quand on a un accès physique à une machine on peut toujours prendre la main dessus, d’une façon ou d’une autre. Pourquoi croyez vous que les salles serveur sont munies de système d’entrée par code ou par carte d’accès ? Si on peut accéder à un serveur physiquement, on peut prendre la main.

Protection 100% sûre
Pour qu’un ordinateur soit 100% protégé, posez le sur une table au milieu d’une pièce vide. Éteignez le et débranchez toutes les connecteurs de l’unité centrale. Si personne ne vole la machine vos données sont en sécurité

Matériel nécessaire

Pour un accès physique au Raspberry Pi, il vous faudra :

  • Un ordinateur avec un lecteur de carte pour modifier la carte SD du Raspberry Pi
  • Un clavier + souris connecté au Raspberry Pi
  • Un écran connecté au Raspberry Pi

Modifier cmdline.txt

Éteignez le Raspberry Pi. Enlevez la carte micro SD du Raspberry Pi. Sur la machine possédant un lecteur de cartes SD, insérez la carte micro SD dans le lecteur. Ouvrez le fichier cmdline.txt qui est accessible sous Windows dans la partition /boot.

Sauvegardez le fichier
Le fichier cmdline.txt est crucial pour le démarrage de Raspbian. S’il n’est pas conforme, Raspbian risque de ne plus démarrer. Je vous conseille d’en faire une sauvegarde avant toute modification pour être capable de revenir en arrière, si besoin.

Ce fichier ne comporte et ne doit comporter q”une seule ligne qui contient toutes les commandes qui seront passées au noyau Linux au moment du démarrage. Les éditeurs classiques sous Windows (comme le bloc-note) ajoutent des caractères parasites qui vont perturber le lancement de Linux. Il est impératif d’utiliser un éditeur comme NotePad++ qui respecte le fichier et n’y ajoute pas de “cochonneries”.
NotePad++ est un éditeur de code source libre et gratuit (comme dans “parole libre” et aussi comme dans “bière gratuite”) qui supporte plusieurs langues. Il est conçu pour l’environnement MS Windows, son utilisation est régie par la licence GPL.

Ajoutez à la fin de la ligne : init=/bin/sh

Enregistrez le fichier et fermez NotePad++

Démarrage en mono-utilisateur

Replacez la carte micro SD dans le Raspberry Pi et mettez sous tension. Après l’écran coloré vous avez ceci à l’écran :

On a bien les 4 framboises pour les 4 cœurs (j’ai fait la manip sur un Raspberry Pi 4) et c’est /bin/sh qui a été lancé au démarrage. La machine n’a pas pu accéder aux tty (les terminaux) et elle passe en mode mono utilisateur.

C’est quoi, ce # ?

Si vous êtes néophyte en Linux, vous pouvez légitimement vous poser la question de la présence de ce # (non, ce n’est pas un Hashtag !) alors qu’habituellement c’est un $ qui figure sur la ligne de commande. Ce signe dièse signifie que vous accédez à la machine en tant que root, le super administrateur et… que vous avez tous les droits ! Au passage comme l’interpréteur sh a été lancé seul au démarrage, vous voici en clavier QWERTY. Il faudra y prendre garde en tapant commandes et mots de passe !

Modifier le mot de passe

Tapez passwd pi  (ah oui, on est en qwerty ! tapez plutôt pqsszd pi)  et suivez les instructions pour entrer un nouveau mot de passe (il faut le saisir 2 fois pour vérification et le mot de passe n’apparait pas pour des raisons de sécurité). Comme on est en QWERTY et qu’on ne voit pas ce qu’on tape apparaître sur l’écran, je vous conseille de choisir comme mot de passe pi ou toto dont les lettres ne changent pas quand on passe de QWERTY à AZERTY.

Il y a des (mal)chances que vous obteniez un message pas gentil, du genre

ou (à moitié) en français

Pas de bol, hein ! En fait en mono utilisateur le système de fichier est monté en mode lecture seule… essayez donc d’y écrire, tiens ! Alors que faire ? bin on va passer le système de fichier en mode lecture/écriture (rw in english)

tapez (attention on est toujours en QWERTY 😀 😀  )

Si la recherche des touches en QWERTY vous pose des soucis regardez par ici. Vous y trouverez les deux claviers, ça facilitera votre recherche.

Il n’y a plus qu’à rentrer le mot de passe que vous avez choisi comme indiqué précédemment :

Cette fois tout devrait bien se passer et le mot de passe est changé (updated successfully).

On va maintenant pouvoir arrêter le Raspberry Pi :

tapez sur la ligne de commande

le système s’arrête.

Débranchez le Raspberry Pi, sortez la carte micro SD.

Re-modifier cmdline.txt

Remettez la carte micro SD dans le lecteur de cartes sur le PC.
Vous pouvez (toujours avec NotePad++) retirer l’ajout (nit=/bin/sh) que vous avez fait en fin de ligne dans cmdline.txt ou tout simplement remettre le cmdline.txt d’origine que vous aviez pris la précaution de sauvegarder.

Redémarrer Raspbian

Remettez la carte micro SD dans le Raspberry Pi, mettez sous tension.

Au login tapez le nom d’utilisateur (pi par défaut si vous ne l’aviez pas changé) et le nouveau mot de passe (pi ou toto dans mon cas). Vous voici connecté au système d’exploitation de votre Raspberry Pi.

Dernière chose, on va remettre un “vrai” mot de passe :

puis entrez le mot de passe “définitif” (celui que vous n’oublierez pas cette fois, hein ?
Promis ?

Sources

 

Share Button

À propos François MOCQ

Électronicien d'origine, devenu informaticien, et passionné de nouvelles technologies, formateur en maintenance informatique puis en Réseau et Télécommunications. Dès son arrivée sur le marché, le potentiel offert par Raspberry Pi m’a enthousiasmé j'ai rapidement créé un blog dédié à ce nano-ordinateur (www.framboise314.fr) pour partager cette passion. Auteur de plusieurs livres sur le Raspberry Pi publiés aux Editions ENI.

14 réflexions au sujet de « A l’aide ! Au secours ! J’ai oublié mon mot de passe »

  1. Bud Spencer

    Juste pour info concernant ceci :”Les éditeurs classiques sous Windows (comme le bloc-note) ajoutent des caractères parasites …”
    L’os desktop le plus utilisé dans le monde est Windows 10 (>70% des os Windows (qui représentent >76% des os utilisés (Données Mars 2020)) et à titre d’info, depuis la version 1809 (Octobre 2018) le Notepad gère automatiquement les retours lr, cf et crlf et l’encodage d’origine du fichier .

    Répondre
  2. dyox

    Bonsoir François,

    La dernière fois où j’en ai eu besoin, j’ai utlisé la méthode de substitution.
    Par contre il faut accéder à la 2nd partion donc avec un linux natif ou alors un live CD | USB linux.

    On remplace / ajoute au fichier /etc/shadow

    pi:$6$1v7ih/Dwb/jLeK85$l9/CjEEMFQYmYBLyeFur.5Xv4qBg/evYVpjN9ZlQmTYzKHY3PSoVGDb0Pk35WfnCjNQ68EuHEgCrXFE8K0eY4/:18305:0:99999:7:::

    Le hashage correspond au mdp par défaut raspberry.

    Par contre je ne sais pas si c’est toujours d’actualité. A essayer

    Répondre
  3. Ping : A l’aide ! Au secours ! J’ai oublié mon mot de passe – Framboise 314, le Raspberry Pi à la sauce française…. – Jhc Info

  4. j2c

    J’utilise “souvent” cette méthode sur des machines sous linux;

    En modifiant la commande de démarrage sous lilo ou grub (quand ils ne sont pas protégés par un mot de passe);

    Merci pour cette astuce sous raspbian; Car le lanceur est un peu particulier sur cette carte;

    Je garde ma bière, car j’ai déjà perdu les identifiants d’une carte;. et j’en ai chié pour les retrouver;.
    La dernière en date, c’est un collègue qui me demande d’intervenir sur un raspi qui sert pour faire la supervision;. et le mot de passe;. je peux m’assoir dessus pour l’avoir 😉

    Astuce rapide 😉 et efficace.

    Répondre
  5. Jere

    Bonsoir,

    Merci pour l’astuce. Mais j’ai une question (je n’ai pas de raspi) : quid si la partition /home est chiffrée (si il y a bien plusieurs partition comme sous os linux). Ou alors si la seule partition est chiffrée.

    Cette astuce pour modifier le mot de passe ne remet elle pas en causse le chiffrement de partition ??

    Par avance merci.

    Répondre
    1. François MOCQ Auteur de l’article

      Bonjour
      je ne sais pas ! il faudrait faire une carte de test (pas trop le temps en ce moment)
      mais si le chiffrement repose sur le MDP j’ai bien peur que ça soit mort 🙁
      Ce tuto s’adresse plutôt à des débutants qui en général utilisent les fonctions basiques de Raspbian et ne cgiffrent pas les données…
      A mon avis quand on en arrive là… on n’oublie pas ses mots de passe (ou alors faut changer de métier 😀 )
      cdt
      francois

      Répondre
  6. Jere

    Merci pour votre retour. Je suis novice sur Linux.
    J’avais lu un article sur une méthode similaire pour un os linux et de memoire la partition chiffrée etait perdue (car la signature du chiffrelent ne correspondait pas la la signature du nouveau mot de passe, un truc du genre). D’un côté c’est rassurant.
    Ca doit etre pareil poir raspi.

    Merci pour ton site

    Répondre
  7. Gordon

    Salut à tous.

    Si c’est pour modifier le mot de passe du compte pi, il n’est pas nécssaire de faire tout cela.
    Il suffit de taper : sudo passwd pi

    Par contre, oui, il est nécssaire de suivre cette procédure pour le compte “root”.

    Suite à la remarque de dyox, il n’est pas nécssaire d’insérer dans le fichier “/etc/shadow”, le mot de passe hashé.
    Il suffit dans le fichier “/etc/passwd” à la ligne du compte root, de supprimer le “*” en deuxième position.
    Ce “*” signifie qu’il y a un mot de passe pour le compte root, et celui-ci est rensigné dans le fichier “/etc/shadow”.
    C’est cette procédure que j’utilise pour remettre un mot de passe en cas d’oublie.

    Par cette manipulation, il n’y a plus de mot de passe.
    Pour en mettre un nouveau, il suffit de taper “sudo -s” puis après “passwd” et de le saisir deux fois.

    @+

    Répondre
    1. François MOCQ Auteur de l’article

      Bonjour Gordon
      mais… si on n’a pas le mot de passe de pi (on l’a oublié) pour pouvoir taper
      sudo passwd pi
      il faut avoir ouvert une session… mais on ne peut pas …
      ??
      cdt
      françois

      Répondre
  8. Gordon

    Salut François.

    En principe, on a deux comptes dans la raspberry, root qui est l’administrateur et pi l’utilisateur.
    Le compte root doit resté accessible, quelque soit la bidouille que l’on fait dans pi.
    Si le compte root est disponible, on peut facilement modifier le mot de passe du compte pi.
    Inversement, pas de compte root disponible, pas de modification possible.

    Dans mon cas, j’accède aussi bien au compte root qu’au compte pi en ssh ou en accès direct avec clavier + écran.
    Il m’est arrivé, suite à une mauvaise manipulation de ne plus pouvoir accéder au compte pi.
    Heureusement que j’ai encore l’accès à root.

    Cordialement.
    @+

    Répondre

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

Complétez ce captcha SVP * Time limit is exhausted. Please reload CAPTCHA.

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.