如何配置Linux系统在遭遇大规模暴力破解时自动触发防火墙封禁策略

胖浩酱_2396

胖浩酱_2396

2026-05-11

856人浏览

原创

fail2ban核心是实时解析ssh认证日志、匹配失败模式后调用防火墙自动封禁,依赖日志路径准确(如ubuntu用/auth.log、centos用/secure)、配置置于jail.local、合理设maxretry=3、findtime=10m、bantime=1h,并需匹配实际防火墙后端验证生效。

如何配置linux系统在遭遇大规模暴力破解时自动触发防火墙封禁策略

核心是用 fail2ban 实时解析 SSH 认证日志,匹配失败模式后调用防火墙自动封禁。它不依赖人工响应,而是靠日志+规则+动作三者联动,在攻击发生几秒内完成拦截。

确保 fail2ban 正确监听真实日志路径

fail2ban 不会“自己猜”日志在哪,必须手动对齐:

  • Ubuntu/Debian 系统:logpath = /var/log/auth.log
  • RHEL/CentOS/Rocky 8+:logpath = /var/log/secure
  • 若启用了 journald 且未落盘日志,需改 backend = systemd,并确认 journalctl -u ssh | grep "Failed" 能看到记录
  • 配置写在 /etc/fail2ban/jail.local 中,不要改 jail.conf,避免升级覆盖

设置合理触发阈值防误封也防漏判

大规模扫描常表现为短时间高频、多 IP、低重试次数(如每个 IP 只试 3–5 次就换),因此参数要兼顾灵敏与稳健:

VLAN Linux Client
VLAN Linux Client

管理 VLAN.CN Linux 客户端的安装、登录、组网连接、服务控制及网络诊断操作。

下载
  • maxretry = 3:3 次失败即响应,适合识别扫段行为
  • findtime = 10m:10 分钟滑动窗口,比固定周期更适应持续性扫描
  • bantime = 1h:封 1 小时足够打断自动化脚本节奏;可设为 86400(1 天)或 -1(永久)应对已确认恶意 IP
  • ignoreip = 127.0.0.1/8 ::1 203.0.113.55:务必填入你日常管理的公网或跳板机 IP,防止被锁死

匹配实际防火墙后端并验证封禁生效

fail2ban 只是“发号施令”,真正拦住连接的是底层防火墙。常见失灵原因就是动作没执行成功:

  • 查当前用的封禁方式:sudo fail2ban-client get sshd banaction
  • 若返回 iptables-multiport,但系统无 iptables 命令 → 安装 sudo apt install iptables(Debian)或 sudo dnf install iptables(RHEL)
  • 若返回 firewallcmd-ipset(firewalld 场景),但 firewalld 未运行 → 启动 sudo systemctl start firewalld
  • 云服务器(如 AWS EC2、阿里云 ECS)通常禁用本地 iptables,此时需改用自定义 action 调用 API,或直接依靠安全组+fail2ban 日志告警做人工干预
  • 验证是否真封了:sudo iptables -L f2b-sshd -n(iptables)或 sudo nft list chain inet fail2ban filter_input | grep sshd(nftables)

配合基础加固提升整体防护水位

fail2ban 是“最后一道自动防线”,不是万能补丁。必须前置降低攻击面:

  • 把 SSH 改到高位端口(如 22222),可过滤掉 90% 的通用扫描器
  • 关闭密码登录:PasswordAuthentication no,强制使用密钥认证
  • 禁止 root 远程登录:PermitRootLogin no,只允许普通用户 + sudo
  • 限制可登录用户:AllowUsers deploy admin,缩小攻击目标范围

相关专题

更多
Java 网络安全
Java 网络安全

本专题聚焦 Java 在网络安全与加密通信中的应用,系统讲解常见加密算法(MD5、SHA、AES、RSA)、数字签名、HTTPS证书配置、令牌认证(JWT、OAuth2)及常见安全漏洞防护(XSS、SQL注入、CSRF)。通过实战项目(如安全登录系统、加密文件传输工具),帮助学习者掌握 Java 安全开发与加密技术的实战能力。

2025.10.13

4205

12

PHP 安全与防护
PHP 安全与防护

本专题聚焦于PHP开发中的安全问题与防御措施,详细讲解SQL注入、XSS攻击、CSRF攻击、文件包含漏洞等常见安全风险及其修复方法。通过结合实际案例,帮助开发者理解漏洞成因,掌握输入验证、会话安全、加密存储与安全编码规范,全面提升PHP网站的安全防护水平。

2025.11.04

375

21

磁盘配额是什么
磁盘配额是什么

磁盘配额是计算机中指定磁盘的储存限制,就是管理员可以为用户所能使用的磁盘空间进行配额限制,每一用户只能使用最大配额范围内的磁盘空间。php中文网为大家提供各种磁盘配额相关的内容,教程,供大家免费下载安装。

2023.06.21

3710

4

如何安装LINUX
如何安装LINUX

本站专题提供如何安装LINUX的相关教程文章,还有相关的下载、课程,大家可以免费体验。

2023.06.29

3213

10

linux find
linux find

find是linux命令,它将档案系统内符合 expression 的档案列出来。可以指要档案的名称、类别、时间、大小、权限等不同资讯的组合,只有完全相符的才会被列出来。find根据下列规则判断 path 和 expression,在命令列上第一个 - ( ) , ! 之前的部分为 path,之后的是 expression。还有指DOS 命令 find,Excel 函数 find等。本站专题提供linux find相关教程文章,还有相关

2023.06.30

2293

5

linux修改文件名
linux修改文件名

本专题为大家提供linux修改文件名相关的文章,这些文章可以帮助用户快速轻松地完成文件名的修改工作,大家可以免费体验。

2023.07.05

5510

7

linux系统安装教程
linux系统安装教程

linux系统是一种可以免费使用,自由传播,多用户、多任务、多线程、多CPU的操作系统。本专题提供linux系统安装教程相关的文章,大家可以免费体验。

2023.07.06

5182

7

linux查看文件夹大小
linux查看文件夹大小

Linux是一种自由和开放源码的类Unix操作系统,存在着许多不同的Linux版本,但它们都使用了Linux内核。Linux可安装在各种计算机硬件设备中,比如手机、平板电脑、路由器、视频游戏控制台、台式计算机、大型机和超级计算机。linux怎么查看文件夹大小呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.20

3073

8

linux查看ip命令
linux查看ip命令

本专题为大家提供linux查看ip命令相关文章内容,感兴趣的朋友可以免费下载体验试试。

2023.07.20

2585

4

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

Valgrind支持平台说明
Valgrind支持平台说明

共0课时 | 0人学习