当前位置: 首页 > 图文教程 > 操作系统 > Unix/Linux > 防止SSH暴力破解密码的方法(DenyHosts)

Unix/Linux
linux查看内存的大小
在linux下写的代码,用的是utf-8,结果拿到XP下运行的时候,所有的中文都成乱码
linux su和sudo命令的区别
linux cron 下的定时执行工具使用技巧
linux 查找进程及终止进程操作的相关命令
redhat linux 安装 gcc编译器
Linux Mplayer播放各种格式的电影
一起回顾一下linux常用命令
Linux 网站项目发布要做哪些配置
linux SSH配合SecureCRT的密匙完美使用方法
GD 编译出错解决方法
Facebook Open Platform编译FAQ
Linux 系统硬盘 优化
linux 挂载详解
linux crontab定时命令
Linux 系统中确保访问三级域名畅通的方法
Linux 特权帐号VS普通帐号
确保Linux系统安全的前提条件 漏洞防护
Linux 监视系统资源使用率
Red Hat Linux上使用BIND建立DNS服务器

Unix/Linux 中的 防止SSH暴力破解密码的方法(DenyHosts)


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2010-01-15   浏览: 67 ::
收藏到网摘: n/a

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

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

  以下是安装记录(以CentOS 5.1, DenyHosts 2.6 为例)

 

  安装

  #wget
  http://nchc.dl.sourceforge.net/....../DenyHosts-2.6-python2.4.noarch.rpm
  #rpm -ivh DenyHosts-2.6-python2.4.noarch.rpm

  给denyhosts做成系统本身的服务

  # cd /etc/init.d

  # ln -s /usr/share/denyhosts/daemon-control denyhosts

  # chkconfig --add denyhosts

  配置

  默认是安装到/usr/share/denyhosts目录的。

  # cd /usr/share/denyhosts/
  # cp denyhosts.cfg-dist denyhosts.cfg
  # vi denyhosts.cfg
  根据自己需要进行相应的配置(解释见下文件的配置文件)

  DenyHosts配置文件:

  SECURE_LOG = /var/log/secure
  #ssh 日志文件,它是根据这个文件来判断的。

  HOSTS_DENY = /etc/hosts.deny
  #控制用户登陆的文件

  PURGE_DENY = 5m
  #过多久后清除已经禁止的

  BLOCK_SERVICE = sshd
  #禁止的服务

  DENY_THRESHOLD_INVALID = 1

  #允许无效用户失败的次数

  DENY_THRESHOLD_VALID = 3
  #允许普通用户登陆失败的次数

  DENY_THRESHOLD_ROOT = 5
  #允许root登陆失败的次数

  HOSTNAME_LOOKUP=NO
  #是否做域名反解

  ADMIN_EMAIL = [email protected]
  #管理员邮件地址,它会给管理员发邮件

  DAEMON_LOG = /var/log/denyhosts
  #自己的日志文件

  启动服务

  让他和系统启动时一起启动

  #/etc/ini.d/denyhosts start
  #chkconfig denyhosts on

  可以用一台电脑远程连接过来测试.如果可以看到/etc/hosts.deny内是否有禁止的IP,有的话说明已经安装成功了。

  注.我发现时间deny以后,删除ip的时间不是很准.解决方法是改变DAEMON_PURGE = 这个的时间.我发现系统删除时间是以他为准.

  DAEMON_PURGE:预设清除:当DenyHosts在预设模式下执行,执行清除机械作用过期最久的HOSTS_DENY,这个会影响PURGE_DENY的间隔。