当前时区为 UTC + 8 小时



发表新帖 回复这个主题  [ 4 篇帖子 ] 
作者 内容
1 楼 
 文章标题 : [转帖]使用pam_abl防止ssh 暴力攻击
帖子发表于 : 2008-06-20 1:15 
头像

注册: 2007-02-14 13:54
帖子: 308
送出感谢: 0 次
接收感谢: 0 次
pam_abl 官方网站:http://pam-abl.sourceforge.net/
原文:http://www.linuxsky.org/doc/admin/200804/297.html
ssh 暴力攻击 使用pam_abl防止SSH遭暴力破解攻击
翻译、参考自StoneLion的http://security.linux.com/article.pl?sid=07/03/20/2043209
PAM(Pluggable Authenticatiion Modules)开发的pam_abl模块能实现自动对试图登录ssh的每个认证进行统计,对大量错误的试图尝试通过认证的登录进行必要的封杀,这样对于使用SSH服务的Unix和Linux服务器管理人员来说,方便了很多,在我们面临大量的针对SSH的暴力攻击头疼的时候,完全可以采用此模块实现防御。
安装
1、http://sourceforge.net/project/showfiles.php?group_id=148927
2、编译安装
#tar zxvf pam_abl-0.2.3.tar.gz
#cd pam_abl
#make && make install
#cp conf/pam_abl.conf /etc/security/
配置
编辑/etc/pam.d/system-auth文件,加入pam_abl.so模块,下面是一个例子:
#%PAM-1.0
# This file is auto-generated.
# User changes will be destroyed the next time authconfig is run.
auth required /lib/security/pam_env.so
auth required /lib/security/pam_abl.so config=/etc/security/pam_abl.conf
auth sufficient /lib/security/pam_unix.so likeauth nullok
auth required /lib/security/pam_deny.so
account sufficient /lib/security/pam_succeed_if.so uid < 100
account required /lib/security/pam_unix.so
password requisite /lib/security/pam_cracklib.so retry=3
password sufficient /lib/security/pam_unix.so nullok use_authtok md5 shadow
password required /lib/security/pam_deny.so
session required /lib/security/pam_limits.so
session required /lib/security/pam_unix.so
接下来就是配置pam_abl了,我们编辑配置文件/etc/security/pam_abl.conf,内容如下:
# /etc/security/pam_abl.conf
# debug
host_db=/var/lib/abl/hosts.db
host_purge=2d
host_rule=*:3/1h,30/1d
user_db=/var/lib/abl/users.db
user_purge=2d
user_rule=!root:3/1h,30/1d
简单解释一下上面这个配置文件:
第2行
host_db=/var/lib/abl/hosts.db
和第5行
user_db=/var/lib/abl/users.db
分别定义了被禁止的主机名和用户列表保存到哪里。第3行
host_purge=2d
和第6行
user_purge=2d
分别定义了禁止的主机和用户的释放时间,也就是多长时间后解禁。这里定义的是2天后,主机和用户都会解禁。第4行
host_rule=*:3/1h,30/1d
和第7行
user_rule=!root:3/1h,30/1d
分别定义了主机和用户规则,我们看看他的语法规则。
他的规则如下:
host或user_rule=:<尝试次数>/<禁止时间>,<尝试次数>/<禁止时间>
因此上面的配置文件第4行host_rule=*:3/1h,30/1d主机规则的意思是禁止所有的主机(*表示),在一个小时内当错误的连接次数达到或者超过3次时禁止,在1天内当超过30次时禁止。
第7行用户规则user_rule=!root:3/1h,30/1d意思是所有的用户,除了root(用!root表示)在最近的一个小时内连接错误达到三次就禁止,或者最近的一天超过30次就禁止。
当然,你也可以定义你选择的那些用户,比如:
anze|dasa|kimzet|madison:20/1h
这意味着上面的四个用户anze,dasa,kimzet,madison将被禁止,如果在最近的一个小时内连接错误次数达到20次。
注:这里说的连接次数,是指你建立连接,然后输入密码,当缺省输入三次密码都不正确时,就退出了,这就算一次。
更详细的说明,http://www.hexten.net/assets/pam_abl_doc/index.html
测试
现在我们可以测试我们的配置了,打开终端,远程连接一下,尝试连接次数超过三次,你应该可以下面下面类似的结果:
pam_abl[6248]: Blocking access from sataras.example.com to service ssh, user madison
你可以用命令pam_abl查看被禁止的用户和主机:
#pam_abl
Failed users:
madison (3)
Blocking users [!root]
Failed hosts:
sataras.example.com (3)
Blocking users [*]
这就表示用户madison和主机sataras.example.com被禁止了,你可以尝试再次连接机器,并输入正确的密码,也打印"权限禁止"的提示。


页首
 用户资料  
 
2 楼 
 文章标题 :
帖子发表于 : 2008-06-20 11:26 
头像

注册: 2006-04-12 20:05
帖子: 8495
地址: 杭州
送出感谢: 0 次
接收感谢: 8
有个 denyhost不错的. :shock:


_________________
关注我的blog: ε==3


页首
 用户资料  
 
3 楼 
 文章标题 :
帖子发表于 : 2008-06-20 13:29 
头像

注册: 2008-05-06 17:17
帖子: 65
地址: 安徽宿州
送出感谢: 0 次
接收感谢: 0 次
学习了.收藏!


_________________
学习永无止尽! ~linux小菜鸟!


页首
 用户资料  
 
4 楼 
 文章标题 :
帖子发表于 : 2008-06-20 13:36 
头像

注册: 2006-02-28 3:11
帖子: 2470
送出感谢: 0 次
接收感谢: 0 次
ssh我经常用, 可是怎么攻击呢??


页首
 用户资料  
 
显示帖子 :  排序  
发表新帖 回复这个主题  [ 4 篇帖子 ] 

当前时区为 UTC + 8 小时


在线用户

正在浏览此版面的用户:没有注册用户 和 3 位游客


不能 在这个版面发表主题
不能 在这个版面回复主题
不能 在这个版面编辑帖子
不能 在这个版面删除帖子
不能 在这个版面提交附件

前往 :  
本站点为公益性站点,用于推广开源自由软件,由 DiaHosting VPSBudgetVM VPS 提供服务。
我们认为:软件应可免费取得,软件工具在各种语言环境下皆可使用,且不会有任何功能上的差异;
人们应有定制和修改软件的自由,且方式不受限制,只要他们自认为合适。

Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group
简体中文语系由 王笑宇 翻译