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

Fail2Ban 实战终极速查表

一、核心基础操作(必记)

1. 服务管理

  • 启动服务:sudo systemctl start fail2ban
  • 停止服务:sudo systemctl stop fail2ban
  • 重启服务:sudo systemctl restart fail2ban
  • 查看状态(验证服务是否运行):sudo systemctl status fail2ban
  • 设置开机自启:sudo systemctl enable fail2ban

2. 状态查询

  • 查看所有监狱状态:sudo fail2ban-client status
  • 查看指定监狱(如 sshd)状态:sudo fail2ban-client status sshd

二、封禁与解封操作(高频使用)

1. 手动封禁 IP

  • 格式:sudo fail2ban-client set [监狱名] banip [目标IP]
  • 示例:sudo fail2ban-client set sshd banip 10.0.0.1(封禁 10.0.0.1 到 sshd 监狱)

2. 手动解封 IP

  • 格式:sudo fail2ban-client set [监狱名] unbanip [目标IP]
  • 示例:sudo fail2ban-client set sshd unbanip 10.0.0.1
  • 解封所有 IP:sudo fail2ban-client unban --all

三、核心配置(sshd 监狱示例)

1. 快速配置(直接生效)

bash

运行

sudo tee /etc/fail2ban/jail.d/sshd.conf <<-'EOF' [sshd] enabled = true # 启用监狱 port = ssh # 防护端口(ssh 对应 22) filter = sshd # 匹配 sshd 日志的规则 backend = systemd # 适配 Ubuntu 新版日志机制 maxretry = 3 # 3 次失败登录触发封禁 bantime = 3600 # 封禁时长(秒),1 小时=3600 秒 findtime = 600 # 统计窗口(秒),10 分钟内触发 ignoreip = 127.0.0.1 # 忽略本地 IP,避免误封 action = iptables-multiport # 封禁动作(iptables 拦截) EOF

2. 配置生效命令

  • 重新加载配置:sudo fail2ban-client reload sshd
  • 强制重启生效:sudo systemctl restart fail2ban

四、Web 界面管理(f2bwi)

1. 启动 / 停止 Web 服务

  • 启动(本地访问):cd /var/www/f2bwi && php -S 127.0.0.1:8080
  • 停止:按Ctrl+C终止进程
  • 访问地址:浏览器打开http://127.0.0.1:8080

2. Web 界面操作

  • 封禁新 IP:选择监狱(sshd)→ 输入 IP → 点击「Ban IP」
  • 刷新状态:点击界面「Refresh」按钮
  • 解封 IP:通过终端命令(f2bwi 无直接解封按钮)

3. 消除 PHP 警告(可选)

bash

运行

sudo sed -i '1i <?php error_reporting(E_ALL & ~E_NOTICE & ~E_WARNING); ?>' /var/www/f2bwi/index.php

五、避坑指南(关键提醒)

  1. Ubuntu 22.04+/20.04 必须配置backend = systemd,否则日志匹配失败;
  2. 手动写/var/log/auth.log无效,优先用ssh输错密码或banip命令测试;
  3. Web 界面仅用于管理,封禁规则最终依赖 Fail2Ban 服务,服务停止不影响已封禁 IP;
  4. 若看不到封禁记录,先查服务状态(systemctl status fail2ban),确保服务正常运行。
http://www.jsqmd.com/news/94944/

相关文章:

  • Firefox 浏览器:自由与安全的互联网探索工具
  • 图像导数、梯度和Sobel算子:计算机视觉中的边缘检测基础
  • 网络安全怎么快速入门,新手也能少走半年弯路!
  • 基于SpringBoot的计算思维与人工智能学习网站设计与实现_3270a91w
  • RDF 容器:解析与使用指南
  • 数据结构资源合集
  • 数据库同步软件PanguSync说明书
  • 从GitHub到Ollama:快速部署Qwen3-8B大模型全流程详解
  • groovy流程控制
  • 4.1.17.4.MySQL索引
  • 11.19 脚本 最小web控制linux/termux - 指南
  • groovy面向对象
  • Transformer模型压缩技术在Qwen-Image上的应用前景
  • (附带word报告)并联型有源电力滤波器APF simulink仿真 利用基于瞬时无功功率理论...
  • 011.并查集
  • 49周作业
  • Miniconda环境导出与导入:实现团队协作无缝对接
  • 07FlyLTAS旅行社ERP散客滚动发团操作流程说明
  • 使用Ollama运行Seed-Coder-8B-Base:轻量级代码生成解决方案
  • 07FlyLTAS旅行社ERP散客行程分团状态说明
  • Conda虚拟环境配置Qwen-Image-Edit-2509全流程教程
  • 第六章-元素绑定
  • Labview实现四工位相机同时扫二维码、HTTP协议Mes上传及汇川PLC通讯协议
  • 2026毕设ssm+vue基于的作业管理系统论文+程序
  • 【自然语言处理】自然语言处理中数据集的开发与测试:从基础划分到稳健评估的全维度实践
  • 关于浔川 AI 翻译项目推进建议的公告
  • 如何将gpt-oss-20b封装成REST API供外部调用
  • 滚动轴承缺陷动力学模型:从理论到实践
  • Halcon条码技术详解(含 Halcon 应用示例)
  • 【ACWing】111. 畜栏预定