Don Quijote de la Mancha -Miguel de Cervantes-

 

Bash script para Generar Passwords en tres Niveles

0
(0)

Bash script para Generar Passwords en tres Niveles

Primer script

Este script permite al usuario elegir los niveles de seguridad que desea utilizar para generar una contraseña segura. El usuario ingresa los niveles que desea utilizar como una cadena de números (por ejemplo, “123” para usar los tres niveles). Luego, el script utiliza un bucle for para iterar sobre los niveles seleccionados y generar la contraseña segura.

Thank you for reading this post, don't forget to subscribe!

En cada nivel, se utiliza un enfoque similar al script anterior para generar una cadena aleatoria de caracteres seguros utilizando el comando openssl rand -base64. Luego, se aplican transformaciones a la cadena generada para agregar letras mayúsculas, números y caracteres especiales, según el nivel seleccionado.

Es importante tener en cuenta que este script también es solo una de las muchas formas de generar contraseñas seguras en bash, y que la seguridad de la contraseña generada dependerá de la calidad de los niveles de seguridad elegidos.

#!/bin/bash

# Generar un password seguro con tres niveles de seguridad personalizables

# Pedir al usuario que elija los niveles de seguridad
echo "Elija los niveles de seguridad:"
echo "1) Caracteres alfanuméricos (8 caracteres)"
echo "2) Caracteres alfanuméricos y letras mayúsculas (12 caracteres)"
echo "3) Caracteres alfanuméricos, letras mayúsculas y caracteres especiales (16 caracteres)"
read -p "Escriba los niveles que desea usar (por ejemplo, 123): " niveles

# Inicializar el password
password=""

# Generar un password seguro según los niveles elegidos
for nivel in $(echo $niveles | fold -w1); do
case $nivel in
1)
# Nivel 1: Generar una cadena aleatoria de 8 caracteres
password1=$(openssl rand -base64 8 | tr -d '\n' | tr -d '\r')
password="${password}${password1}"
;;
2)
# Nivel 2: Agregar letras mayúsculas a la cadena generada en el nivel 1
password2=$(echo $password1 | sed 's/[[:digit:]]//' | sed 's/[[:punct:]]//' | tr '[:lower:]' '[:upper:]' | openssl rand -base64 4 | tr -d '\n' | tr -d '\r')
password="${password}${password2}"
;;
3)
# Nivel 3: Agregar caracteres especiales a la cadena generada en el nivel 2
password3=$(echo $password2 | sed 's/[[:upper:]]//' | tr -dc '!@#$%^&*()_+-=:;{}[],.<>?/0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ' | openssl rand -base64 4 | tr -d '\n' | tr -d '\r')
password="${password}${password3}"
;;
*)
echo "El nivel $nivel no es válido."
exit 1
;;
esac
done

# Imprimir el password generado
echo "Password seguro: $password"

Aquí dejamos un segundo script

Aquí hay un script de bash que genera frases de contraseña aleatorias en tres niveles de seguridad, donde cada nivel tiene un conjunto diferente de caracteres posibles (minúsculas, mayúsculas y caracteres especiales) y se utilizan técnicas diferentes para aumentar la seguridad de la contraseña:


#!/bin/bash

# Establecer los caracteres posibles para cada nivel de seguridad
level1="abcdefghijklmnopqrstuvwxyz"
level2="ABCDEFGHIJKLMNOPQRSTUVWXYZ"
level3="0123456789!@#$%^&*()_+{}[]<>?,."

# Solicitar la longitud deseada de cada nivel
read -p "Ingrese la longitud del nivel 1 (letras minúsculas): " len1
read -p "Ingrese la longitud del nivel 2 (letras mayúsculas y números): " len2
read -p "Ingrese la longitud del nivel 3 (caracteres especiales): " len3

# Generar la frase de contraseña aleatoria para cada nivel de seguridad
pass1=$(head /dev/urandom | tr -dc "$level1" | head -c $len1)
pass2=$(head /dev/urandom | tr -dc "$level2" | head -c $len2)
pass3=$(head /dev/urandom | tr -dc "$level3" | head -c $len3)

# Combinar las frases de contraseña generadas en una sola
pass=$(echo -n $pass1 && echo -n $pass2 && echo -n $pass3 | shuf | tr -d ' ')

# Imprimir la frase de contraseña generada
echo "Su frase de contraseña aleatoria es: $pass"


 

En este script, primero se establecen los conjuntos de caracteres posibles para cada nivel de seguridad. Luego, se solicita al usuario la longitud deseada para cada nivel y se generan frases de contraseña aleatorias para cada nivel de seguridad utilizando el comando head y tr. Luego, las frases de contraseña generadas se combinan en una sola y se mezclan aleatoriamente utilizando el comando shuf. Finalmente, la frase de contraseña generada se imprime en la pantalla.

Tenga en cuenta que este script genera una frase de contraseña aleatoria, pero no necesariamente segura. Para mejorar la seguridad de sus contraseñas, se recomienda utilizar frases de contraseña más largas y más complejas, y evitar patrones predecibles como fechas o palabras comunes. También es importante cambiar sus contraseñas regularmente y no reutilizar las mismas contraseñas para diferentes cuentas.


Esperando que sea de interés

How useful was this post?

Click on a star to rate it!

Average rating 0 / 5. Vote count: 0

No votes so far! Be the first to rate this post.

We are sorry that this post was not useful for you!

Let us improve this post!

Tell us how we can improve this post?

0 - 0

Thank You For Your Vote!

Sorry You have Already Voted!

Leave a Reply

Your email address will not be published. Required fields are marked *

error

Enjoy this blog? Please spread the word :)