web-dev-qa-db-fra.com

Comment afficher mon utilisateur / mot de passe actuel dans bash?

J'installe actuellement Bash sur Ubuntu sous Windows.

J'ai installé Bash et configuré l'utilisateur normalement. Tout fonctionnait bien, mais je ne voulais pas continuer à faire Sudo avec chaque commande. J'ai désinstallé puis réinstallé 'Bash sur Ubuntu sur Wwindows' avec

lxrun /install /y

Il a enregistré le nom d'utilisateur, mais pas le mot de passe précédent. J'essaie d'afficher le mot de passe actuel de l'utilisateur que j'utilise.

Comment afficher le mot de passe de mon utilisateur dans Bash?

7
Joseph Palacio

Il n'est pas possible de voir quels sont les mots de passe des utilisateurs du système d'exploitation. Les mots de passe sont stockés sous une forme hachée . Vous ne pouvez vérifier que si vous en connaissez un. Non seulement cela constituerait une menace pour la sécurité, mais les mots de passe devraient également être modifiés régulièrement. Et le nouveau ne devrait pas être trop similaire à l'ancien. Mais dans un environnement domestique (par opposition à un environnement professionnel), cela ne devrait pas vous déranger avec votre ligne de commande.

7
user147505

Vous ne pouvez pas réellement, votre mot de passe est haché et n'est décodé que dans un sens.

Pour résumer, imaginez chaque fois que vous essayez de vous connecter, cela fera quelque chose comme

si hachage ('mot de passe' currentHash;) ==

faire grantAccess ();

et chaque fois que vous enregistrez un mot de passe,

* hashedPass = hash ('mot de passe');

writeOnShadowFile ('hashedPass') *

C'est par des normes de sécurité de hachage éviter de stocker un vrai mot de passe, mais plutôt de stocker le résultat d'une fonction et de l'évaluer de cette façon. Les fonctions de hachage sont destinées à effectuer une grande partie de la conversion de valeur d'origine avec perte de données, et en raison de la perte de données, il sera presque impossible de connaître votre mot de passe d'origine.

Vous pouvez facilement changer votre mot de passe avec sermod -p <mot de passe> <utilisateur>, ou simplement passwd <utilisateur>

4
WalterCool

Tu ne peux pas! Pour de bonnes raisons. Ce serait une énorme faille de sécurité. Vous pouvez changer le mot de passe avec la commande passwd (voir man passwd).

Si vous êtes root, vous pouvez changer les mots de passe de tous les utilisateurs.

2
maulinglawns