LinuxEye - Linux系统教程

LinuxEye - Linux系统教程

当前位置: 主页 > 安全 >

DenyHosts安装及配置防止ssh暴力破解

时间:2015-01-21 10:09来源:oschina 编辑:wojibuzhu 点击:
DenyHosts(项目主页:http://denyhosts.sourceforge.net/)是运行于Linux上的一款预防SSH暴力破解的软件,可以从http://sourceforge.net/projects/denyhosts/files/进行下载,然后将下载回来的DenyHosts-2.6.tar.gz源
DenyHosts(项目主页:http://denyhosts.sourceforge.net/)是运行于Linux上的一款预防SSH暴力破解的软件,可以从http://sourceforge.net/projects/denyhosts/files/进行下载,然后将下载回来的DenyHosts-2.6.tar.gz源码包上传到Linux系统中。

下面是安装过程
****************************************************************
tar zxvf DenyHosts-2.6.tar.gz                                           #解压源码包
cd DenyHosts-2.6                                                            #进入安装解压目录
python setup.py install                                                    #安装DenyHosts
cd /usr/share/denyhosts/                                                #默认安装路径
cp denyhosts.cfg-dist denyhosts.cfg                              #denyhosts.cfg为配置文件
cp daemon-control-dist daemon-control                         #daemon-control为启动程序
chown root daemon-control                                            #添加root权限
chmod 700 daemon-control                                            #修改为可执行文件
ln -s /usr/share/denyhosts/daemon-control /etc/init.d     #对daemon-control进行软连接,方便管理

安装到这一步就完成了。
/etc/init.d/daemon-control start          #启动denyhosts
chkconfig daemon-control on             #将denghosts设成开机启动
******************************************************************

vi /usr/share/denyhosts/denyhosts.cfg       #编辑配置文件,另外关于配置文件一些参数,通过grep -v "^#" denyhosts.cfg查看
SECURE_LOG = /var/log/secure                  #ssh 日志文件,redhat系列根据/var/log/secure文件来判断;Mandrake、FreeBSD根据 /var/log/auth.log来判断
                                                                  #SUSE则是用/var/log/messages来判断,这些在配置文件里面都有很详细的解释。
HOSTS_DENY = /etc/hosts.deny                 #控制用户登陆的文件
PURGE_DENY = 30m                                  #过多久后清除已经禁止的,设置为30分钟;
# ‘m’ = minutes
# ‘h’ = hours
# ‘d’ = days
# ‘w’ = weeks
# ‘y’ = years
BLOCK_SERVICE = sshd                           #禁止的服务名,当然DenyHost不仅仅用于SSH服务
DENY_THRESHOLD_INVALID = 1             #允许无效用户失败的次数
DENY_THRESHOLD_VALID = 3                 #允许普通用户登陆失败的次数
DENY_THRESHOLD_ROOT = 3                 #允许root登陆失败的次数
DAEMON_LOG = /var/log/denyhosts      #DenyHosts日志文件存放的路径,默认

更改DenyHosts的默认配置之后,重启DenyHosts服务即可生效:
/etc/init.d/daemon-control restart         #重启denyhosts

cat /var/log/denyhosts 查看日志
出现遇到的问题:

出现:
starting DenyHosts: /usr/bin/env python /usr/bin/denyhosts.py --daemon --config=/usr/share/denyhosts/denyhosts.cfg
DenyHosts could not obtain lock (pid: )
[Errno 17] File exists: '/var/lock/subsys/denyhosts'
使用:
rm -f /var/lock/subsys/denyhosts
/etc/init.d/daemon-control start
starting DenyHosts: /usr/bin/env python /usr/bin/denyhosts.py –daemon –config=/usr/share/denyhosts/denyhosts.cfg
OK!
启动完成啦。
你可以使用
/etc/init.d/daemon-control status  查看状态
DenyHosts is running with pid = 8272 表示服务已经起来了

现在暂时服务器没有暴力破解的提示了,看看拦截记录

转载请保留固定链接: https://linuxeye.com/security/2116.html

------分隔线----------------------------
标签:sshDenyHosts
栏目列表
推荐内容