/ / 10 manieren om een ​​willekeurig wachtwoord te genereren vanaf de Linux-opdrachtregel

10 manieren om een ​​willekeurig wachtwoord te genereren vanaf de Linux-opdrachtregel

Een van de leuke dingen van Linux is dat jij dat bentkan op honderden verschillende manieren hetzelfde doen - zelfs iets eenvoudigs als het genereren van een willekeurig wachtwoord kan worden bereikt met tientallen verschillende opdrachten. Hier zijn 10 manieren om het te doen.

We hebben al deze commando's verzameld vanCommand-Line Fu en testte ze op onze eigen Linux-pc om er zeker van te zijn dat ze werken. Je zou tenminste enkele hiervan op Windows moeten kunnen gebruiken met Cygwin geïnstalleerd, hoewel we ze niet allemaal hebben getest - de laatste werkt echter zeker.

Genereer een willekeurig wachtwoord

Voor elk van deze willekeurige wachtwoordopdrachten, uu kunt ze wijzigen om een ​​andere wachtwoordlengte uit te voeren, of u kunt gewoon de eerste x tekens van het gegenereerde wachtwoord gebruiken als u niet zo'n lang wachtwoord wilt. Hopelijk gebruik je toch een wachtwoordbeheerder zoals LastPass, zodat je ze niet hoeft te onthouden.

Deze methode gebruikt SHA om de datum te hashen, doorloopt base64 en voert vervolgens de bovenste 32 tekens uit.

date +%s | sha256sum | base64 | head -c 32 ; echo

Deze methode gebruikte de ingebouwde / dev / urandom-functie en filtert alleen tekens uit die u normaal in een wachtwoord zou gebruiken. Vervolgens voert het de top 32 uit.

< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-32};echo;

Deze gebruikt de rand-functie van openssl, die mogelijk niet op uw systeem is geïnstalleerd. Maar goed dat er nog veel meer voorbeelden zijn, toch?

openssl rand -base64 32

Deze werkt veel zoals de andere urandom, maar doet het werk gewoon omgekeerd. Bash is erg krachtig!

tr -cd '[:alnum:]' < /dev/urandom | fold -w30 | head -n1

Hier is nog een voorbeeld dat filtert met de opdracht strings, die afdrukbare tekenreeksen uit een bestand uitvoert, wat in dit geval de urandom-functie is.

strings /dev/urandom | grep -o '[[:alnum:]]' | head -n 30 | tr -d 'n'; echo

Hier is een nog eenvoudigere versie van de urandom-versie.

< /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c6

Deze slaagt erin om het zeer nuttige dd-commando te gebruiken.

dd if=/dev/urandom bs=1 count=32 2>/dev/null | base64 -w 0 | rev | cut -b 2- | rev

U kunt zelfs een willekeurig wachtwoord voor de linkerhand maken, zodat u uw wachtwoord met één hand kunt typen.

</dev/urandom tr -dc '12345!@#$%qwertQWERTasdfgASDFGzxcvbZXCVB' | head -c8; echo ""

Als u dit de hele tijd gaat gebruiken, is het waarschijnlijk een beter idee om het in een functie te plaatsen. In dit geval kunt u, nadat u de opdracht eenmaal heeft uitgevoerd, deze gebruiken randpw wanneer u een willekeurig wachtwoord wilt genereren. U wilt dit waarschijnlijk in uw ~ / .bashrc-bestand plaatsen.

randpw(){ < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-16};echo;}

U kunt dezelfde syntaxis gebruiken om van al deze functies een functie te maken. Vervang gewoon alles in de {}

En hier is de gemakkelijkste manier om een ​​wachtwoord te makenvanaf de opdrachtregel, die werkt onder Linux, Windows met Cygwin en waarschijnlijk Mac OS X. Ik weet zeker dat sommige mensen zullen klagen dat het niet zo willekeurig is als sommige andere opties, maar eerlijk gezegd is het willekeurig genoeg als je ' gaat het hele ding gebruiken.

date | md5sum

Ja, dat is zelfs gemakkelijk genoeg om te onthouden.


Er zijn tal van andere manieren waarop u eenwillekeurig wachtwoord vanaf de opdrachtregel in Linux - bijvoorbeeld het mkpasswd-commando, dat het wachtwoord daadwerkelijk kan toewijzen aan een Linux-gebruikersaccount. Dus wat is je favoriete manier?