天天看點

Linux 密碼複雜度設定pam_pwquality、pam_passwdqc(centos7)

1、Linux對應的密碼政策子產品有:pam_passwdqc 和 pam_pwquality 。其中pam_passwdqc子產品對應的是/etc/login.defs,pam_pwquality對應的是/etc/security/pwquality.conf

2、子產品的添加方法:/etc/pam.d/passwd

password required pam_pwquality.so retry=3

3、子產品的配置方法有兩種:

一、password required pam_pwquality.so dcredit=-1 ucredit=-1 ocredit=-1 lcredit=0

二、添加到/etc/security/pwquality.conf 中

4、/etc/security/pwquality.conf詳解:

retry=N:定義登入/修改密碼失敗時,可以重試的次數;

Difok=N:定義新密碼中必須有幾個字元要與舊密碼不同。但是如果新密碼中有1/2以上的字元與舊密碼不同時,該新密碼将被接受;

minlen=N:定義使用者密碼的最小長度;

dcredit=N:定義使用者密碼中必須包含多少個數字;

ucredit=N:定義使用者密碼中必須包含多少個大寫字母;

lcredit=N:定義使用者密碼中必須包含多少個小些字母;

ocredit=N:定義使用者密碼中必須包含多少個特殊字元(除數字、字母之外);

其中 =-1表示,至少有一個

5、/etc/login.defs詳解:

PASS_MAX_DAYS 99999 #密碼的最大有效期, 99999:永久有期

PASS_MIN_DAYS 0 #是否可修改密碼,0可修改,非0多少天後可修改

PASS_MIN_LEN 5 #密碼最小長度,使用pam_cracklib module,該參數不再有效

PASS_WARN_AGE 7 #密碼失效前多少天在使用者登入時通知使用者修改密碼

6、實際生産環境配置

/etc/security/pwquality.conf :

minlen = 8

minclass = 1

maxrepeat = 0

maxclassrepeat = 4

lcredit = -1

ucredit = -1

dcredit = -1

ocredit = -1

difok=5

/etc/login.defs:

PASS_MAX_DAYS 90

PASS_MIN_LEN 12

PASS_MIN_DAYS 7

PASS_WARN_AGE 30

UMASK 077

繼續閱讀