首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >Jtti 如何设置 Fail2Ban 来监控特定端口

Jtti 如何设置 Fail2Ban 来监控特定端口

原创
作者头像
jtti
发布于 2024-12-23 15:32:05
发布于 2024-12-23 15:32:05
1.1K0
举报
文章被收录于专栏:jttijtti

要设置 Fail2Ban 来监控特定端口,你需要编辑 Fail2Ban 的配置文件,通常位于 /etc/fail2ban/ 目录下的 jail.local 文件。以下是设置 Fail2Ban 监控特定端口的步骤:

  1. 备份配置文件: 在编辑任何配置文件之前,最好先备份原始文件。你可以使用以下命令来备份 jail.local 文件: bashsudo cp /etc/fail2ban/jail.local /etc/fail2ban/jail.local.backup
  2. 编辑 jail.local 文件: 使用文本编辑器编辑 jail.local 文件。例如,使用 nano 编辑器: bashsudo nano /etc/fail2ban/jail.local
  3. 添加或修改监狱配置: 在 jail.local 文件中,你可以添加或修改监狱(jail)的配置。每个监狱定义了 Fail2Ban 监控的服务和相应的参数。例如,如果你想要监控端口 8080,你可以添加如下配置: ini[myapp:http] enabled = true port = http,8080 filter = myapp-http logpath = /var/log/myapp/access.log bantime = 3600 findtime = 600 maxretry = 5 这里的配置项解释如下:
    • [myapp:http]:监狱的名称,myapp 是服务名称,http 表示协议。
    • enabled = true:启用这个监狱。
    • port = http,8080:监控 HTTP 协议的 8080 端口。
    • filter = myapp-http:使用名为 myapp-http 的过滤器,你需要在 /etc/fail2ban/filter.d/ 目录下创建这个过滤器文件。
    • logpath = /var/log/myapp/access.log:指定服务的日志文件路径。
    • bantime = 3600:封禁时间为 3600 秒(1小时)。
    • findtime = 600:在 600 秒内检测失败尝试。
    • maxretry = 5:在 findtime 时间窗口内允许的最大失败尝试次数。
  4. 创建自定义过滤器: 如果 Fail2Ban 默认的过滤器不符合你的需求,你需要创建自定义过滤器。过滤器文件应该放在 /etc/fail2ban/filter.d/ 目录下。过滤器文件定义了如何从日志中提取失败尝试的信息。
  5. 重启 Fail2Ban 服务: 修改配置后,需要重启 Fail2Ban 服务以使更改生效: bashsudo systemctl restart fail2ban
  6. 检查 Fail2Ban 状态: 使用 fail2ban-client 命令检查监狱的状态,确保新的监狱配置已正确加载: bashfail2ban-client status

通过以上步骤,你可以设置 Fail2Ban 来监控特定端口,并根据日志中的失败尝试自动采取行动。记得根据你的实际需求调整配置参数。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档