使用DenyHosts阻止ssh暴力攻击
现在的互联网非常不安全,很多人没事就拿一些扫描机扫描ssh端口,然后试图连接ssh端口进行暴力破解(穷举扫描),所以建议大家VPS尽量设置复杂的ssh登录密码。那么有什么办法阻止这些暴力破解者呢,我们可以使用DenyHosts这款软件。
DenyHosts介绍
DenyHosts是Python语言写的一个程序,它会分析sshd的日志文件(/var/log/secure),当发现重 复的攻击时就会记录IP到/etc/hosts.deny文件,从而达到自动屏IP的功能。
DenyHosts安装和配置
1、下载和安装EPEL RPM
cd /tmp wget http://download.fedora.redhat.com/pub/epel/5/i386/epel-release-5-3.noarch.rpm rpm -Uhv epel-release-5-3.noarch.rpm
2、使用yum命令安装denyhosts
yum install -y denyhosts
3、添加系统启动自动运行
chkconfig --add denyhosts chkconfig denyhosts on
如何你想把某个ip或者ip段放入白名单,可以使用下列命令,这样就可以避免把自己的ip阻止了;
echo '173.252.193.*' >> /var/lib/denyhosts/allowed-hosts
这样 173.252.193.* 这个IP就可以不受到此程序的约束,请根据自己的环境进行设置;
4、最后启动服务
service denyhosts start
设置完以上4步,DenyHosts就可以正常工作了。
附上:DenyHosts配置文件denyhosts.cfg说明
SECURE_LOG = /var/log/secure
#sshd日志文件,它是根据这个文件来判断的,不同的操作系统,文件名稍有不同。
HOSTS_DENY = /etc/hosts.deny
#控制用户登陆的文件
PURGE_DENY = 5m
#过多久后清除已经禁止的
BLOCK_SERVICE = sshd
#禁止的服务名
DENY_THRESHOLD_INVALID = 1
#允许无效用户失败的次数
DENY_THRESHOLD_VALID = 10
#允许普通用户登陆失败的次数
DENY_THRESHOLD_ROOT = 5
#允许root登陆失败的次数
HOSTNAME_LOOKUP=NO
#是否做域名反解
DAEMON_LOG = /var/log/denyhosts
#DenyHosts的日志文件
[复制本文链接发送给您的好友]
共有5条评论 [点此发言]