centos6.8部署denyhosts设置sshd黑名单
Posted 南非波波
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centos6.8部署denyhosts设置sshd黑名单相关的知识,希望对你有一定的参考价值。
DenyHosts是Python语言写的一个程序,它会分析sshd的日志文件(/var/log/secure),当发现重 复的攻击时就会记录IP到/etc/hosts.deny文件,从而达到自动屏IP的功能。
参考文档:
http://www.cnblogs.com/suihui/p/3899381.html
鉴于阿里云已经是部署了epel镜像源,所以直接使用yum安装即可:
yum install denyhosts -y
配置文件/etc/denyhosts.cfg:
#日志文件存放位置(直接用默认即可) SECURE_LOG = /var/log/secure #系统控制用户登录文件 HOSTS_DENY = /etc/hosts.deny #过多久后清除已经禁止的 PURGE_DENY = #禁止服务名称 BLOCK_SERVICE = sshd #无效用户登录失败次数(/etc/passwd文件中没有的用户) DENY_THRESHOLD_INVALID = 1 #普通用户登录失败次数(/etc/passwd文件中有的用户 DENY_THRESHOLD_VALID = 10 #root登录失败次数 DENY_THRESHOLD_ROOT = 3 DENY_THRESHOLD_RESTRICTED = 1 #存放denyhosts信息的位置,可以从这里看到被攻击的情况 WORK_DIR = /usr/share/denyhosts/data SUSPICIOUS_LOGIN_REPORT_ALLOWED_HOSTS=YES #禁止做逆向域名解析 HOSTNAME_LOOKUP=NO LOCK_FILE = /var/lock/subsys/denyhosts #denyhosts自己的日志文件 DAEMON_LOG = /var/log/denyhosts #设置邮件报警 ADMIN_EMAIL = #mail1.apicloud.com,mail2.apicloud.com SMTP_HOST = mail.163.com SMTP_PORT = 25 SMTP_USERNAME=gitlab2015@163.com SMTP_PASSWORD=nxgfvizafijytymx SMTP_FROM = DenyHosts <gitlab2015@163.com> SMTP_SUBJECT = DenyHosts Report #重置设置 AGE_RESET_VALID=5d AGE_RESET_ROOT=25d AGE_RESET_RESTRICTED=25d AGE_RESET_INVALID=10d DAEMON_SLEEP = 30s DAEMON_PURGE = 1h
设置白名单:
echo "10.*.*.*" >> /var/lib/denyhosts/allowed-hosts #相当于将10.0.0.0/8整个内网网段加到白名单
删除黑名单中的IP:
如果想删除一个已经禁止的主机IP,并加入到允许主机例表,只在 /etc/hosts.deny 删除是没用的。需要进入 /var/lib/denyhosts 目录,进入以下操作: 1、停止DenyHosts服务:$service denyhosts stop 2、在 /etc/hosts.deny 中删除你想取消的主机IP 3、编辑 DenyHosts 工作目录的所有文件,通过 $grep 192.168.1.191 /var/lib/denyhosts/* 然后一个个删除文件中你想取消的主机IP所在的行: */var/lib/denyhosts/hosts */var/lib/denyhosts/hosts-restricted */var/lib/denyhosts/hosts-root */var/lib/denyhosts/hosts-valid */var/lib/denyhosts/users-hosts 4、添加你想允许的主机IP地址到 /var/lib/denyhosts/allowed-hosts vi /var/lib/denyhosts/allowed-hostsps # We mustn\'t block localhost 127.0.0.1 192.168.1.* 5、启动DenyHosts服务: service denyhosts start
以上是关于centos6.8部署denyhosts设置sshd黑名单的主要内容,如果未能解决你的问题,请参考以下文章