Dans les sytèmes de type Unix, comme GNU/Linux, /dev/random est un fichier spécial qui sert de générateur de nombres aléatoires.
Il est donc possible d’optenir nativement sous GNU/Linux un ou des mots de passe aléatoires et complexes.
/dev/urandom
Voici un exemple d’utilisation:
</dev/urandom tr -dc '12345!@#$%^&*()_A-Z-a-z-0-9'| fold -w10 | head -5
Exemple de résultat:
lgkyowqwtT U54RG!@5Ca maRt%JsIqK W2l^ORWaGW C*5r3w^Ywq
Explication
- tr -dc ‘!@#$%^&*()_A-Z-a-z-0-9’:
- fold -w10:
- head -5:
indique les caractères à utiliser pour créer le mot de passe. Dans l’exemple il sera utilisé toutes les lettres de l’alphabet(majuscule/minuscule), tous les chiffres(de 0 à 9) et les caractères spéciaux !@#$%^&*()_.
Trouve des mots de passes de 10 caractères.
Génère 5 mots de passes différents.
Conclusion
Avec cette astuce assez simple, la génération de mot de passe se fait nativement sans besoin d’installler un logiciel spécifique, comme par exemple pwgen.
Bonjour 10 ans plus tard.
la commande suivante
MDP_OK=1;while [ ${MDP_OK} -eq 1 ];do MDP_USR=$(cat /dev/urandom|tr -dc [:alnum:]|head -c15);echo ${MDP_USR}|egrep « ^[[:upper:]][[:digit:]][[:lower!]] »;MDP_OK=$?;done
me permet de générer un mot de passe de 15 caractères alpha-numériques commençant par une majuscule, puis un chiffre, puis une minuscule.