CentOS 安装并配置 fail2Ban 保平安 有更新!

  |   0 评论   |   264 浏览

今天我在登陆到我博客主机上时,看见一一条十分诡异的信息。

1545470515655png

没错,我主机被爆破了。这才是刚租的主机,就被人盯上了?

不行,我要做点什么。刚好想起前几天看到的Fail2Ban(就是今天的主角)

一、下载&安装

yum install epel-release -y
yum install fail2ban fail2ban-systemd -y

二、配置

fail2ban 结构

/etc/fail2ban ## fail2ban 服务配置目录
/etc/fail2ban/action.d ## iptables 、mail 等动作文件目录
/etc/fail2ban/filter.d ## 条件匹配文件目录,过滤日志关键内容
/etc/fail2ban/jail.conf ## fail2ban 防护配置文件
/etc/fail2ban/fail2ban.conf ## fail2ban 配置文件,定义日志级别、日志、sock 文件位置等

官方的文档写到:在配置时,我们应该避免修改由fail2ban安装创建的文件(不管官方说不说,我们在修改配置文件的时候,总要把源文件备份一下),我们应该去编写具有.local扩展名的新文件。在.local新文件里配置的内容会覆盖jail.conf内容里相同的值。当我们的配置发生改变了我们可以使用 fail2ban-client reload ,来加载新的配置。

在/etc/fail2ban/jail.d 目录下新建jail.local文件并配置。

#defalut这里是设定全局设置,如果下面的监控没有设置就以全局设置的值设置。
[DEFAULT]
# 用于指定哪些地址ip可以忽略 fail2ban 防御,以空格间隔。
ignoreip = 127.0.0.1/8
# 客户端主机被禁止的时长(默认单位为秒,86400为一天)
bantime  = 86400
# 过滤的时长(秒)
findtime  = 600
# 匹配到的阈值(次数)
maxretry = 3

[ssh-iptables]
# 是否开启
enabled  = true
# 过滤规则
filter   = sshd
# 动作
action   = iptables[name=SSH, port=ssh, protocol=tcp]
# 日志文件的路径
logpath  = /var/log/secure
# 匹配到的阈值(次数)
maxretry = 3

配置好后启动fail2ban

systemctl start fail2ban

如果配置没有生效使用下面的指令

fail2ban-client reload

然后自行测试(测试时建议在虚拟机上测试,以免发生意外)

如果3次之后无法连接到机器,表示您已经配置成功了。

自己输错了3次被锁了怎么办?或者要删除某个被封禁的ip怎么办?输入下面的指令吧

fail2ban-client set sshd unbanip 要解封的ip

最后正确登陆到机器上,并输入下面的指令查看战况。

fail2ban-client status ssh-iptables

下图是我的战况。

1545472913509png

对此我想对这位说:拜拜了,您。

评论