Desarrollo del Generador de Contraseñas Aleatorias

LinuxLinuxBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este desafío, implementaremos un script de bash llamado genpass.sh que genere contraseñas aleatorias. La contraseña generada debe tener 12 caracteres de longitud y cumplir con requisitos específicos: debe contener al menos un dígito, una letra mayúscula, una letra minúscula y un carácter especial. El objetivo es crear un generador de contraseñas que cumpla con estas condiciones y devuelva una contraseña diferente cada vez que se ejecute. Exploraremos temas como el generador de números aleatorios de Linux y los conceptos básicos de programación de scripts de bash.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL linux(("Linux")) -.-> linux/BasicSystemCommandsGroup(["Basic System Commands"]) linux(("Linux")) -.-> linux/TextProcessingGroup(["Text Processing"]) linux/BasicSystemCommandsGroup -.-> linux/echo("Text Display") linux/TextProcessingGroup -.-> linux/tr("Character Translating") linux/TextProcessingGroup -.-> linux/expr("Evaluate Expressions") subgraph Lab Skills linux/echo -.-> lab-301484{{"Desarrollo del Generador de Contraseñas Aleatorias"}} linux/tr -.-> lab-301484{{"Desarrollo del Generador de Contraseñas Aleatorias"}} linux/expr -.-> lab-301484{{"Desarrollo del Generador de Contraseñas Aleatorias"}} end

Generador de contraseñas

En el entorno de LabEx, el nombre de usuario de cada usuario es labex, pero las contraseñas son aleatorias.

Por favor, implemente un generador de contraseñas aleatorias que cumpla con los siguientes requisitos:

  • La contraseña generada debe tener 12 caracteres de longitud.
  • La contraseña debe contener al menos un dígito, una letra mayúscula, una letra minúscula y un carácter especial.
  • Solo se permiten los siguientes caracteres especiales: ><+-{}:.&;.

Objetivos

  • Escriba el script de zsh requerido en el archivo genpass.sh ya creado en el directorio /home/labex/project.
  • El script genpass.sh debe cumplir con las tres condiciones descritas en la introducción, y cada ejecución debe generar una contraseña diferente.
  • No use herramientas de generación de contraseñas listas como mkpasswd en Linux.
  • El script de generación de contraseñas debe devolver una contraseña que cumpla con los requisitos cada vez que se ejecuta.

Salida

$ cd /home/labex/project
$ sh genpass.sh
2Dsxw9+xS:27
✨ Revisar Solución y Practicar

Resumen

¡Felicidades! Has completado el desafío del Generador de Contraseñas. Puedes practicar más laboratorios en LabEx para mejorar tus habilidades.