使用DenyHosts阻止SSH暴力破解

林继 VPS 知识 2,063 共写了491个字 (2012-04-07 21:21:47) 没有评论 打印 扫描二维码 百度已收录

DenyHosts是Python语言写的一个程序,它会分析SSHD的日志文件,当发现重复的攻击时就会记录IP到/etc/hosts.deny文件,从而达到自动屏蔽IP的功能。

DenyHosts官方网站为:http://denyhosts.sourceforge.net

先下载安装包,我的系统是centos5.5,直接下载:

  1. wget http://ftp.belnet.be/packages/dries.ulyssis.org/redhat/el5/en/i386/dries/RPMS/denyhosts-2.6-3.el5.rf.noarch.rpm

然后开始安装denyhosts

  1. rpm -ivh denyhosts-2.6-3.el5.rf.noarch.rpm

再把denyhosts安装为服务

  1. cp /usr/share/doc/denyhosts-2.2/daemon-control-dist /etc/init.d/denyhosts
  2.  
  3. chkconfig --add denyhosts

然后,修改/etc/init.d/denyhosts文件。

将DENYHOSTS_CFG参数的值改成 “/etc/denyhosts/denyhosts.cfg”。

再修改一下配置文件”/etc/denyhosts/denyhosts.cfg”。

  1. SECURE_LOG = /var/log/secure
  2. #ssh 日志文件,它是根据这个文件来判断的。
  3.  
  4. HOSTS_DENY = /etc/hosts.deny
  5. #控制用户登陆的文件
  6.  
  7. PURGE_DENY = 5d
  8. #过多久后清除已经禁止的
  9.  
  10. BLOCK_SERVICE  = sshd
  11. #禁止的服务名
  12.  
  13. DENY_THRESHOLD_INVALID = 1
  14. #允许无效用户失败的次数
  15.  
  16. DENY_THRESHOLD_VALID = 10
  17. #允许普通用户登陆失败的次数
  18.  
  19. DENY_THRESHOLD_ROOT = 5
  20. #允许root登陆失败的次数
  21.  
  22. HOSTNAME_LOOKUP=NO
  23. #是否做域名反解
  24.  
  25. DAEMON_LOG = /var/log/denyhosts
  26. #自己的日志文件

现在可以看看/etc/hosts.deny内是否有禁止的IP了,如果有的话,说明denyhosts已经开始正常工作了。

如果觉得我的文章对您有用,请随意赞赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注

< >