概览
- 指南类型
- 运营与安全
- 示例
- 示例,因环境而异
- 集成范围
- 未连接远程机器
01
确认事件和日志来源
Fail2ban 读取身份验证失败,并请求防火墙后端阻止重复来源。它有助于应对重复尝试;它不能替代密钥身份验证或系统更新。确认 SSH 失败会到达 jail 将读取的 journal 或日志文件。
02
为您的发行版安装软件包
在受维护的 Debian 或 Ubuntu 主机上,包管理器可以安装它。在启用自定义 jail 之前,请查看其默认设置和后端。其他发行版可能使用不同的软件包仓库或防火墙操作。
Debian / Ubuntu 示例针对你的环境查看
sudo apt update
sudo apt install fail2ban03
添加一个小型覆盖,而不是复制全局文件
在 /etc/fail2ban/jail.d/sshd.local 中创建覆盖配置。匹配实际的 SSH 端口。此示例读取 systemd 日志;如果系统写入不同的日志,请使用适当的后端和日志路径。仅在验证可信管理地址后,将其添加到 ignoreip。
示例 /etc/fail2ban/jail.d/sshd.local针对你的环境查看
[sshd]
enabled = true
port = 22
backend = systemd
maxretry = 5
findtime = 10m
bantime = 1h
ignoreip = 127.0.0.1/8 ::104
检查配置和活动 jail
仅在查看文件并保持恢复会话打开后启动服务。检查服务和 jail 输出;没有匹配事件的活跃守护进程可能不提供任何保护。
验证并检查针对你的环境查看
sudo fail2ban-client -t
sudo systemctl enable --now fail2ban
sudo fail2ban-client status
sudo fail2ban-client status sshd05
在不丢失唯一访问路径的情况下进行测试
使用单独的受控测试源来验证检测、封禁和到期。检查 IPv6 和有效的防火墙规则。如果受信任的来源被错误封禁,请使用保留的控制台移除该特定封禁,然后修复策略;不要为了绕过某个错误而禁用所有保护。
特定解封 · 文档地址针对你的环境查看
sudo fail2ban-client set sshd unbanip 192.0.2.44下一步之前
带着可验证的结果离开。
- 确认事件和日志来源。
- 在不丢失唯一访问路径的情况下进行测试。
- 将恢复信息和机密保存在公共文件之外。