linux(ubuntu)用戶連續N次輸入錯誤密碼進行登陸時,自動鎖定X分鐘

1、編輯PAM的配置文件

sudo vim /etc/pam.d/login

在第二行添加

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

參數介紹

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

在這裏插入圖片描述

此處使用的是 pam_tally2 模塊,如果不支持 pam_tally2 可以使用 pam_tally 模塊。另外,不同的pam版本,設置可能有所不同,具體使用方法,可以參照相關模塊的使用規則。
注意
在第二行,添加內容,一定要寫在前面,如果寫在後面,雖然用戶被鎖定,但是隻要用戶輸入正確的密碼,還是可以登錄的!

2、修改sshd文件

這個只是限制了用戶從tty登錄,而沒有限制遠程登錄,如果想限制遠程登錄,需要改sshd文件

sudo vim /etc/pam.d/sshd

繼續在第二行上添加

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

在這裏插入圖片描述
查看用戶登錄失敗的次數:

sudo pam_tally2 --user

結果

ubuntu@VM-0-5-ubuntu:~$ sudo pam_tally2 --user
Login           Failures Latest failure     From
root                3    09/29/19 15:53:24  45.119.212.105
ubuntu              9    09/29/19 15:46:58  223.107.140.84

解鎖指定用戶:

sudo pam_tally2 -r -u ubuntu
ubuntu@VM-0-5-ubuntu:~$ sudo pam_tally2 -r -u ubuntu
Login           Failures Latest failure     From
ubuntu             15    09/29/19 15:58:49  223.107.140.84

ps:這個遠程ssh的時候,輸入密碼錯誤超過三次但是沒有提示,我用的是Xshell,不知道其它終端有沒有提示,但是只要超過設定的值,輸入正確的密碼也是登陸不了的!,還是要等到設定的時間在重新嘗試輸入正確密碼進行登錄認證
參考鏈接:https://blog.csdn.net/weixin_43822878/article/details/93018223

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章