使用Denyhost来阻止恶意连接SSH的IP

本文介绍如何在Linux系统中安装与配置DenyHosts,通过分析SSH日志文件来自动屏蔽恶意登录尝试的IP地址,提升系统安全性。
DenyHosts 是用 Python2.3 写的一个程序,它会分析 /var/log/secure redhat Fedora Core,Centos )等日志文件,当发现同一 IP 在进行多次 SSH

码尝试时就会记录 IP /etc/hosts.deny 文件,从而达到自动屏蔽该 IP 的目的。

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

 
: 检查安装要求

首选检查 Sshd 是否支持 Tcpwrap ,只有支持 Tcpwrap 才可以安装 Denyhost

   50   ldd /usr/sbin/sshd |grep wrap
再检查Python 的版本, Python2.3 以上版本可以直接安装
   51   python –V

 

: 安装Denyhost

先从Sourceforge.net 上下载
进行解压,再进入到源目录

   49   tar -xzvf DenyHosts-2.6.tar.gz
   52   cd DenyHosts-2.6
执行Python 脚本进行安装,
   53   python setup.py install
    程序脚本自动安装到 /usr/share/denyhosts
   
库文件自动安装到 /usr/lib/python2.3/site-packages/DenyHosts
   denyhosts.py
自动安装到 /usr/bin

 
设置启动脚

   54   cd /usr/share/denyhosts/
拷贝模板文件
   55   cp daemon-control-dist daemon-control
设置好启动脚本的所属用户和权限
   56   chown root daemon-control
   57   chmod 700 daemon-control
生成Denyhost 的主配置文件,(将模板文件中开头是# 的过滤后再导入到Denyhost.cfg
   58   grep -v "^#" denyhosts.cfg-dist > denyhosts.cfg
编辑Denyhost.cfg 文件
   59   vi denyhosts.cfg
根据自己需要进行相应的修改
----------------denyhosts.cfg------------------------
SECURE_LOG = /var/log/secure 

#RedHat/Fedora Core
分析该日志文件
#
其它版本 linux 根据 denyhosts.cfg-dist 内提示选择。

PURGE_DENY = 30m

#
过多久后清除

DENY_THRESHOLD_INVALID = 1

#
允许无效用户( /etc/passwd 未列出)登录失败的次数

DENY_THRESHOLD_VALID = 5

#
允许有效(普通)用户登录失败的次数

DENY_THRESHOLD_ROOT = 3

#
允许 root 登录失败的次数

HOSTNAME_LOOKUP=NO

#
是否做域名反解
----------------denyhosts.cfg------------------------

Denyhost 启动脚本添加到自动启动中
   60   echo '/usr/share/denyhosts/daemon-control start'>>/etc/rc.d/rc.local
启动Denyhost 的进程
   61   /usr/share/denyhosts/daemon-control start
可以查看到Denyhost 在运行中
   62   ps -ef |grep deny
在另外一台机器上使用Ssh 进行连接,当在连续几次输入错误的密码后,会被自动阻止掉,在一定时内不可以再连接
Ssh 连接记录的日志文件

   66   tail /var/log/secure –f
Denyhost 日志文件

   67   tail /var/log/denyhosts –f
Denyhost 将恶意连接的 IP 记录到 Hosts.deny 文件中,过一定时间后再从该文件中清除( Denyhost.cfg 中设定的时间)

   68   vi /etc/hosts.deny




     本文转自fine102 51CTO博客,原文链接:http://blog.51cto.com/gzmaster/79370,如需转载请自行联系原作者

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值