En av de stora sakerna med Linux är att du kan göra samma sak hundratals olika sätt - till och med något så enkelt som att skapa ett slumpmässigt lösenord kan utföras med dussintals olika kommandon. Här är tio sätt att göra det på.
Vi samlade alla dessa kommandon från Kommandorads Fu och testade dem på vår egen Linux-dator för att se till att de fungerar. Du bör kunna använda åtminstone några av dessa på Windows med Cygwin installerat, även om vi inte testade dem alla - den sista fungerar definitivt dock.
Skapa ett slumpmässigt lösenord
För någon av dessa slumpmässiga lösenordskommandon kan du antingen ändra dem för att mata ut en annan lösenordslängd, eller så kan du bara använda de första x-tecknen i det genererade lösenordet om du inte vill ha ett så långt lösenord. Förhoppningsvis använder du en lösenordshanterare som LastPass hur som helst så att du inte behöver memorera dem.
Den här metoden använder SHA för att hasha datumet, körs genom base64 och matar sedan ut de 32 bästa tecknen.
datum +% s | sha256sum | base64 | huvud -c 32; eko
Denna metod använde den inbyggda / dev / urandom-funktionen och filtrerar endast bort tecken som du normalt skulle använda i ett lösenord. Sedan matar den ut de 32 bästa.
</ dev / urandom tr -dc _A-Z-a-z-0-9 | huvud -c $ {1:-32}; eko;
Den här använder openssls randfunktion, som kanske inte är installerad på ditt system. Bra att det finns många andra exempel, eller hur?
openssl rand -bas64 32
Den här fungerar mycket som den andra urandom, men fungerar bara i omvänd ordning. Bash är väldigt kraftfull!
tr -cd '[:alnum:]' </ dev / urandom | vik -w30 | huvud -n1
Här är ett annat exempel som filtrerar med hjälp av strängkommandot, som matar ut utskrivbara strängar från en fil, vilket i detta fall är urandom-funktionen.
strings /dev/urandom | grep -o '[[:alnum:]]' | head -n 30 | tr -d '\n'; echo
Här är en ännu enklare version av urandom-versionen.
</ dev / urandom tr -dc _A-Z-a-z-0-9 | huvud -c6
Den här lyckas använda det mycket användbara dd-kommandot.
dd if = / dev / urandom bs = 1 count = 32 2> / dev / null | base64 -w 0 | rev | skär -b 2- | varv
Du kan även skapa ett slumpmässigt vänsterlösenord som låter dig skriva ditt lösenord med en hand.
</ dev / urandom tr -dc '12345! @ # $% qwertQWERTasdfgASDFGzxcvbZXCVB' | huvud -c8; eko ""
Om du kommer att använda detta hela tiden är det förmodligen en bättre idé att sätta det i en funktion. I det här fallet kan du använda det när du kör kommandot en gång randpw när du vill skapa ett slumpmässigt lösenord. Du skulle antagligen vilja lägga in detta i din ~ / .bashrc-fil.
randpw () { < /dev/urandom tr -dc _A-Z-a-z-0-9 | head -c${1:-16}; eko;}
Du kan använda samma syntax för att göra någon av dessa till en funktion - bara byt ut allt inuti { }
Och här är det enklaste sättet att skapa ett lösenord från kommandoraden, som fungerar i Linux, Windows med Cygwin och förmodligen Mac OS X. Jag är säker på att vissa människor kommer att klaga på att det inte är så slumpmässigt som några av de andra alternativen, men ärligt talat, det är slumpmässigt nog om du ska använda det hela.
datum | md5sum
Ja, det är till och med lätt att komma ihåg.
Det finns många andra sätt att skapa ett slumpmässigt lösenord från kommandoraden i Linux - till exempel kommandot mkpasswd, som faktiskt kan tilldela lösenordet till ett Linux-användarkonto. Så vad är ditt favorit sätt?