Page d'accueil » comment » 10 façons de générer un mot de passe aléatoire à partir de la ligne de commande Linux

    10 façons de générer un mot de passe aléatoire à partir de la ligne de commande Linux

    Un des grands avantages de Linux est que vous pouvez faire la même chose de centaines de façons différentes. Vous pouvez même créer un mot de passe aléatoire en exécutant des dizaines de commandes différentes. Voici 10 façons de le faire.

    Nous avons rassemblé toutes ces commandes à partir de Command-Line Fu et les avons testées sur notre propre PC Linux pour nous assurer qu'elles fonctionnent. Vous devriez pouvoir utiliser au moins certains d’entre eux sur Windows avec Cygwin installé, bien que nous n’ayons pas tous les testé - le dernier fonctionne définitivement..

    Générer un mot de passe aléatoire

    Pour chacune de ces commandes de mot de passe aléatoires, vous pouvez les modifier pour générer une longueur de mot de passe différente ou vous pouvez simplement utiliser les x premiers caractères du mot de passe généré si vous ne souhaitez pas utiliser un mot de passe aussi long. J'espère que vous utilisez un gestionnaire de mot de passe comme LastPass de toute façon, de sorte que vous n'avez pas besoin de les mémoriser..

    Cette méthode utilise SHA pour hacher la date, traverse base64, puis affiche les 32 premiers caractères.

    date +% s | sha256sum | base64 | tête -c 32; écho

    Cette méthode utilisait la fonctionnalité intégrée / dev / urandom et ne filtrait que les caractères que vous utiliseriez normalement dans un mot de passe. Puis il sort le top 32.

    < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c$1:-32;echo;

    Celui-ci utilise la fonction rand de openssl, qui peut ne pas être installée sur votre système. Heureusement qu'il y a beaucoup d'autres exemples, non?

    openssl rand -base64 32

    Celui-ci fonctionne beaucoup comme l'autre urandom, mais fait le travail en sens inverse. Bash est très puissant!

    tr -cd '[: alnum:]' < /dev/urandom | fold -w30 | head -n1

    Voici un autre exemple de filtrage à l'aide de la commande strings, qui génère des chaînes imprimables à partir d'un fichier, qui dans ce cas est la fonctionnalité urandom..

    strings / dev / urandom | grep -o '[[: alnum:]]' | tête -n 30 | tr -d '\ n'; écho

    Voici une version encore plus simple de l'urandom.

    < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c6

    Celui-ci parvient à utiliser la très utile commande dd.

    dd if = / dev / urandom bs = 1 compte = 32 2> / dev / null | base64 -w 0 | rev | couper -b 2- | tour

    Vous pouvez même créer un mot de passe aléatoire de gauche, ce qui vous permettrait de taper votre mot de passe d'une seule main.

    Si vous comptez l'utiliser tout le temps, c'est probablement une meilleure idée de l'insérer dans une fonction. Dans ce cas, une fois la commande exécutée une fois, vous pourrez utiliser randpw chaque fois que vous voulez générer un mot de passe aléatoire. Vous voudrez probablement mettre ceci dans votre fichier ~ / .bashrc.

    randpw ()  < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c$1:-16;echo;

    Vous pouvez utiliser cette même syntaxe pour transformer n'importe lequel de ces éléments en une fonction. Il vous suffit de remplacer tout ce qui se trouve à l'intérieur du .

    Et voici le moyen le plus simple de créer un mot de passe à partir de la ligne de commande, qui fonctionne sous Linux, Windows avec Cygwin et probablement Mac OS X. Je suis sûr que certaines personnes se plaindront que ce n'est pas aussi aléatoire que d'autres options, mais honnêtement, il est assez aléatoire si vous allez utiliser le tout.

    date | md5sum

    Oui, c'est même assez facile à retenir.


    Il existe de nombreuses autres manières de créer un mot de passe aléatoire à partir de la ligne de commande sous Linux, par exemple, la commande mkpasswd, qui peut en réalité attribuer le mot de passe à un compte d'utilisateur Linux. Alors, quelle est votre façon préférée?