最近我們在網站上發表過一篇關于 檢查密碼複雜性/強度和評分 的文章。它可以幫助你檢查你的密碼的強度和評分。
我們可以手工創建我們需要的密碼。但如果你想要爲多個用戶或服務器生成密碼,解決方案是什麽呢?
是的,Linux 中有許多可用的工具能滿足這個需求。本文中我將會介紹五種最好的密碼生成器。
這些工具可以爲你生成高強度隨機密碼。如果你想要爲多個用戶和服務器更新密碼,請繼續讀下去。
這些工具易于使用,這也是我喜歡用它們的原因。默認情況下它們會生成一個足夠健壯的密碼,你也可以通過使用其他可用的選項來生成一個超強的密碼。
它會幫助你生成符合下列要求的超強密碼。密碼長度至少有 12-15 個字符,包括字母(大寫及小寫),數字及特殊符號。
工具如下:
- pwgen:生成易于人類記憶並且盡可能安全的密碼。
- openssl:是一個用來從 shell 中調用 OpenSSL 加密庫提供的多種密碼學函數的命令行工具。
- gpg:OpenPGP 加密/簽名工具。
- mkpasswd:生成新密碼,可以選擇直接設置給一名用戶。
- makepasswd:使用 /dev/urandom 生成真隨機密碼,比起好記它更重視安全性。
- /dev/urandom 文件:兩個特殊的字符文件 /dev/random 和 /dev/urandom (自 Linux 1.3.30 起出現)提供了內核隨機數生成器的接口。
- md5sum:是一個用來計算及校驗 128 位 MD5 哈希的程序。
- sha256sum:被設計用來使用 SHA-256 算法(SHA-2 系列,摘要長度爲 256 位)校驗數據完整性。
- sha1pass:生成一個 SHA1 密碼哈希。在命令缺少鹽值的情況下,將會生成一個隨機的鹽值向量。
怎麽用 pwgen 命令在 linux 下生成一個隨機的強壯密碼?
pwgen 程序生成易于人類記憶並且盡可能安全的密碼。
易于人類記憶的密碼永遠都不會像完全隨機的密碼一樣安全。
使用 -s 選項來生成完全隨機,難于記憶的密碼。由于我們記不住,這些密碼應該只用于機器。
在 Fedora 系統中,使用 DNF 命令 來安裝 pwgen。
$ sudo dnf install pwgen
在 Debian/Ubuntu 系統中,使用 APT-GET 命令 或 APT 命令 來安裝 pwgen。
$ sudo apt install pwgen
在 Arch Linux 系統中,使用 Pacman 命令 來安裝 pwgen。
$ sudo pacman -S pwgen
在 RHEL/CentOS 系統中,使用 YUM 命令 來安裝 pwgen。
$ sudo yum install pwgen
在 openSUSE Leap 系統中,使用 Zypper 命令 來安裝 pwgen。
$ sudo zypper install pwgen
在 Linux 下如何使用 pwgen 命令?
使用方法非常簡單直接。使用下列示例中更適合你的那種。默認情況下,它會生成一個方便記憶的密碼。
想要這樣做,只要在你的終端中運行 pwgen 命令。將會一下生成160個密碼以8列20行打印出來。
$ pwgenameiK2oo aibi3Cha EPium0Ie aisoh1Ee Nidee9ae uNga0Bee uPh9ieM1 ahn1ooNgoc5ooTea tai7eKid tae2yieS hiecaiR8 wohY2Ohk Uab2maed heC4aXoh Ob6NiesoShaeriu3 uy9Juk5u hoht7Doo Fah6yah3 faz9Jeew eKiek4ju as0Xuosh Eiwo4epooot8teeZ Ui1yoohi Aechae7A Ohdi2ael cae5Thoh Au1aeTei ais0aiC2 Cai2quinOox9ohz4 neev0Che ahza8AQu Ahz7eica meiBeeW0 Av3bo7ah quoiTu3f taeNg3aeAiko7Aiz SheiGh8E aesaeSh7 haet6Loo AeTel3oN Ath7zeer IeYah4ie UG3oothaOhch9Och Phuap6su iel5Xu7s diqui7Bu ieF2dier eeluHa1u Thagei0i Ceeth3ohOCei1ahj zei2aiYo Jahgh1ia ooqu1Cej eez2aiPo Wahd5soo noo7Mei9 Hie5asheUith4Or2 Xie3uh2b fuF9Eilu eiN2sha9 zae2YaSh oGh5ephi ohvao4Ae aixu6aeMfo4Ierah iephei6A hae9eeGa eiBeiY3g Aic8Kee9 he8AheCh ohM4bid9 eemae3Zueesh2EiM cheiGa4j PooV2vii ahpeeg5E aezauX2c Xe7aethu Ahvaph7a Joh2heecIi5EeShi aij7Uo8e ooy2Ahth mieKe2ni eiQuu8fe giedaQu0 eiPhob3E oox1uo2Ueehia4Hu ga9Ahw0a ohxuZei7 eV4OoXio Kid2wu1n ku4Ahf5s uigh8uQu AhWoh0povo1Eeb2u Ahth7ve5 ieje4eiL ieci1Ach Meephie9 iephieY8 Eesoom7u eakai2Bouo8Ieche Zai3aev5 aGhahf0E Wowoo5th Oraeb0ah Gah3nah0 ieGhah0p aeCh0OhJahQu2feZ ahQu0gah foik7Ush cei1Wai1 Aivi3ooY eephei5U MooZae3O quooRoh7aequae5U pae6Ceiv eizahF1k ohmi7ETa ahyaeK1N Mohw2no8 ooc8Oone coo7IeveeePhei9h Weequ8eV Vie4iezu neeMiim4 ie6aiZoh Queegh2E shahwi3N Inichie8Sid1aeji mohj4Ko7 lieDi0pe Zeemah6a thuevu2E phi4Ohsh paiKeix1 ooz1CephahV4yore ue2laePh fu1eThui qui7aePh Fahth1nu ohk9puLo aiBeez0b Neengai5
生成安全的隨機密碼,使用 pwgen 命令的 -s 選項。
$ pwgen -sCU75lgZd 7HzzKgtA 2ktBJDpR F6XJVhBs UjAm3bNL zO7Dw7JJ pxn8fUvp Ka3lLilGywJX7iJl D9ajxb6N 78c1HOg2 g8vtWCra Jp6pBGBw oYuev9Vl gbA6gHV8 G6XQoVO5uQN98IU4 50GgQfrX FrTsou2t YQorO4x6 UGer8Yi2 O7DB5nw1 1ax370UR 1xVRPkA1RVaGDr2i Nt11ekUd 9Vm3D244 ck8Lnpd0 SjDt8uWn 5ERT4tf8 4EONFzyY Jc6T83jgWZa6bKPW H4HMo1YU bsDDRik3 gBwV7LOW 9H1QRQ4x 3Ak7RcSe IJu2RBF9 e508xrLCSzTrW191 AslxDa6E IkWWov2b iOb6EmTy qHt82OwG 5ZFO7B53 97zmjOPu A4KZuhYVuQpoJR4D 0eKyOiUr Rz96smeO 3HTABu3N 6W0VmEls uPsp5zpw 8UD3VkMG YTct6Rd4VKo0cVmq E07ZX7j9 kQSlvA69 Nm3fpv3i xWvF2xMu yEfcw8uA oQGVX3l9 grTzx7Xjs4GVEYtM uJl5sYMe n3icRPiY ED3Mup4B k3M9KHI7 IkxqoSM0 dt2cxmMU yb2tUkut2Q9wGZQx 8Rpo11s9 I13siOHu 7GV64Fjv 3VONzD8i SCDfVD3F oiPTx239 6BQakoiJXUEokiC4 ybL7VGmL el2RfvWk zKc7CLcE 3FqNBSyA NjDWrvZ5 KI3NSX4h VFyo6VPrh4q3XeqZ FDYMoX6f uTU5ZzU3 6u4ob4Ep wiYPt05n CZga66qh upzH6Z9y RuVcqbe8taQv11hq 1xsY67a8 EVo9GLXA FCaDLGb1 bZyh0YN8 0nTKo0Qy RRVUwn9t DuU8mwwvx96LWpCb tFLz3fBG dNb4gCKf n6VYcOiH 1ep6QYFZ x8kaJtrY 56PDWuW6 1R0If4kV2XK0NLQK 4XQqhycl Ip08cn6c Bnx9z2Bz 7gjGlON7 CJxLR1U4 mqMwir3j ovGXWu0zMfDjk5m8 4KwM9SAN oz0fZ5eo 5m8iRtco oP5BpLh0 Z5kvwr1W f34O2O43 hXao1Sp8tKoG5VNI f13fuYvm BQQn8MD3 bmFSf6Mf Z4Y0o17U jT4wO1DG cz2clBES Lr4B3qIYArKQRND6 8xnh4oIs nayiK2zG yWvQCV3v AFPlHSB8 zfx5bnaL t5lFbenk F2dIeBr4C6RqDQMy gKt28c9O ZCi0tQKE 0Ekdjh3P ox2vWOMI 14XF4gwc nYA0L6tV rRN3leknlmwZNjz1 4ovmJAr7 shPl9o5f FFsuNwj0 F2eVkqGi 7gw277RZ nYE7gCLl JDn05S5N
假設你想要生成 5 個 14 字符長的密碼,方法如下:
$ pwgen -s 14 57YxUwDyfxGVTYD em2NT6FceXjPfT u8jlrljbrclcTi IruIX3Xu0TFXRr X8M9cB6wKNot1e
如果你真的想要生成 20 個超強隨機密碼,方法如下:
$ pwgen -cnys 14 20mQ3E=vfGfZ,5[B #zmj{i5|ZS){jg Ht_8i7OqJ%N`~2 443fa5iJ\W-L?] ?Qs$o=vz2vgQBR^’Ry0Az|J9p2+0 t2oA/n7U_’|QRx EsX*%_(4./QCRJ ACr-,8yF9&eM[* !Xz1C’bw?tv50o8hfv-fK(VxwQGS q!qj?sD7Xmkb7^ N#Zp\_Y2kr%!)~ 4*pwYs{bq]Hh&Y |4u=-Q1!jS~8=;]{$N#FPX1L2B{h I|01fcK.z?QTz” l~]JD_,W%5bp.E +i2=D3;BQ}p+$I n.a3,.D3VQ3~&i
如何在 Linux 下使用 openssl 命令生成隨機強密碼?
openssl 是一個用來從 shell 中調用 OpenSSL 加密庫提供的多種密碼學函數的命令行工具。
像下面這樣運行 openssl 命令可以生成一個 14 字符長的隨機強密碼。
$ openssl rand -base64 14WjzyDqdkWf3e53tJw/c=
如果你想要生成 10 個 14 字符長的隨機強密碼,將 openssl 命令與 for 循環結合起來使用。
$ for pw in {1..10}; do openssl rand -base64 14; done6i0hgHDBi3ohZ9Mil8I=gtn+y1bVFJFanpJqWaA=rYu+wy+0nwLf5lk7TBA=xrdNGykIzxaKDiLF2Bw=cltejRkDPdFPC/zI0Pg=G6aroK6d4xVVYFTrZGs=jJEnFoOk1+UTSx/wJrY=TFxVjBmLx9aivXB3yxE=oQtOLPwTuO8df7dIv9I=ktpBpCSQFOD+5kIIe7Y=
如何在 Linux 下使用 gpg 命令生成隨機強密碼?
gpg 是 Gnu Privacy Guard (GnuPG) 中的 OpenPGP 實現部分。它是一個提供 OpenPGP 標准的數字加密與簽名服務的工具。gpg 具有完整的密鑰管理功能和其他完整 OpenPGP 實現應該具備的全部功能。
下面這樣執行 gpg 命令來生成一個 14 字符長的隨機強密碼。
$ gpg –gen-random –armor 1 14or$ gpg2 –gen-random –armor 1 14jq1mtY4gBa6gIuJrggM=
如果想要使用 gpg 生成 10 個 14 字符長的隨機強密碼,像下面這樣使用 for 循環。
$ for pw in {1..10}; do gpg –gen-random –armor 1 14; doneor$ for pw in {1..10}; do gpg2 –gen-random –armor 1 14; doneF5ZzLSUMet2kefG6Ssc=8hh7BFNs8Qu0cnrvHrY=B+PEt28CosR5xO05/sQ=m21bfx6UG1cBDzVGKcE=wALosRXnBgmOC6+++xU=TGpjT5xRxo/zFq/lNeg=ggsKxVgpB/3aSOY15W4=iUlezWxL626CPc9omTI=pYb7xQwI1NTlM2rxaCg=eJjhtA6oHhBrUpLY4fM=
如何在 Linux 下使用 mkpasswd 命令生成隨機強密碼?
mkpasswd 生成密碼並可以自動將其爲用戶設置。不加任何參數的情況下,mkpasswd 返回一個新的密碼。它是 expect 軟件包的一部分,所以想要使用 mkpasswd 命令,你需要安裝 expect 軟件包。
在 Fedora 系統中,使用 DNF 命令 來安裝 mkpasswd。
$ sudo dnf install expect
在 Debian/Ubuntu 系統中,使用 APT-GET 命令 或 APT 命令 來安裝 mkpasswd。
$ sudo apt install expect
在 Arch Linux 系統中,使用 Pacman 命令 來安裝 mkpasswd。
$ sudo pacman -S expect
在 RHEL/CentOS 系統中,使用 YUM 命令 來安裝 mkpasswd。
$ sudo yum install expect
在 openSUSE Leap 系統中,使用 Zypper 命令 來安裝 mkpasswd。
$ sudo zypper install expect
在終端中執行 mkpasswd 命令來生成一個隨機密碼。
$ mkpasswd37_slQepD
像下面這樣執行 mkpasswd 命令可以生成一個 14 字符長的隨機強密碼。
$ mkpasswd -l 14W1qP1uv=lhghgh
像下面這樣執行 mkpasswd 命令 來生成一個 14 字符長,包含大小寫字母、數字和特殊字符的隨機強密碼。
$ mkpasswd -l 14 -d 3 -C 3 -s 33aad!bMWG49″t,
如果你想要生成 10 個 14 字符長的隨機強密碼(包括大小寫字母、數字和特殊字符),使用 for 循環和 mkpasswd 命令。
$ for pw in {1..10}; do mkpasswd -l 14 -d 3 -C 3 -s 3; donezmSwP[q9;P1r6[E42zcvzM”i3%B\8}1#[email protected]0X:zB(mmU22?nj0sqqL44M}ko(O^43tQ(.6jG;ceRq-jB6cp3x1GZ$e=$of?Rj9kb2N(1J9HCf,nn#gjO79^Tu9m56+Ev_Yso(
如何在 Linux 下使用 makepasswd 命令生成隨機強密碼?
makepasswd 使用 /dev/urandom 生成真隨機密碼,與易于記憶相比它更注重安全性。它也可以加密命令行中給出的明文密碼。
在終端中執行 makepasswd 命令來生成一個隨機密碼。
$ makepasswdHdCJafVaN
在終端中像下面這樣執行 makepasswd 命令來生成 14 字符長的隨機強密碼。
$ makepasswd –chars 14HxJDv5quavrqmU
像下面這樣執行 makepasswd 來生成 10 個 14 字符長的隨機強密碼。
$ makepasswd –chars 14 –count 10TqmKVWnRGeoVNrmPV2P98hLRUsaiMhMXPwyzYi2RLodxMGgLmoFpYivi8p0G7JvJjd6qUP7SmX95MiJcQauVKWzrh5npAjvNmLoHPKdq1uA9tU85V1su9GjU2oIGiQM2TMCEoahzLNYC
如何在 Linux 系統中使用多個命令生成隨機強密碼?
如果你還在尋找其他的方案,下面的工具也可以用來在 Linux 中生成隨機密碼。
使用 md5sum:它是一個用來計算及校驗 128 位 MD5 哈希的程序。
$ date | md5sum9baf96fb6e8cbd99601d97a5c3acc2c4 –
使用 /dev/urandom: 兩個特殊的字符文件 /dev/random 和 /dev/urandom (自 Linux 1.3.30 起出現)提供了內核隨機數生成器的接口。/dev/random 的主設備號爲 1,次設備號爲 8。/dev/urandom 主設備號爲 1,次設備號爲 9。
$ cat /dev/urandom | tr -dc ‘a-zA-Z0-9’ | head -c 1415LQB9J84Btnzz
使用 sha256sum:它被設計用來使用 SHA-256 算法(SHA-2 系列,摘要長度爲 256 位)校驗數據完整性。
$ date | sha256suma114ae5c458ae0d366e1b673d558d921bb937e568d9329b525cf32290478826a –
使用 sha1pass:它生成一個 SHA1 密碼哈希。在命令缺少鹽值的情況下,將會生成一個隨機的鹽值向量。
$ sha1pass$4$9+JvykOv$e7U0jMJL2yBOL+RVa2Eke8SETEo$
天下數據IDC與全球近120多個國家頂級機房直接合作,提供包括香港、美國、韓國、日本、台灣、新加坡、荷蘭、法國、英國、德國、埃及、南非、巴西、印度、越南等國家和地區的服務器、雲服務器的租用服務.