Linux密碼策略-密碼長度-密碼複雜度

1.設置密碼長度

vim /etc/pam.d/system-auth
password requisite pam_cracklib.so try_first_pass retry=3 minlen=10 difok=3 ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1 type=node

找到同時有 「password」 和 「pam_cracklib.so」 字段而且附加有 「minlen=10」 的那行,它表示最小密碼長度爲(10 - 類型數量)。vim

這裏的 「類型數量」 表示不一樣的字符類型數量。PAM 提供4種類型符號做爲密碼(大寫字母、小寫字母、數字和標點符號)。ssh

若是你的密碼同時用上了這4種類型的符號,而且你的 minlen 設爲10,那麼最短的密碼長度容許是6個字符ui

找到同時有 「password」 和 「pam_cracklib.so」 字段而且附加有 「ucredit=-1 lcredit=-2 dcredit=-1 ocredit=-1」 的那行,spa

它表示密碼必須至少包含一個大寫字母(ucredit),兩個小寫字母(lcredit),一個數字(dcredit)和一個標點符號(ocredit)3d

 2.設置認證失敗鎖定帳戶策略

vim /etc/pam.d/sshd  只在遠程telnet、ssh登錄上作限制,能夠編輯以下文件,添加的內容和上方也同樣。
vim /etc/pam.d/login  只在本地文本終端上作限制,能夠編輯以下文件,添加的內容和上方同樣。code

auth required pam_tally2.so deny=3 unlock_time=300 even_deny_root root_unlock_time=10blog

even_deny_root   也限制root用戶;
deny         設置普通用戶和root用戶連續錯誤登錄的最大次數,超過最大次數,則鎖定該用戶
unlock_time     設定普通用戶鎖定後,多少時間後解鎖,單位是秒;
root_unlock_time   設定root用戶鎖定後,多少時間後解鎖,單位是秒; crontab


此處使用的是 pam_tally2 模塊,若是不支持 pam_tally2 可使用 pam_tally 模塊。另外,不一樣的pam版本,it

設置可能有所不一樣,具體使用方法,能夠參照相關模塊的使用規則。

由於pam_tally沒有自動解鎖的功能,因此,在設置限制時,要多加註意,萬一全作了限制,

而root用戶又被鎖定了,就只可以進單用戶模式解鎖了,固然,也能夠添加crontab任務,達到定時自動解鎖的功能,

但須要注意的是,若是在/etc/pam.d/system-auth 文件中添加了pam_tally的話,當root被鎖定後,crontab任務會失效,

因此,最好不要在system-auth 文件中添加pam_tally。
root用戶執行 crontab -e 命令,添加以下內容
2 */1 * * * * /usr/bin/faillog -r
意思是,每1分鐘,將全部用戶登錄失敗的次數清空,並將全部用戶解鎖。

2.1查看用戶登陸失敗的次數

[root@node100 pam.d]# pam_tally2 --user redhat 
Login           Failures Latest failure     From 
redhat              7    07/16/12 15:18:22  tty1

2.2解鎖指定用戶

[root@node100 pam.d]# pam_tally2 -r -u redhat 
Login           Failures Latest failure     From 
redhat              7    07/16/12 15:18:22  tty1 
相關文章
相關標籤/搜索