兩款不錯的Linux密碼生成工具

先介紹最簡單的方法,Linux自帶的

$ strings /dev/urandom |tr -dc A-Za-z0-9 | head -c 20; echo
whucNWhr35W6ZP0MxrLQ

 

$ head -c 12  /dev/random | base64 | tr -d '\n='
Z9Xx4neDb+P3jHkD


-c 參數調整密碼長度html


pwgen

項目地址:https://sourceforge.net/projects/pwgen/python

安裝

$ sudo apt-get install pwgen -y

使用

$ pwgen --help

Usage: pwgen [ OPTIONS ] [ pw_length ] [ num_pw ]

 

使用案例:

$ pwgen
oNgequ6k aen7aeCi MahBual8 sa6uox7E hai8Xo9j Voo0Oi7o chae3OLa ooFohQu0
ughi0Aer Ing2Ekai thopie9C ahk5Aiyi Thee6eup aing6EiX diV8Loe0 iT6tae0k
ohYiequ7 eeD9aefu Eith8uow Oorai3Ai ojem0ahH ij6Yeoce ooGuchu2 ijoPh8oo
aiK8xomu EiTaes6a eituth9G fohZo9pa GuT6gao5 Kaivei3t eeP3iNge Teivah1H
AeCh9eil ieCh0eeC ua9buoSh epa2Hei3 unoW0koh tuiPhae0 uYaip4sh shuo5Ieb
sheRoo9e aiZee2sh aeF6hi8t eik8Chei Cei1oim8 OiRoo7ei ez2aiYee TeiM2thi
Ubie8hai Eeghie0a ieVo5Ook eGingah5 waeXoo6o aiGoh0nu aeTe9eiy zuumooT2
Caj0dee9 au0phuPh ot0Suv5O Quiid7uo Zohbeek8 ahF2ohlo Aedo6Ohl ieth0Ein
OXie4ieY vee6aeHu Ozouciu2 eez9ohSe xo3fu2Ae chi6Eelu quohY7ai ooRocha8
Aej3ieph iemouT9o thahFei6 CaRe8Haz Ahl4woh4 vae8ieCh wu2Ahh4u goXood5k
aiJae8Co ahT0aesh eit8geiL Ce0fephi He3Eila4 puhaMoo3 Aixais5m Aigho8ie
zaeWiqu5 uwee3Ahs tieDo2ph eeyahs5S Juz0AeNe Ighai7es xieQu7el hooNgai6
Wogh8Iey eeMeig2x xuinai7E heiTaiw4 Je9sho4i ooheLus0 ail4eiPh Shoh0azi
aiB0ooza Chie3evo pheeD1to Nei8yahv raB4opah Shoojoh0 ou7Oe9ei Gimoo1li
yo1Eexoo xoo5Euth aichoo6A Phoo3rej Te1joebo YaDu3ahX aiR8eequ leuw6Ahd
ufei8eeH aeseeTh5 achuv9Ai eethoh6E Ahso1loh ohViaW7U opook7Va Ga3faino
iDee0ic3 Ax4Vaina Theex6eo uu2soo2I bi4ovaVi Othech8b Aim4aego Xahb4aeC
shuth8Ae Ieghoh7j Hahmee8J BeaPah4o yoozaCh0 tho4Evio eengeeJ8 fiep4eiC
Xiephai9 Airu6pae ciB5Oi0t Ra3ahCai Ahqu0Val puTha8ka Paecos3f oBaePae4
Ahqu4jau EabaGhu0 zi6GeeTh ceeY2aiy Chin7shi Jeel3lie Ae2zaeti IePhu8ze

 

$ pwgen -1
Dejux2th

 

$ pwgen -ysBv 15

