PVE配置Fail2Ban防暴力破解Web登录与SSH连接

通过在Proxmox VE中配置Fail2Ban以防止暴力破解SSH与Web登录
PVE配置Fail2Ban防暴力破解Web登录与SSH连接
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 文件的末尾:
提示:像 bantimefindtime 这样的时间属性也允许使用组合格式,如 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. 手动添加白名单

参考

上一篇
PostgreSQL配置Fail2Ban防暴力破解
下一篇
单臂路由|N1盒子(OpenWRT)单线多拨实现网速叠加
Loading...
发布于 2024-11-16
修改于 2024-11-19
最新发布
解决宝塔面板反向代理后无法显示真实IP的问题
2024-12-20
群晖Docker安装部署自托管AppFlowy笔记应用
2024-12-14
PostgreSQL配置Fail2Ban防暴力破解
2024-11-19
PVE配置Fail2Ban防暴力破解Web登录与SSH连接
2024-11-19
单臂路由|N1盒子(OpenWRT)单线多拨实现网速叠加
2024-11-18
关于Sass 你需要知道的 Interpolation(插值)
2024-11-17