A veces necesitamos generar una contraseña aleatoriamente, en este caso hemos desarrollado un sencillo script programado en Bash para Linux que permite generar una contraseña aleatoria (random password), usando un conjunto de caracteres. Usamos una función interna de Bash, llamada $RANDOM que genera un número entero entre 0 y 32.767.


Script

#!/bin/bash

# APP info
app_name="Random PWD"
app_version="1.0.0"
app_author="Security Null"
app_last_update="2013-03-12"
app_usage="Usage: ./random_pwd.sh [password length]"

function randPassword() {
        MATRIX="abcdefghijklmnopqrstuvwxyzABCDEFGHIJLKMNOPQRSTUVWXYZ-0123456789"
        PASS=""
        n=1
        i=1
        [ -z "$1" ] && length=8 || length=$1
        [ -z "$2" ] && num=1 || num=$2
        while [ ${i} -le $num ]; do
                while [ ${n} -le $length ]; do
                        PASS="$PASS${MATRIX:$(($RANDOM%${#MATRIX})):1}"
                        n=$(($n + 1))
                done
                echo $PASS
                n=1
                PASS=""
                i=$(($i + 1))
        done
}

# Check Params
if [ $# -eq 1 ]; then
        rand_pwd=$(randPassword $1)

        # Print password
        echo $rand_pwd
else
        echo $app_usage
fi

Ejecución

Solo necesita un parámetro para indicar la longitud de la contraseña.

./random_pwd.sh 25

*Recordar concederle al script permisos de ejecución para poder usarlo (chmod +x random_pwd.sh).

Resultado

rPuitUixeWII15NDY16810Mo3

Descargar

Archivo: Random PWD
Tamaño: 619 Bytes
Tipo: Zip
Enlace: https://mega.co.nz/#!Q1o13abS!8G6yXI-7kH1pj5NWw4DxM8FJgRkGyxyQPk1CGlQ3maM


Soporte

Para ayuda, reportar bugs, aportar ideas o mejoras contactar a: projects@securitynull.net