工作,学习,生活,这里将会有一些记录. 备用域名:http://meisw.wdlinux.cn 注册 | 登陆

Linux ssh多次登录失败锁定用户(转)

1、修改配置文件

# vi /etc/pam.d/system-auth
增加
auth required pam_tally.so deny=3(deny=N为登录失败N次后锁定用户)

2、在客户端测试

# ssh user@192.168.1.1(user为服务器端的用户,192.168.1.1为主机IP地址)

3、3次后再次测试并用正确密码登录会发现仍不能登录

4、解除锁定方法

在服务器端以root用户登录
执行命令:
# faillog –a ////查看用户登录错误次数

如果超过三次的话,用户不能登录并且此后登录用户错误登录次数还是会增加。
在登录错误次数不满三次时,登录成功后,则这个用户登录错误值将清零,退出后重新ssh登录将采用新的计数。

# faillog -u user –r ////清空指定用户user的错误登录次数
# faillog –r ////清空所有用户错误登录次数
 
------------------------------------

测试系统 :Asianux 3.0 sp2 x86
kernel : 2.6.18-128.7
pam版本:pam-0.99.6.2-4.1AXS3
操作方法:

一、在字符终端下,实现某一用户连续错误登陆N次后,就锁定该用户X分钟。
执行 vi /etc/pam.d/login
在#%PAM-1.0 下新起一行,加入

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

如果不限制root用户,则可以写成

auth required pam_tally2.so deny=3 unlock_time=5

 
1 其中大概含义如下:
2 even_deny_root    也限制root用户;
3 deny           设置普通用户和root用户连续错误登陆的最大次数,超过最大次数,则锁定该用户;
4 unlock_time        设定普通用户锁定后,多少时间后解锁,单位是秒;
5 root_unlock_time      设定root用户锁定后,多少时间后解锁,单位是秒;

此处使用的是 pam_tally2 模块,如果不支持 pam_tally2 可以使用 pam_tally 模块。另外,不同的pam版本,设置可能有所不同,具体使用方法,可以参照相关模块的使用规则。

二、在图形登陆界面下,实现某一用户连续错误登陆N次后,就锁定该用户X分钟。
执行 vi /etc/pam.d/kde
在#%PAM-1.0 下新起一行,加入

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

如果不限制root用户,则可以写成

auth required pam_tally2.so deny=3 unlock_time=5

三、也可以直接在 system-auth 文件中直接添加这些命令,修改完成后,凡是调用 system-auth 文件的服务,都会生效。因为有自动解锁时间,所以,不用担心全部限制后,会出现永远无法登陆的“尴尬”情况。

备注:
可以使用 pam_tally2 -r -u username 命令,手动清除某用户记录次数。

关于 pam_tally 的用法,可参考下面链接:
http://www.edward-han.com/166.html

« 上一篇 | 下一篇 »

Trackbacks

点击获得Trackback地址,Encode: UTF-8

发表评论

评论内容 (必填):