GNU/Linux >> Tutoriels Linux >  >> Linux

Outil en ligne de commande pour générer des mots de passe mémorables ?

Depuis, je suis passé aux phrases secrètes de style XCKD pour la plupart de mes mots de passe. Voici une ligne de commande de 1 fu pour générer une phrase de passe :

shuf -n4 /usr/share/dict/words | tr -d '\n'

2020 :J'ai posté cette réponse en 2011. Au cours des années qui ont passé, le visage de la cybersécurité et ses exigences ont changé rapidement et énormément. Comme l'a souligné anarcat, pwgen n'est peut-être pas (ou plus) adapté à la sécurisation des systèmes de haute sécurité. Il se propose de décrire les détails techniques sur la façon dont pwgen peut, dans certaines circonstances, utiliser des méthodes non sécurisées de dérivation de mot de passe à partir de l'entropie disponible dans son article. Bien que je ne crois plus à la génération de mots de passe pour ensuite essayer de m'en souvenir moi-même, je n'ai pas l'aptitude technique pour valider, et encore moins garantir le contenu de l'article tel qu'il est cité, alors veuillez le lire et tirer vos propres conclusions. Cela dit, je suis convaincu que pwgen suffira pour les systèmes à faible sécurité où une attaque est très peu probable.

Vous voudrez peut-être vérifier le pwgen application. Je sais qu'il est disponible dans les dépôts Ubuntu, Fedora, Debian et Suse.

À partir de la page de manuel :

Le programme pwgen génère des mots de passe qui sont conçus pour être facilement mémorisés par les humains, tout en étant aussi sécurisés que possible. Les mots de passe mémorisables par l'homme ne seront jamais aussi sûrs que des mots de passe totalement aléatoires. En particulier, les mots de passe générés par pwgen sans l'option -s ne doivent pas être utilisés là où le mot de passe pourrait être attaqué via une attaque par force brute hors ligne. D'un autre côté, les mots de passe générés complètement au hasard ont tendance à être écrits et sont susceptibles d'être compromis de cette façon.

Le programme pwgen est conçu pour être utilisé à la fois de manière interactive et dans des scripts shell. Par conséquent, son comportement par défaut diffère selon que la sortie standard est un périphérique tty ou un canal vers un autre programme. Utilisé de manière interactive, pwgen affichera un écran complet de mots de passe, permettant à l'utilisateur de choisir un seul mot de passe, puis d'effacer rapidement l'écran. Cela empêche quelqu'un de pouvoir « surfer » sur le mot de passe choisi par l'utilisateur.


Je recommanderais aux gens d'arrêter d'utiliser pwgen - son principal intérêt était de générer des "mots de passe mémorisables par l'homme", mais il a montré de multiples vulnérabilités en faisant exactement cela. Et l'utiliser pour générer des chaînes complètement aléatoires n'est pas très utile non plus.

J'ai écrit un article détaillé sur ce sujet précis, mais en gros, l'essentiel est d'utiliser le programme diceware (ou, si vous aimez les dés, le véritable système de diceware) ou xkcdpass. Pour générer des mots de passe forts et mémorisables, j'utilise généralement un diceware avec le fichier de configuration suivant :

[diceware]
caps = off
delimiter = "-"
wordlist = en_eff

Exemples :

$ diceware
turkey-eligibly-underwire-recite-lifter-wasp
$ diceware
lend-rubdown-cornflake-tint-shawl-ozone
$ diceware
syndrome-ramp-cresting-resolved-flinch-veneering
$ diceware
alto-badass-eclipse-surplus-rudder-quit

Je désactive les majuscules et les espaces car ils génèrent des bruits audibles distincts qui pourraient être exploités par un attaquant. Le - délimiteur est un moindre mal :mieux vaut ne pas utiliser de séparateur et le en_eff La liste de mots est spécialement conçue à cet effet. Mais je trouve plus facile de communiquer et de partager des mots de passe lorsqu'ils en ont certains séparateur.

Pour générer un mot de passe complètement aléatoire, j'utilise la fonction shell suivante :

# secure password generator or, as dkg puts it:
# high-entropy compact printable/transferable string generator
# a password generator would be pwqgen or diceware
pwg() {
    ENTROPY=${1:-20} # in bytes
    # strip possible newlines if output is wrapped and trailing = signs as they add nothing to the password's entropy
    head -c $ENTROPY /dev/random | base64 | tr -d '\n='
    echo
}

Je le mentionne parce que je pense qu'il est important de mémoriser moins mots de passe et s'appuient plutôt sur un gestionnaire de mots de passe pour stocker de grandes chaînes difficiles à deviner. Plus de détails sur la justification de ces choix sont expliqués dans l'article susmentionné et dans mon examen des gestionnaires de mots de passe.


Linux
  1. Générer des mots de passe sur la ligne de commande Linux

  2. QuickWall - Outil de ligne de commande pour définir les fonds d'écran d'Unsplash

  3. Comment utiliser l'outil de ligne de commande sipcalc Linux

  4. Outil de ligne de commande robuste pour le traitement des fichiers CSV ?

  5. Comment installer et utiliser l'outil de ligne de commande Mosh Linux

Lolcat - Un outil de ligne de commande pour produire un arc-en-ciel de couleurs dans un terminal Linux

Linux_Logo - Un outil de ligne de commande pour imprimer les logos ANSI couleur des distributions Linux

Googler :un outil de ligne de commande pour effectuer une "recherche Google" à partir d'un terminal Linux

Commande Diff sous Linux

Pyvoc - Un dictionnaire de ligne de commande et un outil de création de vocabulaire

Ripgrep - L'outil de recherche de ligne de commande le plus rapide pour Linux