当前位置:首页 > Ubuntu > 正文

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

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

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

什么是 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 配置 教程对你有所帮助!