共計(jì) 2957 個(gè)字符,預(yù)計(jì)需要花費(fèi) 8 分鐘才能閱讀完成。
這篇文章主要講解了“Linux 生成隨機(jī)密碼的方法有哪些”,文中的講解內(nèi)容簡(jiǎn)單清晰,易于學(xué)習(xí)與理解,下面請(qǐng)大家跟著丸趣 TV 小編的思路慢慢深入,一起來(lái)研究和學(xué)習(xí)“Linux 生成隨機(jī)密碼的方法有哪些”吧!
1. 使用 sha 算法來(lái)加密日期,并輸出結(jié)果的前 32 個(gè)字符:
date +%s |sha256sum |base64 |head -c 32 ;echo
生成結(jié)果如下:
ztnimgm0ndi5ogzjmwmxndlhzmjmngm4
2. 使用內(nèi)嵌的 /dev/urandom,并過(guò)濾掉那些日常不怎么使用的字符。這里也只輸出結(jié)果的前 32 個(gè)字符:
/dev/urandom tr -dc _a-z-a-z-0-9 |head -c${1:-32};echo
生成結(jié)果如下:
pdj0xwz7exd_qb5b27bwwsm1hrf3a7cj
3. 使用 openssl 的隨機(jī)函數(shù)
openssl rand -base64 32
生成結(jié)果如下:
ryjwqjltlayex3j7ncbir20h1k/0cnqlneunytscfko=
4. 這種方法類似于之前的 urandom,但它是反向工作的
tr -cd [:alnum:] /dev/urandom | fold -w32 | head -n1;echo
生成結(jié)果如下:
tpgudzf7sqtu4yyw2lvhmuqoziqi87
5. 使用 string 命令,它從一個(gè)文件中輸出可打印的字符串
strings /dev/urandom | grep -o [[:alnum:]] | head -n 32 | tr -d \n echo
生成結(jié)果如下:
w4v1iqtkmq8sidd9jxdqnpg8hpmoz8
6. 這是使用 urandom 的一個(gè)更簡(jiǎn)單的版本
/dev/urandom tr -dc _a-z-a-z-0-9 | head -c32;echo
生成結(jié)果如下:
rmdlgspn_bm-izvfwz9bei0rf-jiy6gs
7. 使用非常有用的 dd 命令
dd if=/dev/urandom bs=1 count=32 2 /dev/null | base64 -w 0 | rev | cut -b 2- | rev
生成結(jié)果如下:
9+0rud4u3hmsdmlgd7j0sf/r09mzfdvbs28w+po2wca
8. 你甚至可以生成一個(gè)只用左手便可以輸入的密碼
/dev/urandom tr -dc 12345!@#$%qwertqwertasdfgasdfgzxcvbzxcvb | head -c32; echo
生成結(jié)果如下:
vtg3#tr4sagxg3z%##wzg4zq@gz$wdqf
9. 如果每次都使用上述某種方法,那更好的辦法是將它保存為函數(shù)。如果這樣做了,那么在首次運(yùn)行命令之后,你便可以在任何時(shí)間只使用 randpw 就可以生成隨機(jī)密碼。或許你可以把它保存到你的~/.bashrc 文件里面
randpw(){ /dev/urandom tr -dc _a-z-a-z-0-9 | head -c${1:-16};echo;}
生成結(jié)果如下:
vgbx8cno950riykzrppya4bvbavzby_x
10. 最后這種生成隨機(jī)密碼的方法是最簡(jiǎn)單的。它同樣也可以在安裝了 cygwin 的 windows 下面運(yùn)行。在 mac os x 下也可以運(yùn)行。我敢肯定會(huì)有人抱怨這種方法生成的密碼沒(méi)有其它方法來(lái)的隨機(jī)。但實(shí)際上如果你使用它生成的全部字符串作為密碼,那這個(gè)密碼就足夠隨機(jī)了
date | md5sum
生成結(jié)果如下:
e0d057b46a9a78346cbd94b25e574e79 –
date | base64
生成結(jié)果如下:
mjaxnow5tcawn+acicazmeaxpsdmmj/mnj/lm5sgmtc6mda6mzygq1nucg==
ifconfig | md5sum
生成結(jié)果如下:
7c4243742aa515d45c12deca31428a95 –
甚至你想生成一個(gè)核彈發(fā)射密碼都可以, 下面是一個(gè)生成長(zhǎng)密碼的例子;
ifconfig | base64
生成結(jié)果如下:
zw0xicagicagiexpbmsgzw5jyxa6rxrozxjuzxqgiehxywrkcia3odoyqjpdqjoyqjpcmdo5ncag
ciagicagicagicbpbmv0igfkzhi6mtkylje2oc4zljugiejjyxn0oje5mi4xnjgumy4yntugie1h
c2s6mju1lji1ns4yntuumaogicagicagicagaw5lddygywrkcjogzmu4mdo6n2eyyjpjymzmomzl
mmi6yja5nc82ncbty29wztpmaw5rciagicagicagicbvucbcuk9brenbu1qgulvotklorybnvuxu
sunbu1qgie1uvtoxntawicbnzxryawm6mqogicagicagicagulggcgfja2v0czoymdy3nty0igvy
cm9yczowigryb3bwzwq6mcbvdmvycnvuczowigzyyw1lojakicagicagicagifryihbhy2tldhm6
odg2ndugzxjyb3jzojagzhjvchblzdowig92zxjydw5zojagy2fycmllcjowciagicagicagicbj
b2xsaxnpb25zojagdhhxdwv1zwxlbjoxmdawiaogicagicagicagulggynl0zxm6mjazndkzntex
icgxotqumcbnauipicbuwcbiexrlczozmjuynzuxniaomzeumcbnauipcgpsbyagicagicagtglu
ayblbmnhcdpmb2nhbcbmb29wymfjayagciagicagicagicbpbmv0igfkzhi6mti3ljaumc4xicbn
yxnroji1ns4wljaumaogicagicagicagaw5lddygywrkcjogojoxlzeyocbty29wztpib3n0ciag
icagicagicbvucbmt09qqkfdsybsvu5osu5hicbnvfu6mty0mzygie1ldhjpyzoxciagicagicag
icbswcbwywnrzxrzoju2otkzmsblcnjvcnm6mcbkcm9wcgvkojagb3zlcnj1bnm6mcbmcmftztow
ciagicagicagicbuwcbwywnrzxrzoju2otkzmsblcnjvcnm6mcbkcm9wcgvkojagb3zlcnj1bnm6
mcbjyxjyawvyojakicagicagicagignvbgxpc2lvbnm6mcb0ehf1zxvlbgvuojagciagicagicag
icbswcbiexrlczozmzezmdcxosaomzeunsbnauipicbuwcbiexrlczozmzezmdcxosaomzeunsbn
auipcgo=
感謝各位的閱讀,以上就是“Linux 生成隨機(jī)密碼的方法有哪些”的內(nèi)容了,經(jīng)過(guò)本文的學(xué)習(xí)后,相信大家對(duì) Linux 生成隨機(jī)密碼的方法有哪些這一問(wèn)題有了更深刻的體會(huì),具體使用情況還需要大家實(shí)踐驗(yàn)證。這里是丸趣 TV,丸趣 TV 小編將為大家推送更多相關(guān)知識(shí)點(diǎn)的文章,歡迎關(guān)注!