介紹如何在 Linux 系統上使用 cracklib
檢測使用者的密碼強度。
cracklib
若在 Ubuntu 或 Debian Linux 中可以使用 apt
安裝 cracklib-runtime
套件:
# 安裝 cracklib-runtime 套件
sudo apt install cracklib-runtime
若在 Fedora、CentOS 或 RedHat Linux 中,則可使用 apt
安裝 cracklib
套件:
# 安裝 cracklib 套件
sudo yum install cracklib
cracklib-check
這個指令可以從標準輸入讀取密碼,檢查密碼的複雜度是否足夠。
密碼太簡單、有規則,就會顯示 simplistic/systematic
:
# 檢查 123456 這個密碼的強度 echo "123456" | cracklib-check
123456: it is too simplistic/systematic
密碼長度太短,就會顯示 too short
:
# 檢查 Desk 這個密碼的強度 echo "Desk" | cracklib-check
Desk: it is too short
當密碼只是以普通英文單字組成時,就會顯示 based on a dictionary word
:
# 檢查 Sunday139 這個密碼的強度 echo "Sunday139" | cracklib-check
Sunday139: it is based on a dictionary word
若密碼強度足夠,就會顯示 OK
:
# 檢查 Sun123day 這個密碼的強度 echo "Sun123day" | cracklib-check
Sun123day: OK
若要一次檢查多筆密碼的強度,可以將密碼寫在文字檔案內,一行一筆密碼,然後用 cat
倒給 cracklib-check
檢查:
# 檢查檔案內多筆密碼的強度
cat test.txt | cracklib-check
123456: it is too simplistic/systematic Desk: it is too short Sunday139: it is based on a dictionary word Sun123day: OK