Ubuntu fail2ban入侵防御配置(手把手教你安装与配置 Fail2ban 提升 Linux 服务器安全防护)

来源:这里教程网 时间:2026-03-29 01:05:04 作者:

在当今互联网环境中,Linux 服务器(尤其是基于 Ubuntu 的系统)常常面临暴力破解、恶意登录尝试等安全威胁。为了有效防御这些攻击,fail2ban 是一个非常实用的开源入侵防御工具。本文将为小白用户详细讲解如何在 Ubuntu 系统中安装、配置并启用 fail2ban,帮助你轻松提升服务器的安全性。

什么是 Fail2ban?

Fail2ban 是一款用 Python 编写的日志监控工具,它会实时分析系统日志(如 /var/log/auth.log),一旦发现多次失败的登录尝试(例如 SSH 暴力破解),就会自动将攻击者的 IP 地址加入防火墙规则(如 iptables 或 ufw),从而暂时或永久禁止其访问。这种机制能有效阻止自动化脚本对服务器的持续攻击。

准备工作

在开始之前,请确保你拥有以下条件:

一台运行 Ubuntu 20.04/22.04/24.04 的服务器 具有 sudo 权限的用户账户 已启用 SSH 服务(默认端口 22)

第1步:安装 Fail2ban

打开终端,执行以下命令更新软件包列表并安装 fail2ban:

sudo apt updatesudo apt install fail2ban -y

安装完成后,fail2ban 会自动启动并设置为开机自启。

第2步:配置 Fail2ban 基础设置

Fail2ban 的主配置文件是

/etc/fail2ban/jail.conf
,但官方建议不要直接修改它,而是创建一个本地副本
jail.local
来覆盖默认设置。

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

接下来编辑

jail.local
文件:

sudo nano /etc/fail2ban/jail.local

在文件顶部找到以下参数并根据需要修改(推荐值如下):

[DEFAULT]# 默认封禁时长(秒),-1 表示永久bantime = 600# 在多长时间内(秒)允许多少次失败尝试findtime = 600maxretry = 5# 封禁动作,使用 ufw(如果你用的是 Ubuntu 默认防火墙)banaction = ufw# 发送邮件通知(可选)# destemail = your@email.com# action = %(action_mwl)s

第3步:启用 SSH 防护

jail.local
文件中,找到
[sshd]
部分,取消注释并启用它:

[sshd]enabled = trueport = sshlogpath = /var/log/auth.log

保存并退出编辑器(在 nano 中按

Ctrl+O
→ 回车 →
Ctrl+X
)。

第4步:重启 Fail2ban 并验证状态

应用新配置:

sudo systemctl restart fail2ban

查看 fail2ban 是否正常运行:

sudo systemctl status fail2ban

查看当前被封禁的 IP 列表:

sudo fail2ban-client status sshd

常见问题与优化建议

- 避免误封自己:可在

[DEFAULT]
中添加
ignoreip = 127.0.0.1/8 你的公网IP

- 延长封禁时间:对于高频攻击,可将
bantime
设为 86400(24小时)甚至 -1(永久)。
- 监控日志:定期检查
/var/log/fail2ban.log
了解封禁记录。

结语

通过以上步骤,你已经成功在 Ubuntu 系统上部署了 fail2ban 入侵防御系统,有效提升了服务器对暴力破解等攻击的抵御能力。无论是个人开发者还是企业运维人员,掌握 Ubuntu fail2ban 安装教程 都是保障 Linux 服务器安全防护 的基础技能。希望这篇 fail2ban Ubuntu 配置 教程对你有所帮助!

相关推荐

热文推荐