centos7/rhel7 開始使用pam_pwquality模組進行密碼複雜度策略的控制管理。pam_pwquality替換了原來centos6/rhel6中的pam_cracklib模組,並向後相容。
可以通過兩種方式實現:
直接指定pam_pwquality模組引數,即在/etc/pam.d/system-auth中的「password requisite pam_pwquality.so」行尾新增具體引數,比如「minlen=16 ucredit=-1 lcredit=-1 ocredit=-1 dcredit=-1」,表示最小密碼長度16位,數字,大小寫字母,特殊字元均至少包含1位。
通過修改/etc/security/pwquality.conf引數檔案,定義密碼複雜度規則。修改pwquality.conf引數檔案有2種方法,可以參考「centos7 設定密碼規則」 by shaonbean。
(1)直接vi或vim編輯器 ,或者甚至用sed命令,修改/etc/security/pwquality.conf
(2)使用authconfig命令修改,修改後最終會體現在/etc/security/pwquality.conf檔案中
由於centos7預設取消了對pam_cracklib模組的使用,配置檔案/etc/pam.d/system-auth中沒有pam_cracklib.so相關的條目。
有同學直接在/etc/pam.d/system-aut**件末尾新增「password requisite pam_cracklib.so try_first_pass retry=3 type= minlen=16 ucredit=-1 lcredit=-1 ocredit=-1 dcredit=-1」 ,然後發現實際上密碼複雜度策略並沒有生效。
經測試是因為位置不對,把上面的語句新增在「pam_pwquality.so」所在行的前面,即可使策略生效。如下所示:
(1)pam_pwquality(8) - linux man page
(2)administering local password policies in centos 7
(3)centos 7 設定密碼規則
python驗證密碼複雜度 密碼複雜度檢測演算法
密碼規則 可以輸入數字和字母 大寫 小寫 組合,長度6 10位 字串複雜度計算流程 1.計算字元種類數量 字元種類有數字 大寫字母 小寫字母 2.計算字元差異數量 區分大寫字母和小寫字母,重複的字元不計算在內 3.根據字元種類數量和字元差異數量計算複雜度 下面是偽 var level 1 簡單 2 ...
MYSQL設定密碼複雜度
mysql5.6.6版本之後增加了密碼強度驗證外掛程式validate password,相關引數設定的較為嚴格。使用了該外掛程式會檢查設定的密碼是否符合當前設定的強度規則,若不滿足則拒絕設定。在 mysql安裝目錄中,mysql server 8.0 lib plugin 可以看到預設存在vali...
MySQL設定密碼複雜度
mysql5.6.6版本之後增加了密碼強度驗證外掛程式validate password,相關引數設定的較為嚴格。使用了該外掛程式會檢查設定的密碼是否符合當前設定的強度規則,若不滿足則拒絕設定。1 在 mysql安裝目錄中,mysql server 8.0 lib plugin 可以看到預設存在va...