要檢查密碼的強度, 單純以密碼長度及是否包含英文字母, 數字並不足夠, 例如 “abcd1234” 便是 8 個位, 包含字母及數字的密碼, 但這個密碼很簡單。cracklib 就是一套檢查密碼強度的工具, 以下是 cracklib 的安裝及使用方法。
在 Redhat 及 Debian 系列的發行版, 安裝 cracklib 都很方便:
RHEL / CentOS / Fedora:
[root@localhost ~]# yum install cracklib
Debian / Ubuntu / Mint:
[root@localhost ~]# apt-get install libcrack2
安裝好 cracklib 後, 可以使用它來檢查密碼強度, 以上面 “abcd1234” 為例子:
|
1 |
[root@localhost ~]# echo "abcd1234" | cracklib-check |
會回傳這樣的結果:
abcd1234: it is too simplistic/systematic
即密碼太簡單。
輪入英文單字 “table”, 回傳密碼太短:
|
1 |
[root@localhost ~]# echo "table" | cracklib-check |
table: it is too short
試試用 “database” 作為密碼:
|
1 |
[root@localhost ~]# echo "database" | cracklib-check |
database: it is based on a dictionary word
回傳 database 是在字典出現的英文單字。
現在隨手輸入一組亂數密碼:
|
1 |
[root@localhost ~]# echo "njfsdhvy2~2" | cracklib-check |
njfsdhvy2~2: OK
cracklib 認為是安全的密碼, 會回傳 “OK”.