帮助中心 >  技术知识库 >  云服务器 >  服务器教程 >  linux尝试登录失败后锁定用户账户的两种方法

linux尝试登录失败后锁定用户账户的两种方法

2019-01-10 09:15:16 8703

方法一: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.

auth required pam_tally2.so deny=3 even_deny_root unlock_time=600

pam_tally2命令


查看用户登录失败的信息

pam_tally2 -u test
Login  Failures Latest failure From
test  1 06/20/17 14:18:19 192.168.56.1

解锁用户

pam_tally2 -u test -r

方法二: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 选项


faillock命令


查看每个用户的尝试失败次数

$ faillock
test:
When    Type Source           Valid
2017-06-20 14:29:05 RHOST 192.168.56.1           V
2017-06-20 14:29:14 RHOST 192.168.56.1           V
2017-06-20 14:29:17 RHOST 192.168.56.1           V

解锁一个用户的账户

faillock --user <username> --reset

提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: