fail2ban 是 Linux 上的一个著名的入侵保护的开源框架,它会监控多个系统的日志文件(例如:/var/log/auth.log 或者 /var/log/secure)并根据检测到的任何可疑的行为自动触发不同的防御动作。在基本的安全方面,fail2ban 在防御对SSH服务器的暴力密码破解上非常有用。
接下来就说一下基本的配置:
1.下载源
下载合适的安装包
2.yum 安装
yum install -y fail2ban
3.启动
service fail2ban start
4.fail2ban 的设定档在这里
服务配置目录 :/etc/fail2ban/
/etc/fail2ban/action.d #动作文件夹,内含默认文件。iptables以及mail等动作配置
/etc/fail2ban/fail2ban.conf #定义了fai2ban日志级别、日志位置及sock文件位置
/etc/fail2ban/filter.d #条件文件夹,内含默认文件。过滤日志关键内容设置
/etc/fail2ban/jail.conf #主要配置文件,模块化。主要设置启用ban动作的服务及动作阀值
/etc/rc.d/init.d/fail2ban #启动脚本文件
5.配置
vim /etc/fail2ban/jail.conf
[DEFAULT]
# "ignoreip" 可以是个 IP 地址, 无类别域间路由(Classless Inter-Domain Routing、CIDR)或者 DNS 地址。
# Fail2ban 不会禁用匹配到的 IP。
# 多个地址可以用空格来分割。
ignoreip = 127.0.0.1
# "bantime" 就是拉黑时间,按秒算。
bantime = 3600
# "findtime" 就是一个 IP 在此间隔内会被算入重试次数。如 600 时则是 10 分钟内再登陆将把重试次数 +1,超过 10 分钟后则从头开始算。
# 按秒算。
findtime = 600
# "maxretry" 就是最大重试次数。如 3 则失败 3 次就禁止登陆。
maxretry = 3
#日志检测机器,有"gamin", "polling" and "auto"三种模式。
backend = auto
enabled = true
[ssh-iptables] #启用
filter = sshd
# 这里的 port=ssh 是默认的 SSH 端口,如果你修改了的话这里也要改,比如 port=213
action = iptables[name=SSH, port=ssh, protocol=tcp]
sendmail-whois[name=SSH, dest=root, sender=fail2ban@example.com]
logpath = /var/log/secure
maxretry = 5
6.查看iptbales
[root@ fail2ban]# iptables -L
Chain INPUT (policy ACCEPT)
target prot opt source destination
f2b-SSH tcp -- anywhere anywhere tcp dpt:ssh
7.查看日志
tail/var/log/fail2ban.log
本文出自 “我心永恒” 博客,请务必保留此出处http://catchen.blog.51cto.com/8816319/1793664
原文地址:http://catchen.blog.51cto.com/8816319/1793664