在CentOS 8 | RHEL 8上安装和配置Fail2ban

本指南描述了如何在Centos8上安装和配置Fail2ban。 RHEL8。Fail2ban是一种开源入侵检测和防御工具,可扫描访问日志中的恶意IP地址,以指示多次失败的密码登录尝试。然后,该工具通过更新防火墙规则以拒绝IP地址来禁止IP。

Fail2ban可用于保护Linux系统上的各种服务,包括sshd,wordpress访问,postfix等。

在CentOS 8上安装Fail2ban | RHEL 8

要获得Fail2ban软件包,您需要在CentOS / RHEL8系统上安装EPEL存储库。

sudo dnf -y install epel-release

安装Fail2ban软件包。

sudo dnf -y install fail2ban

启动Fail2ban以启用

sudo systemctl start fail2ban
sudo systemctl enable fail2ban

在CentOS 8上配置Fail2ban | RHEL 8

成功安装后,下一步是配置fail2ban。

Fail2ban配置文件 /etc/fail2ban/ 目录。

主要配置文件是 /etc/fail2ban/jail.conf..过滤器保存在 /etc/fail2ban/filter.d/ 目录。

不建议对 jail.conf 该文件作为配置被以下位置的文件中的文件覆盖 *。本地..

因此,最佳实践是创建另一个文件。 本地监狱 这包括配置。

让我们设置一些默认值 /etc/fail2ban/jail.local

sudo vi /etc/fail2ban/jail.local

添加以下参数。

[DEFAULT]
bantime  = 21600
findtime  = 300
maxretry = 3
banaction = iptables-multiport
backend = systemd
banaction_allports = iptables-allports

以上参数的简要说明:

  • 范时间 –禁止IP的时间(以秒为单位)
  • 最大尝试 –禁止主机之前重试的次数
  • 寻找时间 – Fail2ban禁止创建主机。最大尝试“持续”寻找时间“第二。
  • 禁止 –禁令的类型
  • 忽视 –您可以指定一个IP地址,该地址将被fail2ban忽略
  • 后端 –用于捕获日志文件中更改的后端。
  • Banaction_allports – Fail2ban阻止所有端口上的远程IP

配置Jails以保护SSH,Postfix,Dovecot

在本节中,我们将研究如何为SSH,Postfix和dovecot配置Fail2ban监狱。

/etc/fail2ban/jail.local 将要启用的服务的参数添加到文件中。

对于SSH:

[ssh]
enabled  = true
port     = ssh
filter   = sshd
logpath  = /var/log/auth.log

对于Postfix:

[postfix]
enabled  = true
port     = smtp,465,submission

鸽舍

[dovecot]
enabled = true
port    = pop3,pop3s,imap,imaps,submission,465,sieve

后缀SASL

[postfix-sasl]
enabled  = true
port     = smtp,465,submission,imap,imaps,pop3,pop3s

在上述配置中使用以下属性:

  • 实效 可以设置为– 真正 要么 错误错误 启用/禁用过滤器。
  • 港口 –运行服务的端口。如果使用的端口是默认端口,则可以使用服务的名称。否则,您需要明确指定端口号。
  • 过滤 筛选器文件的名称位于– /etc/fail2ban/filter.d/ 包含用于解析日志的fileregex信息的目录。
  • 日志路径 –服务日志的路径

使用Fail2ban客户端

Fail2ban-client是用于从Shell运行Fail2ban的命令行工具。

一般用法 fail2ban-client <COMMAND>

下面是Fail2ban-client命令的列表。

  • start:Fail2ban用于启动服务器和监狱
  • reload:用于重新加载Fail2ban设置
  • stop:停止服务器
  • status:用于检查服务器状态并启用监狱
  • status JAIL :显示监狱状态和当前禁止的IP

例:

  1. Fail2ban-客户端状态
$ sudo fail2ban-client status
Status
|- Number of jail:	6
`- Jail list:	dovecot, postfix, postfix-sasl, proftpd, sshd, webmin-auth

2.Fail2ban-客户端状态sshd

$ sudo fail2ban-client status sshd
Status for the jail: sshd
|- Filter
|  |- Currently failed:	0
|  |- Total failed:	22
|  `- Journal matches:	_SYSTEMD_UNIT=sshd.service + _COMM=sshd
`- Actions
   |- Currently banned:	0
   |- Total banned:	4
   `- Banned IP list:	

3.禁止的IP:

fail2ban禁止的IP

要从监狱中删除IP,可以使用以下命令将其删除:

$ sudo fail2ban-client set <jailname> unbanip <IP>

例:

$ sudo fail2ban-client set sshd unbanip 192.168.100.12

在上面的示例中,从sshdjail中删除了IP 192.168.100.12。

结论

我已经阅读了有关如何在CentOS / RHEL 8上设置Fail2ban的指南。此工具有助于防止在RHEL / CentOS8系统上进行入侵检测和暴力攻击。

在我们的网站上查看其他相关文章。

使用Infection Monkey自动化渗透测试操作

法拉第–渗透测试IDE和漏洞管理平台

Sidebar