Xb7:b[Lthw-zmVx k%vrdn]R>T4#+PW <%!4~\t}.MH!9&+ f?9|/MN3CJc_'[{ 4,rVVq?$gK@s@*_
4"'_RsN4c;W_"k= $>MX,|T9TVWt'_s PW?;MHN+tzF7>g[ mb3+`tnx*/KrWPN zpqK$>)_-?CVk4`
N`4NH;f3q*'r+xz s|:~,>L'NP7m-jX FF'3'jTp9/R\!H\ Ht<(b^X<93*^q/+ |!^c]P+mgN$4C=s
`^"HK3sm$F>;whb _XwWcFpW)4!xxpn 9#3V\kCVXW&]*7P ;Lvc\?L#mpM9xdL 3@hN\m/@*`zW%Tf
Cmr+&'wH4#tr9,> @p.N)KCtT=@9{mX `Ph[#Jx|X:.3*#V F@/,tF':n7T_JsL /:r7Rr]*z#^@n.(
sJzppz%<-7C-C;T &c]3`Vd_7\$g#:x xLKF};M4#%v-7Rg +*/[wpp]{nF9bVF @r9(~w"[WzfCTt)
WfpvV9g~&gm$`h~ >!#qsfF3zN;+.>" j3M{`H$zft<~Nwg 7RbL?zPwJ$Mbd>} \F9`*ksWp77Cx#=
K[cPz3FnzgK}fv: ^f7M"|z>][Hp$=( hV}>V7.$tJpV{r` qdN9$c%Nd'KR'jp {T3&7%]{*T43rN4
/*~L%W^L(q)N;t9 vTWJ&r4*)N9wnXr jn4R[V^~CT)V;/= HH',4"xVTjf@H>! :zcs\H=@x\7(ghd
-4>h;+WWh@H$9]~ M/mFg';P7)dJ-|? '@VC4H*q|j&"@J7 T#}X:[j.L<3]Nr+ ?hF>)PLLN}r`T3K
bqP4%R;?g)*L]Xk 3+)j--]Hv^[r?bw f.4kNRHh"t*)F^h tV}#4w@~dh$9tFb nbP3W~k#KfW3'|=
HCd@-$/p"sh4W-_ V{9t"q-F4z9|L4T +[P\Ls9hL>*)gC4 w:bz7#g[,W&`?W= <C;7(gPV@<[_[\/
^z?9b=bMh}+t%Xk hLr_K&d*c,g_4dL ^\^_#PJf4#w~CNk c*<dgr9_c"wNWgd 9MjkNq`[!k_|9(@
{[7&"&^4.^]sK"} w9>3\bX&(Wb"v\# b3%WK!=7bk]mtX~ z{'<c9.r@^fT'XV (}=p4R4dCNV|b<7
[$wt_)%9z!w.C+L Jq-tF?sj4WkH!x\ Kx34F_PHFr!~Frx ;(H3x73MhM3@gq~ @pwF9LK<|<nx=[z
(_[9cFTsX_MC&T> -{|_99pNmsq&CJ^ 9WbhPwt;+{"^`@\ n4h[x_F`g}Pt4{R p!m7d/dk4>J@Ljj
9_/CdwTX}$!vN_h :J(d7_-)N["&j*w (=V#_<\p9JCw-~, >|_/k.7hdL\{`): .>3\fK_h>Ws4_@%
@9?XLVCg7~fF,fF 7"~+Wd!b4!hdx\9 4*m>*7FXd#P+<<p xt~:jm?$NHd[(9: LfvK">9M+"/;L9`
rXJW+Xqp4^)n<JL <Vr9\n$P;hKhj`m /7&J&H\x&m}z[H/ +&h<?P%c!|]@3b| -zF9?<N;nt[J*`K
{7JzT/*sN$vHgMh ,R7XN,Ws'#+&>*F )-WqdJ3"^s*JsC% '!9<]-d~_!Rw#[( 9)9dPJ%9Fk>L/n'

 

$ pwgen -ysBv 12 -1
j:3fcNW*<^Ft

 

$ pwgen -ysBv 6 -1 | fold -w1 |shuf|tr -d '\n'
q3?bH;

 

解釋:

fold -w1 將字符串拆分,一行一個字符

shuf 打亂字符串

tr -d '\n' 將一個個字符拼起來,用 tr '\n' '\0' 也行es6

 

xkcdpass 一個用Python編寫的密碼生成器

 

能夠從這裏下載: https://pypi.python.org/pypi/xkcdpass/bash


安裝

$ sudo apt-get install xkcdpass -y

 

使用

$ xkcdpass --help

usage: xkcdpass [-h] [-w WORDFILE] [--min MIN_LENGTH] [--max MAX_LENGTH]
                [-n NUM_WORDS] [-i] [-v VALID_CHARS] [-V] [-a ACROSTIC]
                [-c COUNT] [-d DELIM] [--allow-weak-rng]

 

使用案例:

               
先簡單運行下xkcdpass

app

$ xkcdpass
coastal palpable spiny delicacy removal mobster

將會隨機給出你幾個像上面這樣的字典單詞dom

 

 

$ xkcdpass -c 6
saffron sixth duller bargraph unpinned gaffe
dangle hurling croon elevation untitled justly
muster pastrami unruffled armful purging stack
exceeding january outline preorder petticoat stubborn
elective doorman giddily clapping valium handled
moonstone direction spoiling debit antiviral yodel

會生成6行隨機字典單詞

工具

 

你能夠用這些單詞做爲其餘命令,好比 md5sum 的輸入,來獲取隨機密碼(就像下面這樣)。

ui

$ xkcdpass | md5sum
e0c54cdbbd25ad71664b38e8b391f219  -

 


默認狀況下,xkcdpass使用的是EFF的「Long」字典表,可是你也能夠使用本身的字典表。(本身生成字典表能夠參考crunch--字典生成工具)

url

$ xkcdpass -w wordlist1.txt -w wordlist2.txt

 

二者結合腳本使用

將 pwgen 和 xkcdpass 結合起來用,生成 12 位密碼的腳本

spa

#!/bin/bash
p1=`xkcdpass | md5sum`
p2=`pwgen -ysBv 6 -1 | fold -w1 |shuf|tr -d '\n'`
p3=`echo ${p1:0:6}${p2} | fold -w1 |shuf|tr -d '\n'`
echo ${p3}
相關文章
相關標籤/搜索