ubuntu使用fail2ban_如何在Ubuntu 20.04上安装和配置Fail2ban

本文详细介绍了如何在Ubuntu 20.04上安装和配置Fail2ban,包括安装步骤、配置Fail2ban、设置IP白名单、调整禁止参数、邮件通知以及管理Jails。通过Fail2ban增强服务器安全性,防止恶意攻击。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文介绍如何在Ubuntu 20.04上安装和配置Fail2ban。

1、Fail2ban软件包包含在默认的Ubuntu 20.04存储库中。要安装它,请以root或具有sudo特权的用户身份输入以下命令:

sudo apt update

sudo apt install fail2ban

安装完成后,Fail2ban服务将自动启动。您可以通过检查服务状态来验证它:

sudo systemctl status fail2ban

至此,您已在Ubuntu服务器上运行Fail2Ban。

2、Fail2ban配置

默认的Fail2ban安装带有两个配置文件,/etc/fail2ban/jail.conf和/etc/fail2ban/jail.d/defaults-debian.conf。不建议修改这些文件,因为更新软件包时它们可能会被覆盖。

Fail2ban按以下顺序读取配置文件。每个.local文件都会覆盖文件中的设置.conf:

/etc/fail2ban/jail.conf

/etc/fail2ban/jail.d/*.conf

/etc/fail2ban/jail.local

/etc/fail2ban/jail.d/*.local

对于大多数用户来说,配置Fail2ban的最简单方法是将复制jail.conf到jail.local并修改.local文件。更高级的用户可以.local从头开始构建配置文件。该.local文件不必包括相应.conf文件中的所有设置,仅包括您要覆盖的设置。

.local从默认jail.conf文件创建配置文件:

sudo cp /etc/fail2ban/jail.{conf,local}

要开始将Fail2ban服务器配置为打开,jail.local请使用文本编辑器打开该文件:

sudo cp /etc/fail2ban/jail.local

该文件包含描述每个配置选项功能的注释。在此示例中,我们将更改基本设置。

3、将IP地址列入白名单

您可以将要排除的IP地址,IP范围或主机添加到ignoreip指令中。在这里,您应该添加您的本地PC IP地址以及您要列入白名单的所有其他计算机。

取消以开头的行的注释,ignoreip并添加IP地址(以空格分隔):

文件:/etc/fail2ban/jail.local

ignoreip = 127.0.0.1/8 ::1 123.123.123.123 192.168.1.0/24

禁止设置

bantime、findtime和maxretry选项的值定义了禁止时间和禁止条件。

bantime禁止IP的持续时间。如果未指定后缀,则默认为秒。默认情况下,该bantime值设置为10分钟。通常,大多数用户会希望设置更长的禁止时间。根据您的喜好更改值:

文件:/etc/fail2ban/jail.local

bantime = 1d

要永久禁止IP,请使用负数。

findtime是设置禁令前的失败次数之间的持续时间。例如,如果将Fail2ban设置为在5次失败之后禁止IP(maxretry请参见下文),则这些失败必须在findtime持续时间内发生。

文件:/etc/fail2ban/jail.local

findtime = 10m

maxretry是禁止IP之前的失败次数。默认值设置为5,这对于大多数用户来说应该没问题。

文件:/etc/fail2ban/jail.local

maxretry = 5

邮件通知

当IP被禁止时,Fail2ban可以发送电子邮件警报。要接收电子邮件,您需要在服务器上安装SMTP并更改默认操作,该操作仅将IP禁止为%(action_mw)s,如下所示:

文件:/etc/fail2ban/jail.local

action = %(action_mw)s

%(action_mw)s将禁止违规的IP,并发送包含Whois报告的电子邮件。如果要在电子邮件中包含相关日志,请将操作设置为%(action_mwl)s。

您还可以调整发送和接收电子邮件地址:

文件:/etc/fail2ban/jail.local

destemail = admin@linuxize.com

sender = root@linuxize.com

4、Fail2ban Jails

Fail2ban使用Jails的概念。Jails描述了一项服务,其中包括过滤器和操作。对符合搜索模式的日志条目进行计数,并在满足预定义条件时执行相应的操作。

Fail2ban附带有许多用于不同服务的Jails。您还可以创建自己的Jails配置。

默认情况下,仅启用ssh Jails。要启用Jails,您需要enabled = true在Jails标题后添加。以下示例显示了如何启用proftpd Jails:

文件:/etc/fail2ban/jail.local

[proftpd]

port = ftp,ftp-data,ftps,ftps-data

logpath = %(proftpd_log)s

backend = %(proftpd_backend)s

我们在上一节中讨论的设置可以按Jails设置。这是一个例子:

文件:/etc/fail2ban/jail.local

[sshd]

enabled = true

maxretry = 3

findtime = 1d

bantime = 4w

ignoreip = 127.0.0.1/8 23.34.45.56

筛选器位于/etc/fail2ban/filter.d目录中,并存储在与Jails名称相同的文件中。如果您具有自定义设置并且对正则表达式有经验,则可以对过滤器进行微调。

每次编辑配置文件时,都需要重新启动Fail2ban服务以使更改生效:

sudo systemctl restart fail2ban

5、Fail2ban客户端

Fail2ban附带了一个名为的命令行工具fail2ban-client,可用于与Fail2ban服务进行交互。

要查看所有可用选项,请使用以下选项调用命令-h:

fail2ban-client -h

此工具可用于禁止/取消禁止IP地址,更改设置,重新启动服务等等。以下是一些示例:

检查 Jails状况:

sudo fail2ban-client status sshd

取消IP:

sudo fail2ban-client set sshd unbanip 23.34.45.56

禁止IP:

sudo fail2ban-client set sshd banip 23.34.45.56

我们已经向您展示了如何在Ubuntu 20.04上安装和配置Fail2ban。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值