# 默认分类

DenyHosts安装及配置

2020-03-24 11:58:00
21
# [DenyHosts安装及配置](https://www.cnblogs.com/lcword/p/5912625.html)

一、DenyHost简介

DenyHosts是Python语言写的一个程序软件,运行于Linux上预防SSH暴力破解的,它会分析sshd的日志文件(/var/log/secure),当发现重复的攻击时就会记录IP到/etc/hosts.deny文件,从而达到自动屏IP的功能。

项目主页   DenyHosts安装包下载地址

二、安装过程

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设成开机启动

三、配置文件简要说明

vim /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
最后编辑于 2024-10-31 14:05:35