Existen muchas formas de generar una contraseña desde tu terminal o línea de comandos. En este tutorial encontraréis hasta diez maneras diferentes.
Sin embargo, otra manera de hacerlo es con Makepasswd, siendo ésta mi preferida. Esta aplicación ocupa apenas unos kB y es muy sencilla de utilizar.
Para instalarlo entra en tu terminal y escribe lo siguiente:
Para generar una contraseña sólo tienes que escribir lo siguiente:
Y automáticamente generará una contraseña aleatoria. Si ejecutas makepasswd --help tendrás una completa ayuda con las diferentes opciones.
Por ejemplo, si quieres crear ocho contraseñas de dieciséis caracteres escribe lo siguiente: makepasswd --chars=16 --count=8. El resultado será semejante a éste:
https://www.youtube.com/embed/z-xGk9c_eOw Guionista y locutor: Manuel Ignacio López Quintero.Fecha de publicación: 31 de diciembre de 2024.
Ver comentarios
Si interesa a alguien, cómo hacerlo uno mismo en Python y C#:
Python:
#!/usr/bin/env python
# -*- coding: UTF-8 -*-
import random
import string
letters = string.ascii_letters + string.digits
def generate_password(length = 8):
password = ""
for i in range(length):
password += random.choice(letters)
return password
if __name__ == "__main__":
print generate_password()
$ python password.py
U7qc5prO
C#:
using System;
public class PasswordMain {
private const string letters = "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789";
public static string GeneratePassword(int length = 8) {
Random rand = new Random();
string password = "";
for (int i = 0; i < length; i++) {
password += letters[rand.Next() % letters.Length];
}
return password;
}
public static void Main(string[] args) {
Console.WriteLine(GeneratePassword());
}
}
$ gmcs password.cs
$ ./password.exe
3VEmkb0k
Saludos!
Mmmm, no sale bien tabulado, y aparece el emoticono: 8), jajaja.
Dejo el código en Pastebin:
Python: http://pastebin.com/9KBSdkCt
C#: http://pastebin.com/EyFNQEwf
Adrián: muchas gracias por tu aporte. Reconozco que la sencillez de Python me fascina.
Yo suelo utilizar pwgen: http://pwgen.sourceforge.net/
$ pwgen
Iez4eige Aip4dait Fougii5m aeG6Tei9 oceNgie0 eiZ4ioz1 OhPouzu3 deiy2ieP
Ovah5UTe Eum6Waeb ieNg3roh eW8Soika ahPoh6no eicoi7Oh aeNg2Ohm ohyae6Mo
ri6Eebai Eephi2it beGie2fa aiTa8fai tiey8Aen Iuh2sheV eeTh1ahr leum6Die
También puedes hacer contraseñas más seguras:
$ pwgen -cnvy
gm**7MlDl8 HpjNJ9#r 8!QH/',(
)Tf~_-72 3g.qD)Jl d$>#Z6[T 84h{D'|3 %]gtx}V9 GKGRh)#8 ;TkGqs3h zX72TqB#W v2}#CZgp S#,6V9"V ;$rTJ]5z 5%(~_vXn
k|8QrZM'QK N7W,Gm*4 @9Vl4*@V k&^s[J9$ p*S3`Dtn 4>GF5Z+f
Tw8x~qft 8=qlFzc\ J?S-Pk*2 b+/6^hR" 7g${sQXL Ww(3"q=' 7>zVK#JB f{{3HDj&
.k5gsV2v t'N>\!3. 7#czXRrz JJ;WN/|8 =4;G{]8r 4TS,:Zqk sc`n={5M fskP3{t<
Un abrazo
#!/bin/bash
set -e
if [ ! -n "$1" ]; then
LONG=12
else
LONG="$1"
fi
</dev/urandom tr -dc [:print:] | head -c"$LONG"; echo