各位好啊,我是會編程的蝸牛,作為java開發者,我們平常肯定會接觸Linux操作系統,其實除了一般的部署應用外,它還可以幫助我們生成密碼。解決我們平常自己想各種複雜密碼的煩惱,以後我會講一講如何安全地保存我們的密碼。 ...
各位好啊,我是會編程的蝸牛,作為java開發者,我們平常肯定會接觸Linux操作系統,其實除了一般的部署應用外,它還可以幫助我們生成密碼。解決我們平常自己想各種複雜密碼的煩惱,以後我會講一講如何安全地保存我們的密碼。 當今社會,信息泄露越來越嚴重,而強大的密碼是保護個人敏感信息的第一步。在生活中,我們在各種場合都會用到大量的密碼,有些人為了貪圖方便,把這些密碼都設置成一樣,但是這樣很危險,因為一旦泄漏的話,所有的賬號都將暴露在風險之下。 那麼,有這麼多場合需要用到密碼,我們需要如何去想這麼多高強度的密碼呢(所謂的高強度密碼,就是包含了大小寫、數字、符號的密碼)? 如果僅僅是依靠自己的腦袋瓜去想的話,那麼可能又費腦力,效率又低下。本文就介紹 Linux 系統下通過命令行生成高強度密碼的 3 種方法。 1. pwgen pwgen 工具的特點是可以生成一些強度足夠強,並且容易被記住的密碼。但是,如果你偏偏想生成一些不容易記住,有點像隨機密碼,只需在這個工具裡加上 -s 選項即可。 1.1 pwgen 的安裝 對於 Debian/Ubuntu 系統,這個工具已經存在在軟體庫里了,直接使用 apt-get 命令即可完成安裝。 $ sudo apt install pwgen 對於 RHEL/CentOS 系統,可以使用 yum 命令安裝。 $ sudo yum install pwgen 而對於其它發行版,可以使用該版本對應的安裝命令進行安裝,為了節省篇幅就不贅述了。 1.2 pwgen 的用法 pwgen 最簡單的用法是在命令行里直接敲入這個命令,無須帶上任何參數,這樣就可以隨機生成 160 個高強度密碼。預設情況下,它生成的密碼字元數是 8 位,包含大小寫及數字,並且比較容易記住。 它生成的密碼結果一共有 160 個,分成 20 行 8列。為了節省篇幅,以下結果進行了縮減。 $ pwgenameiK2oo aibi3Cha EPium0Ie aisoh1Ee Nidee9ae uNga0Bee uPh9ieM1 ahn1ooNgoc5ooTea tai7eKid tae2yieS hiecaiR8 wohY2Ohk Uab2maed heC4aXoh Ob6Nieso…………ahV4yore ue2laePh fu1eThui qui7aePh Fahth1nu ohk9puLo aiBeez0b Neengai5 如果你覺得 8 位太短,想生成 5 個 14 個字元長度的強度更高的密碼,那麼可以加上 -s 選項,指定長度及個數: $ pwgen -s 14 57YxUwDyfxGVTYD em2NT6FceXjPfT u8jlrljbrclcTi IruIX3Xu0TFXRr X8M9cB6wKNot1e 如果你覺得還不夠安全,想要生成鬼都記不住,無敵安全的變態級密碼,可以加上 -cnys 選項,命令格式如下: $ 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 2. openssl openssl 工具是調用 OpenSSL 的一些庫中的各種專業級密碼學函數來生成密碼,強度也相對比較高。 例如,我們想要生成一個 14 位的隨機密碼,可以使用以下命令格式來操作: $ openssl rand -base64 14WjzyDqdkWf3e53tJw/c= 但是,這樣的弊端很明顯,一條命令只能生成一個密碼,如果想要生成多個密碼的話,就需要寫一個簡單的 Shell 語句。 $ for pw in {1..4}; do openssl rand -base64 14; done6i0hgHDBi3ohZ9Mil8I=gtn+y1bVFJFanpJqWaA=rYu+wy+0nwLf5lk7TBA=xrdNGykIzxaKDiLF2Bw= 3. gpg 1991年,程式員 Phil Zimmermann 為了躲避 zf 的監視,研發出了一款加密軟體 PGP。這款軟體簡單實用,很快就在程式員界傳播開來,成了很多碼農的必備神器。可是,它是一款商業軟體,無法免費使用。所以,為了讓更多人用上這樣的軟體,自由軟體基金會決定,開發一個 PGP 的替代品,取名為 GnuPG。 對於 gpg 工具,如果我們想要生成一個 14 位的隨機高強度密碼,我們可以使用以下格式: $ gpg --gen-random --armor 1 14or$ gpg2 --gen-random --armor 1 14jq1mtY4gBa6gIuJrggM= 但是,這個弊端與 openssl 一樣,一條命令只能生成一個密碼。同樣地,如果需要生成多個密碼的話,那就需要寫一個簡單的 Shell 腳本。 $ for pw in {1..4}; do gpg --gen-random --armor 1 14; doneor$ for pw in {1..4}; do gpg2 --gen-random --armor 1 14; doneF5ZzLSUMet2kefG6Ssc=8hh7BFNs8Qu0cnrvHrY=B+PEt28CosR5xO05/sQ=m21bfx6UG1cBDzVGKcE= 4. 小結 為了保證我們信息的安全,一個高強度的密碼必不可少,大家造成別忽視。本文介紹了 3 種在 Linux 系統命令行隨機生成高強度密碼的方法,希望對大家能夠有所幫助。但是,這樣的工具還有很多,比如 makepasswd ,mkpasswd 等,大家有興趣的可以去找一些相關的資料來查看。大家平常使用的密碼都是怎麼來的?歡迎留言討論! 推薦閱讀 點擊標題可跳轉 Tabby,一款老外都在用的 SSH工具,竟然還支持網頁操作 如何在CentOS7上搭建自己的GitLab倉庫 如何用Virtualbox搭建一個虛擬機 JetBrains Fleet初體驗,如何運行一個java項目 IDEA 調試起來太費勁?你需要瞭解這幾招! 我整理的乾貨,回覆【JAVA核心】獲取《JAVA核心面試知識整理》 分享 收藏 點贊 點亮下方“在看”圖標 讓更多人看到 原文鏈接:https://www.lxlinux.net/3-ways-generate-top-security-passwords.html