type
status
date
slug
summary
tags
category
icon
password
Fail2Ban 一个可以禁用导致多次身份验证错误的主机的工具!
Fail2Ban 会扫描诸如
/var/log/auth.log
等日志文件,并禁止那些进行过多失败登录尝试的 IP 地址。它通过更新系统防火墙规则来拒绝这些 IP 地址的新连接,禁止时间是可配置的。Fail2Ban 开箱即用,能够读取许多标准日志文件,如 sshd 和 Apache 的日志文件,并且可以轻松配置为读取任何你选择的日志文件,以检测任何你希望监控的错误。尽管 Fail2Ban 能够降低错误身份验证尝试的频率,但它无法消除弱身份验证所带来的风险。如果你真的想保护服务,应该设置服务只使用双因素认证或公钥/私钥认证机制。
一、安装Fail2Ban
二、设置基础配置
我们建议使用
/etc/fail2ban/jail.local
文件,因为该文件中的设置优先于 jail.conf
的相同设置。使用
jail.conf
作为模板:然后根据你的需要更改或删除复制到
jail.local
中的内容。使用这个独立文件的主要原因是,原始的
jail.conf
可能会被 fail2ban 软件包更新覆盖,而复制的 jail.local
不会,因此你可以更好地管理更新。三、使用 systemd 后端设置 Jail
对于 Proxmox VE 4.0 及以后的系统,
systemd-journald
默认启用,并且自 Proxmox VE 7.0 版本起,日志在重启后也会持久化——这意味着即使攻击在重启前开始,也可以默认找到。对于较旧的系统(因为这些版本已到生命周期结束)或查看下面的传统 rsyslog 选项。基本配置
将以下内容添加到复制的
/etc/fail2ban/jail.local
文件的末尾:提示:像
bantime
和 findtime
这样的时间属性也允许使用组合格式,如 2m 30s
。你可以使用 fail2ban-client --str2sec '1d 12h'
命令测试其是否有效以及实际的禁用秒数是多少。有关所有选项的说明,请参阅 jail.conf
手册页。过滤器配置
创建文件
/etc/fail2ban/filter.d/proxmox.conf
,内容如下:四、重启服务以启用配置
使用以下命令:
以激活配置添加并为 Proxmox VE API 启用 fail2ban。
五、测试 fail2ban 配置
你可以通过尝试使用错误的密码或错误的用户通过 Web 界面登录来测试你的配置,然后执行命令:
你应该在 "Results" 部分的顶部至少看到 "Failregex: 1 total"(并在底部看到 "1 matched")。
注意,如果你尝试过多次并被自己禁止(你的 IP 被
fail2ban-client get proxmox banned
报告),你可以使用 fail2ban-client unban IP
(将 IP 替换为你的)手动解除对自己的封锁。六、常用操作
1. 工具服务启停操作
2. 查看启用的服务监控列表
3. 获取 SSH 服务禁止的 IP 地址
4. 删除禁止的 IP 地址
5. 手动添加白名单
参考
Loading...