Outils pour utilisateurs

Outils du site


autre:generer_un_mot_de_passe

Ceci est une ancienne révision du document !


Générer un mot de passe aléatoire (Linux)

Pour créer un mot de passe aléatoire composé de caractères imprimables (pas de code de contrôle), utiliser cette commande pour des mots de passe “simple” (8 caractères alphanumériques et underscore) :

< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c8 && echo

ou celle-i pour un mot de passe plus sûr (16 caractères alphanumériques et/ou ponctuation) :

< /dev/urandom tr -dc "_?,.;/\-\\:!()^><A-Z-a-z-0-9" | head -c16 && echo

Changer le “-c8/-c16” pour changer le nombre de caractères du mot de passe, et la chaîne “_A-Z-a-z-0-9” pour ajouter les caractères de ponctuation ou autre…

Ceci fonctionne avec GNU head, donc pas sous OpenBSD par exemple (utilisez jot pour cela…).

Voici un script qui *devrait* fonctionner partout :

genpass
#!/bin/sh
 
# Default password length
NbChars=16
# Should get O/S name
SysName=`uname -s`
 
# Changing password length if it has been given as an option
if [ $# -gt 0 ]; then
  NbChars=$1
fi
 
if [ "$SysName" == "Linux" ]; then
  # On anything else, getting random value from pseudo-device, keeping only the
  # given charset and echoing "length" chars
  < /dev/urandom tr -dc "_?,.;/\-\\:!()^><A-Z-a-z-0-9" | head -c$NbChars && echo
else
  # On *BSD, using jot to generate the password, with the following options:
  # random, no separator, length, using ASCII decimal values from 33 to 126
  jot -r -s "" -c $NbChars 33 126
fi
 
# EoF
autre/generer_un_mot_de_passe.1538060182.txt.gz · Dernière modification: 2018/09/27 16:56 par cyriac