10 způsobů generování náhodného hesla z příkazového řádku systému Linux

Obsah:

Video: 10 způsobů generování náhodného hesla z příkazového řádku systému Linux

Video: 10 způsobů generování náhodného hesla z příkazového řádku systému Linux
Video: PS4 Pro Zapojení a první spuštění 2024, Březen
10 způsobů generování náhodného hesla z příkazového řádku systému Linux
10 způsobů generování náhodného hesla z příkazového řádku systému Linux
Anonim
Jedna z nejlepších věcí o Linuxu je, že můžete dělat to samé stovky různých způsobů - dokonce i něco tak jednoduchého, jako generování náhodného hesla, lze dosáhnout desítkami různých příkazů. Zde je 10 způsobů, jak to udělat.
Jedna z nejlepších věcí o Linuxu je, že můžete dělat to samé stovky různých způsobů - dokonce i něco tak jednoduchého, jako generování náhodného hesla, lze dosáhnout desítkami různých příkazů. Zde je 10 způsobů, jak to udělat.

Všechny tyto příkazy jsme shromáždili z Command-Line Fu a vyzkoušeli je na našem Linuxu, aby se ujistili, že fungují. Měli byste být schopni používat alespoň některé z nich na systému Windows s nainstalovaným programem Cygwin, i když jsme je netestovali - poslední funguje určitě.

Generování náhodného hesla

Pro libovolný z těchto náhodných příkazů k heslu je můžete buď upravit tak, aby vygenerovali jinou délku hesla, nebo můžete použít pouze první znaky vygenerovaného hesla, pokud nechcete, aby takové dlouhé heslo. Doufejme, že používáte správce hesel, jako je LastPass, takže je nemusíte zapamatovat.

Tato metoda používá SHA ke zkrácení data, spouštění pomocí base64 a následné výstupy prvních 32 znaků.

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

Tato metoda používala vestavěnou / dev / urandom funkci a odfiltrovala pouze znaky, které byste normálně používali v hesle. Potom vystupuje vrchol 32.

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

Ten používá opensslovou funkci rand, která nemusí být nainstalována ve vašem systému. Dobrá věc, existuje spousta dalších příkladů, že?

openssl rand -base64 32

Tenhle funguje hodně jako urandom, ale jen to dělá obráceně. Bash je velmi silný!

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

Zde je další příklad filtrování pomocí příkazu řetězců, který vytiskne řetězce, které se dají vytisknout ze souboru, což je v tomto případě vlastnost urandom.

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

'; echo

Zde je ještě jednodušší verze urandom.

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

Ten dokáže použít velmi užitečný příkaz dd.

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

Můžete dokonce vytvořit náhodné levé heslo, které vám umožní zadat heslo jednou rukou.

Pokud budete chtít používat tuto funkci po celou dobu, je to pravděpodobně lepší nápad, jak ji dát do funkce. V takovém případě jednou jednou spustit příkaz, budete moci používat randpw Kdykoli chcete vytvořit náhodné heslo. Pravděpodobně byste to chtěli dát do souboru ~ /.bashrc.

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

Tuto syntaxi můžete použít k tomu, aby se některá z těchto funkcí stala funkcí - stačí nahradit vše uvnitř {}

A zde je nejjednodušší způsob, jak vytvořit heslo z příkazového řádku, který funguje v Linuxu, Windows s Cygwinem a pravděpodobně Mac OS X. Jsem si jist, že někteří lidé si budou stěžovat, že to není náhodná jako některé z dalších možností, ale upřímně řečeno, je to dost náhoda, pokud se chystáte použít celou věc.

date | md5sum

Jo, to je ještě dost snadné si pamatovat.

Existuje mnoho dalších způsobů, jak vytvořit náhodné heslo z příkazového řádku v systému Linux - například příkaz mkpasswd, který může skutečně přiřadit heslo uživatelskému účtu systému Linux. Takže, jaká je vaše oblíbená cesta?

Doporučuje: