一、pam_tally2模塊
用於對系統進行失敗的ssh登錄嘗試后鎖定用戶帳戶。此模塊保留已嘗試訪問的計數和過多的失敗嘗試。
配置
使用/etc/pam.d/system-auth
或etc/pam.d/password-auth
配置文件來配置的登錄嘗試的訪問
auth required pam_tally2.so deny=3 unlock_time=600 account required pam_tally2.so
注意:
auth要放到第二行,不然會導致用戶超過3次后也可登錄。
如果對root也適用在auth后添加even_deny_root
.
查看用戶登錄失敗的信息
[root@mysql-master pam.d]# pam_tally2 -u lt Login Failures Latest failure From lt 5 10/23/18 15:45:58 192.168.160.1
解鎖用戶
[root@mysql-master pam.d]# pam_tally2 -u lt Login Failures Latest failure From lt 5 10/23/18 15:45:58 192.168.160.1
二、pam_faillock 模塊
在紅帽企業版 Linux 6 中, pam_faillock PAM
模塊允許系統管理員鎖定在指定次數內登錄嘗試失敗的用戶賬戶。限制用戶登錄嘗試的次數主要是作為一個安全措施,旨在防止可能針對獲取用戶的賬戶密碼的暴力破解
通過 pam_faillock
模塊,將登錄嘗試失敗的數據儲存在 /var/run/faillock 目錄下每位用戶的獨立文件中
配置
添加以下命令行到 /etc/pam.d/system-auth
文件和/etc/pam.d/password-auth
文件中的對應區段:
auth required pam_faillock.so preauth silent audit deny=3 unlock_time=600 auth sufficient pam_unix.so nullok try_first_pass auth [default=die] pam_faillock.so authfail audit deny=3 account required pam_faillock.so
注意:
auth required pam_faillock.so preauth silent audit deny=3
必須在最前面。
適用於root在pam_faillock
條目里添加 even_deny_root
選項
查看每個用戶的嘗試失敗次數
[root@mysql-master pam.d]# faillock
解鎖一個用戶的賬戶
[root@mysql-master pam.d]# faillock --user lt --reset