讲师中心 微信公众号
AI工具推荐 视频效率加速

Linux SSH 安全实践:利用 Fail2Ban 防止暴力攻击

酷明姑娘_5200

酷明姑娘_5200

发布时间:2026-07-19 10:24:59

|

1013人浏览过

|

来源于php中文网

原创

Fail2Ban是日志驱动的智能守门人,通过监控auth.log等日志识别异常登录行为,调用iptables/nftables临时封禁IP;Ubuntu/Debian执行sudo apt install -y fail2ban即可安装启用,需配置jail.local中sshd的enabled、maxretry、findtime、bantime及ignoreip等参数,并验证日志路径与防火墙后端兼容性。

linux ssh 安全实践:利用 fail2ban 防止暴力攻击

Fail2Ban 不是防火墙替代品,而是日志驱动的智能守门人——它不拦所有流量,只在确认某 IP 出现异常登录行为后,才调用系统防火墙临时封禁。对暴露在公网的 Linux 服务器来说,这是成本最低、效果最稳的基础防护手段。

安装与启动要一步到位

Ubuntu/Debian 系统执行一条命令即可完成安装并自动启用:

  • sudo apt update && sudo apt install -y fail2ban
  • 服务默认开机自启,运行 sudo systemctl status fail2ban 查看状态应为 active (running)
  • 切勿直接编辑 /etc/fail2ban/jail.conf,而是复制生成本地配置:sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local

SSH 防护核心参数必须调准

编辑 /etc/fail2ban/jail.local,定位到 [sshd] 区块,确保以下设置合理:

Obsidian (Linux)
Obsidian (Linux)

操作 Obsidian 库(纯 Markdown 笔记),并通过 notesmd-cli 实现自动化。

下载
  • enabled = true —— 开关必须打开
  • maxretry = 3 —— 3 次失败即触发,兼顾安全与误操作容忍
  • findtime = 600 —— 10 分钟内累计达上限才计数,避免时间窗口过短误判
  • bantime = 1h —— 封禁 1 小时(支持 s/m/h/d 单位,慎用永久封禁)
  • ignoreip 填入你常用运维 IP 或内网段,例如 127.0.0.1/8 ::1 192.168.1.0/24
  • logpath 必须匹配真实路径:Ubuntu/Debian 用 /var/log/auth.log,CentOS/RHEL 改为 /var/log/secure

适配环境细节决定成败

几个易被跳过的点,直接影响 Fail2Ban 是否真正生效:

  • 新系统多用 nftables,在 [DEFAULT] 段添加 backend = auto 或 backend = systemd,确保封禁指令能写入规则
  • 若仍使用密码登录,务必设强密码;更推荐提前启用密钥认证,并在 /etc/ssh/sshd_config 中设 PasswordAuthentication no
  • 确认 SSH 服务本身已重启且日志确实在写入——可执行 sudo tail -n 5 /var/log/auth.log 看是否有最新登录记录

验证与日常管理不能省略

配置保存后立即验证,避免“以为生效实则静默”:

  • 重启服务:sudo systemctl restart fail2ban
  • 查当前封禁情况:sudo fail2ban-client status sshd
  • 实时观察动作:sudo tail -f /var/log/fail2ban.log,看到 ban 记录即表示链路通了
  • 误封需解封:sudo fail2ban-client set sshd unbanip 192.0.2.100

热门AI工具

更多
Atoms
Atoms Hot

Atoms是一款AI智能体工具,第一支自动构建真实业务的 AI 团队。

讯飞绘文

讯飞绘文是一款由科大讯飞推出的一站式 AIGC 内容运营平台。

Seko
Seko Hot

一款AI视频创作工具,主要用于商汤科技推出的创编一体的AI短视频创作Agent,适合需要提升相关任务效率的用户。

立刻MV
立刻MV Hot

立刻MV是一款AI文本写作工具,AI 音乐视频(MV)创作工具。

豆包大模型

豆包大模型是一款由字节跳动推出的企业级大语言模型服务平台。

咔片AIPPT

一款在线AI演示文稿制作工具,可根据主题和内容需求辅助生成PPT结构与页面,提高演示材料制作效率。

DeepSeek

DeepSeek是一款面向对话、写作、编程和推理场景的AI大模型工具。

WorkBuddy

一款AI办公效率工具,主要用于腾讯云推出的AI原生桌面智能体工作台,适合需要提升相关任务效率的用户。

小橡皮AI

一款AI工具,主要用于小橡皮一键去AI味,将机器味重的内容改得更有活人感,防止因为 AI 内容被平台打上 AI 标签,以及限流,适合需要提升相关任务效率的用户。

相关专题

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

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

4965

2025.10.13

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

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

415

2025.11.04

Gradle插件开发入门教程
Gradle插件开发入门教程

本专题介绍Gradle插件开发的基本流程,涵盖插件类编写、自定义任务注册、扩展参数设计和插件应用方法,帮助你理解插件如何组织构建逻辑,减少多个项目之间的重复配置。

60

2026.10.22

Gradle Wrapper配置教程
Gradle Wrapper配置教程

本专题介绍Gradle Wrapper的基本作用,涵盖文件组成、生成方法、版本配置和任务调用,帮助你理解项目如何使用指定的Gradle版本,减少不同开发环境带来的构建差异。

40

2026.10.22

Golangci-lint检查器使用教程
Golangci-lint检查器使用教程

本专题整理Golangci-lint常用Linters的用途与配置方法,覆盖错误处理、无效代码、安全、复杂度、命名和依赖检查,帮助项目合理选规则。

40

2026.10.22

Gradle怎么构建Java项目
Gradle怎么构建Java项目

本专题介绍Gradle Java项目构建方法,涵盖Java插件配置、依赖声明、源码编译、测试执行和打包检查,帮助你理解各阶段的任务关系,逐步完成项目构建。

20

2026.10.22

PHP时间戳漏洞修复教程
PHP时间戳漏洞修复教程

本专题汇总PHP常见时间戳漏洞,包括2038年溢出、时区漂移、时间戳伪造、重放攻击、时间盲注与日志审计失效等,并给出升级64位环境、使用 DateTimeImmutable、统一UTC、严格超时校验、预处理绑定、hash_equals 比对等修复方案,帮助开发者快速排查和加固时间相关代码。

40

2026.10.22

Golangci-lint配置文件与规则设置
Golangci-lint配置文件与规则设置

本专题聚焦Golangci-lint YAML配置文件,讲清运行参数、规则启停、目录排除、问题过滤及严重级别设置,便于团队统一检查标准。

20

2026.10.22

Golangci-lint安装与入门教程
Golangci-lint安装与入门教程

本专题讲解Golangci-lint的安装、初始化、基础命令和首次代码检查,覆盖本地环境、Docker及多平台用法,帮助Go开发者快速上手。

20

2026.10.22

热门下载

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

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
Python uv官方安装与入门文档
Python uv官方安装与入门文档

共0课时 | 0人学习

Buffalo框架快速入门指南
Buffalo框架快速入门指南

共0课时 | 0人学习

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

共0课时 | 0人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn