pwgen生成的密碼易於記憶且至關安全。從技術上來講,容易記憶的密碼不會比隨機生成的密碼更加安全。可是,在大多數狀況下,pwgen生成的密碼已經足夠安全,除了網銀密碼等須要高安全等級的狀況外。使用易於記憶的密碼的好處就是你不會把這些密碼寫下來或者存到電腦上的某個地方,這樣作原本就是不安全的。算法
安裝pwgen,在終端窗口輸入(適用於Debian系列的Linux系統):安全
代碼以下:app
sudo apt-get install pwgenide
不帶任何參數就運行pwgen,將會輸出滿屏幕的密碼。你能夠從中選擇一個做爲本身的密碼而後清除屏幕。採用這種方式生成密碼,就是有人在你背後,他也不知道你選擇的究竟是哪個。函數
運行pwgen,在終端輸入:加密
pwgenspa
選好密碼以後,在終端輸入 clear 就能夠"清除"終端窗口內容。ssl
若是你肯定背後沒有人,可使用"-1"參數來讓pwgen只生成一個密碼。字符串
代碼以下:get
pwgen -1
若是想生成一個徹底隨機的密碼,使用"-s"參數。
代碼以下:
pwgen -1 -s
若是想提升密碼的安全等級,可在密碼中使用特殊字符(如感嘆號、逗號等)。使用"-y"參數可讓生成的密碼至少包括一個特殊字符。
代碼以下:
pwgen -1 -s -y
pwgen 命令更多有趣的參數:
-0:密碼中不包含數字。
-B, --ambiguous:密碼中不包含容易混淆的字符,好比說"1"和"l"、"0"和"O"。
-v, --no-vowels:密碼不包括元音字母或者可能被誤認爲是元音字母的數字。
下面來看幾個具體的例子:
1. 使用命令 pwgen 來生成一個長度爲 10 個字符的獨特的隨機密碼。
代碼以下:
$ pwgen 10 1
生成一個獨特的隨機密碼
一口氣生成若干組長度爲 50 個字符的惟一的隨機密碼!
代碼以下:
$ pwgen 50
生成多組隨機密碼
2. 你還可使用 makepasswd 來每次生成一個給定長度的獨特的隨機密碼。在你把玩 makepasswd 命令以前,請確保你已經安裝了它。如若沒有安裝它,試試使用 Apt 或 YUM 包管理器來安裝 makepasswd這個軟件包。
生成一個長度爲 10 個字符的隨機密碼。該命令產生的密碼的長度默認爲 10。
代碼以下:
$ makepasswd
使用 makepasswd 生成獨特的密碼
生成一個長度爲 50 個字符的隨機密碼。
代碼以下:
$ makepasswd --char 50
生成長度爲 50 的密碼
生成 7 個長度爲 20 個字符的隨機密碼。
代碼以下:
$ makepasswd --char 20 --count 7
3. 使用帶"鹽"的 Crypt來加密一個密碼。提供手動或自動添加 "鹽"。
對於那些不清楚 鹽的意義的人,這裏的 "鹽" 指的是一個隨機數據,它做爲密碼生成函數的一個額外的輸入,目的是保護密碼免受詞典攻擊。
在執行下面的操做前,請確保你已經安裝了 mkpasswd。
下面的命令將帶 "鹽" 加密一個密碼。"鹽" 的值是隨機自動生成的。因此每次你運行下面的命令時,都將產生不一樣的輸出,由於它每次接受了隨機取值的 "鹽"。
代碼以下:
$ mkpasswd tecmint
使用 Crypt 來加密密碼
如今讓咱們來手動定義 "鹽" 的值。每次它將產生相同的結果。請注意你能夠輸入任何你想輸入的值來做爲 "鹽" 的值。
代碼以下:
$ mkpasswd tecmint -s tt
帶"鹽"加密密碼
另外, mkpasswd 仍是交互式的,假如你在命令中沒有提供密碼,它將主動詢問你來輸入密碼。
4. 使用 aes-256-cbc 加密算法並使用帶"鹽"的密碼(如 "tecmint") 加密一個字符串(如 "Tecmint-is-a-Linux-Community")。
代碼以下:
# echo Tecmint-is-a-Linux-Community | openssl enc -aes-256-cbc -a -salt -pass pass:tecmint
若是想深刻體驗LINUX系統的新手,也能夠先下載一個方德Linux軟件中心試用一下。