Ubuntu 20.04 及之后的版本默认情况下并不包含登录失败三次后自动锁定账户的功能。 如果你想手动设置在Ubuntu 22.04上实现类似的机制,可以使用​​faillock​​​或​​pam_tally2​​​(ubuntu 22.04及以后的系统中被​​faillock​​取代)来配置PAM(Pluggable Authentication Modules)以限制用户在多次失败登录尝试后的访问。

要配置这个功能,请按照以下步骤操作: 注意:修改配置文件一定要按照本文中的顺序添加配置,否则配置可能不生效

配置PAM启用faillock

common-auth

查看common-auth配置

egrep -v "^$|^#" /etc/pam.d/common-auth

image.png

图中标红的就是要添加的配置,一定要添加到第一行之下。 编辑common-auth配置文件

vi /etc/pam.d/common-auth

在第一样配置下,添加如下配置

auth     [default=die]      pam_faillock.so authfail
auth     sufficient         pam_faillock.so authsucc

common-account

查看common-account配置

egrep -v "^$|^#" /etc/pam.d/common-account

image.png

图中标红的就是要添加的配置,一定要添加到最后一行。 编辑common-account配置文件

vi /etc/pam.d/common-account

找到最后一行,添加如下配置

account required            pam_faillock.so

配置faillock.conf

vi /etc/security/faillock.conf

添加如下配置

dir = /var/run/faillock
audit
# 输入错误密码几次进行锁定
deny = 3
# 统计时间
fail_interval = 900
# 普通用户锁定600秒
unlock_time = 600
# 启用对root用户的失败锁定
even_deny_root
# 对root用户的失败锁定1800秒
root_unlock_time = 1800

查看锁定情况

faillock

image.png

解锁用户

faillock --user testuser --reset