Comment faire en sorte que les mots de passe affichent des astérisques lors de la saisie de la commande `sudo`

Est-il possible de rendre le mot de passe visible sous forme d’astérisques (ou de tout autre caractère) lors de l’utilisation de la commande sudo ?

Actuellement, il n’affiche rien, ce qui rend difficile le comptage du nombre de pressions de touches.

Ouvrez votre terminal et éditez le fichier /etc/sudoers.tmp avec:

 sudo visudo 

Modifier la ligne suivante:

 Defaults env_reset 

à:

 Defaults env_reset,pwfeedback 

Sauvegarder et quitter. Redémarrez votre terminal et maintenant, lorsque vous exécuterez une commande avec sudo , vous devriez recevoir un retour visuel lorsque vous entrez votre mot de passe.

Le crédit va à: Rendre les astérisques de mot de passe visibles dans votre terminal Mac ou Linux

Bien qu’il n’existe pas de configuration ni d’option de paramètre permettant de le faire directement dans le terminal sudo, vous pouvez théoriquement accomplir quelque chose de similaire à ce dont vous avez besoin.

Vous devez d’abord définir la variable d’environnement

 export SUDO_ASKPASS=/usr/bin/ssh-askpass 

Ensuite, vous exécuterez votre commande avec l’option -A , par exemple

 sudo -A ls 

Cela vous donnera une invite graphique.

En théorie, vous pourriez écrire votre propre programme plutôt que d’utiliser ssh-askpath, votre code doit afficher l’invite telle qu’elle est donnée dans argv [1], lire le mot de passe de l’utilisateur (afficher les écanvass, les cercles ou tout autre élément de votre choix), et puis affichez-le sur la sortie standard. Ne vous inquiétez pas pour l’afficher, car sudo ne permettra pas que ce mot de passe soit jamais vu, il interceptera cet affichage.