DenyHosts的安装与配置

使用DenyHosts避免暴力破解SSH

DenyHosts是一个python写的脚本,常用来限制SSH登陆,通过监控系统日志,将超过错误次数的IP放入TCP Wrappers中禁止登陆。UNIX Review杂志评选的2005年8月的月度工具。除了基础的屏蔽IP功能,还有邮件通知,插件,同步等功能。

官方站点:http://denyhosts.sourceforge.net/

GitHub代码:https://github.com/denyhosts/denyhosts

安装

使用yum或apt-get安装的是比较老的版本,这里是源码安装

目前稳定版是2.10,3.0版是beta版,该版本支持Python2和Python3

wget https://github.com/denyhosts/denyhosts/archive/v2.10.tar.gz
tar xf v2.10.tar.gz
cd denyhosts-2.10
python setup.py install

配置

安装后就是配置,默认情况下,配置文件是 /etc/denyhosts.conf,遵循开源软件的传统,注释的很详细

首先需要配置监控的登录日志文件,这个Debian系和Redhat系不同,默认是Debian的

# 打开Redhat登录日志文件路径
SECURE_LOG = /var/log/secure
# 关闭Debian日志文件路径
#SECURE_LOG = /var/log/auth.log

默认情况下root用户只要密码输错一次,IP地址就会被禁止,过于严格

# 默认为1,改为10
DENY_THRESHOLD_ROOT = 10

默认情况下,永远不会清理长期被禁止的IP,即:PURGE_DENY =,建议保持默认

默认情况下,会调用iptables禁止IP建立连接,可以关闭该功能

#IPTABLES = /sbin/iptables

默认情况下会发送email到root@localhost,可以关闭该功能

ADMIN_EMAIL =

新版本已经有了systemd服务脚本,可以直接复制使用

cp denyhosts.service /etc/systemd/system/
systemctl daemon-reload
systemctl enable denyhosts
systemctl start denyhosts

对于误封的IP,可以删除/etc/hosts.deny中相关IP,并到/var/lib/denyhosts/allowed-hosts中添加IP白名单

3.x版本可以使用denyhosts.py --purgeip xxx清理误封的IP地址

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值