如何在 Ubuntu 24.04 服务器上安装 Fail2ban如何在 Ubuntu 24.04 服务器上安装 Fail2ban如何在 Ubuntu 24.04 服务器上安装 Fail2ban如何在 Ubuntu 24.04 服务器上安装 Fail2ban
  • 业务
  • 目标
  • 支持
  • 登录
找到的结果: {phrase} (显示: {results_count} 共: {results_count_total})
显示: {results_count} 共: {results_count_total}

加载更多搜索结果...

搜索范围
模糊匹配
搜索标题
搜索内容

如何在 Ubuntu 24.04 服务器上安装 Fail2ban

发表 admin at 2025年2月28日
类别
  • 未分类
标签

在此页面上

  1. 先决条件
  2. 安装 Fail2ban 和 UFW(简单防火墙)
  3. 配置 Fail2ban
  4. 使用fail2ban-client检查fail2ban规则
  5. 如何使用fail2ban-client禁止和取消禁止IP地址
  6. 结论

Fail2ban 是免费的开源 IPS(入侵防御软件),可帮助管理员保护 Linux 服务器免受恶意登录和暴力攻击。 Fail2ban 采用 Python 编写,附带针对 Apache2、SSH、FTP 等各种服务的过滤器。Fail2ban 通过阻止源攻击的 IP 地址来减少恶意登录尝试。

Fail2ban 的工作原理是扫描服务日志文件 (e.f /var/log/auth.log) 并禁止显示恶意登录尝试的 IP 地址,例如过多的错误密码、寻求漏洞利用等。Fail2ban 还支持多个防火墙后端,例如 iptables、 ufw 和firewalld。还允许您为每次被阻止的登录尝试设置电子邮件通知。

在本指南中,您将了解如何在 Ubuntu 24.04 服务器上安装 Fail2ba。您将设置 Fail2ban 监狱,学习基本的“fail2ban-client”命令,然后了解如何使用 Fail2ban 禁止和取消禁止 IP 地址。

先决条件

要开始使用本指南,请确保您拥有:

  • Ubuntu 24.04 服务器
  • 具有管理员权限的非 root 用户

安装 Fail2ban 和 UFW(简单防火墙)

Fail2ban 是一款 IPS(入侵防御软件),可保护服务器免受暴力攻击。默认情况下,它在大多数 Linux 存储库上可用,并支持多个防火墙后端。在本部分中,您将安装 Fail2ban,然后设置 UFW(简单防火墙),它将用作 Fail2ban 的防火墙后端。

首先,运行以下命令来更新您的 Ubuntu 软件包索引。

sudo apt update

现在使用以下“apt”命令安装“fail2ban”和“ufw”软件包。输入“Y”确认安装。

sudo apt install fail2ban ufw

安装完成后,运行以下命令打开SSH端口并启用UFW。输入“Y”确认、启动并启用 UFW。

sudo ufw allow OpenSSH
sudo ufw enable

启用 UFW 后,您将看到输出“防火墙处于活动状态并在系统启动时启用”。

接下来,运行以下命令来检查 UFW 状态。您将看到 UFW 处于“活动”状态,并且“OpenSSH”已启用。

sudo ufw status

最后,运行下面的“systemctl”命令来启动、启用和验证“fail2ban”服务。

sudo systemctl enable --now fail2ban
sudo systemctl status fail2ban

您可以在下面看到“fail2ban”处于活动状态(正在运行)并已启用。

配置 Fail2ban

安装fail2ban后,您必须在Fail2ban执行操作(检查和阻止)之前对其进行配置。在本部分中,您将修改fail2ban配置'/etc/fail2ban/jail.local',设置'bantime'、'maxretry'的全局配置,和“findtime”,设置默认操作和 UFW 防火墙后端,然后启用“sshd”监狱以保护 SSH 服务免受暴力攻击。

首先,将默认的fail2ban配置复制到“/etc/fail2ban/jail.local”,其中包含以下内容:

sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

使用以下“nano”编辑器命令打开文件“/etc/fail2ban/jail.local”。

sudo nano /etc/fail2ban/jail.local

将您的本地网络添加到“ignoreip”选项。此选项内的任何子网都不会被fail2ban 阻止。

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

调整默认配置“bantime”(IP地址被封禁的时间)、“findtime”(封禁操作前失败次数之间的持续时间)、和“maxretry”(IP 地址被禁止的失败次数)。在此示例中,您将“bantime”设置为“1 小时”,将“findtime”设置为“10”分钟秒”,将“最大重试”设置为“5 次”。

bantime = 1h
findtime = 10m
maxretry = 5

或者,将默认的“操作”更改为“%(action_mw)s”以禁止 IP 地址并通过电子邮件向管理员发送通知。另外,请确保更改“目标邮件”和“发件人”选项。

action = %(action_mw)s
destemail = [email 
sender = [email 

将默认的“banaction”更改为“ufw”。这样,IP 地址将通过 UFW 被fail2ban 禁止。

banaction = ufw

现在使用以下配置更改“sshd”的默认监狱。在此示例中,“sshd”监狱将具有“bantime”、“maxretry”和“findtime”的自定义设置'。

[sshd]
enabled = true
maxretry = 3
findtime = 15m
bantime = 3h
port = ssh
logpath = %(sshd_log)s
backend = %(sshd_backend)s

完成后保存并退出文件。

最后,运行下面的“systemctl”命令来重新启动“fail2ban”服务并应用您的更改。

sudo systemctl restart fail2ban

使用fail2ban-client检查fail2ban规则

此时,Fail2ban 服务已启动并正在运行,并且启用了“sshd”监狱。现在您将学习“fail2ban-client”的基本命令,用于检查和管理 Fail2ban 安装。

要确保fail2ban正在运行,请运行下面的“fail2ban-client”命令。

sudo fail2ban-client ping

如果fail2ban正在运行,您将看到输出“PONG”。

现在使用以下命令检查“sshd”监狱的状态。这将向您显示“sshd”监狱检测到和禁止的 IP 地址列表。

sudo fail2ban-client status sshd

接下来,运行下面的“fail2ban-client get”命令来检查你的fail2ban监狱的具体规则。在此部分中,您将检查“bantime”、“maxretry”、“actions”、“findtime” >”,以及来自“sshd”监狱的“ignoreip”。

sudo fail2ban-client get sshd bantime
sudo fail2ban-client get sshd maxretry
sudo fail2ban-client get sshd actions
sudo fail2ban-client get sshd findtime
sudo fail2ban-client get sshd ignoreip

如何使用fail2ban-client禁止和取消禁止IP地址

了解如何使用“fail2ban-client”手动禁止或取消禁止 IP 地址非常重要。这样,您就可以轻松地将您的 IP 地址从禁止列表中删除。您将使用“fail2ban-client”命令在 Fail2ban 上禁止和取消禁止 IP 地址。

要通过fail2ban手动禁止IP地址,请运行下面的“fail2ban-client”命令。在这种情况下,被禁止的 IP 地址将进入“sshd”监狱。

sudo fail2ban-client set sshd banip IP-ADDRESS

现在运行以下命令从fail2ban 'sshd'监狱中取消禁止IP地址。

Sudo fail2ban-client set sshd unbanip IP-ADDRESS

最后,您可以使用以下命令检查“sshd”监狱状态。您会看到 IP 地址已被删除。

sudo fail2ban-client status sshd

结论

恭喜!您已在 Ubuntu 24.04 服务器上完成了 failed2ban 的安装。您还学习了配置 Fail2ban 的基本配置,包括设置全局配置和监狱。最后,您还学习了“fail2ban-client”命令的基本用法来检查fail2ban状态、jail状态、jail配置以及手动禁止和取消禁止IP地址。

©2015-2025 Norria support@alaica.com