1.備份要操作的兩個配置文件
cp /etc/pam.d/sshd /etc/pam.d/sshd.bak
cp /etc/pam.d/login /etc/pam.d/login.bak
2.檢查是否有pam_tally2.so模塊
# find /lib* -iname "pam_tally2.so"
/lib64/security/pam_tally2.so
# find /lib* -iname "pam_tally.so"
# cat /etc/pam.d/sshd
3.登錄失敗處理功能策略(服務器終端)
編輯系統/etc/pam.d/system-auth 文件,在 auth 字段所在的那一部分策 略下面添加如下策略參數:
auth required pam_tally2.so onerr=fail deny=3 unlock_time=40 even_deny_root root_unlock_time=30
注意添加的位置,要寫在第一行,即#%PAM-1.0的下面。
以上策略表示:普通帳戶和 root 的帳戶登錄連續 3 次失敗,就統一鎖定 40 秒, 40 秒后可以解鎖。如果不想限制 root 帳戶,可以把 even_deny_root root_unlock_time
這兩個參數去掉, root_unlock_time 表示 root 帳戶的 鎖定時間,onerr=fail 表示連續失敗,deny=3,表示 超過3 次登錄失敗即鎖定。
用戶鎖定期間,無論在輸入正確還是錯誤的密碼,都將視為錯誤密碼,并以最后一次登錄為鎖定起始時間,若果用戶解鎖后輸入密碼的第一次依然為錯誤密碼,則再次重新鎖定。