#nginx #access #firewall #log #freebsd #openbsd #pf

bin+lib pff

pf 过滤器 - 解析 Nginx 访问日志中不想要的正则表达式模式,并在 PF 防火墙中阻止它们

8 个版本

0.6.2 2024 年 3 月 9 日
0.6.1 2024 年 3 月 8 日
0.4.0 2023 年 4 月 21 日
0.3.3 2022 年 10 月 6 日
0.2.0 2022 年 5 月 13 日

#3#openbsd

Download history 9/week @ 2024-03-29 4/week @ 2024-05-17 3/week @ 2024-05-31 3/week @ 2024-06-07 2/week @ 2024-06-14

每月208次下载

MIT 协议

30KB
487

PFF - PF-Filter。适用于 FreeBSD、OpenBSD 和 MacOS

作者

  • Daniel (dmilith) Dettlaff (@dmilith)

关于

这是一个命令行应用程序,用于解析 Nginx 访问日志中不想要的正则表达式模式,这些模式随后被添加到 PF 防火墙的阻止列表中。

特性

  • 预编译,可配置的正则表达式(想要的和不想要的)
  • 可配置的缓冲区(如果为 0,则每次运行都会解析整个访问日志,如果指定,则将确定要解析日志尾部的多少)
  • 遵循简单规则,如果访问日志行与“想要的”正则表达式匹配,则不再进一步检查;如果与“不想要的”正则表达式匹配,则认为它是恶意代码,并将其添加到防火墙阻止列表

Shell 环境变量

增加日志详细程度

LOG=debug cargo run

配置

如果默认路径中未找到配置,则将在本地创建“pff.conf”并使用默认配置。文件以 RON 格式存储。

安装详情

  1. Pff 假设 /etc/pf.conf 中包含类似这样的阻止列表
table <blocked> persist file "/etc/spammers"
block drop in quick from <blocked>
block drop out quick to <blocked>
  1. Pff 假设 /etc/spammers 可写且用户是 root。在 MacOS 上,sudo 用于以普通用户重新加载 PF。

许可证

  • BSD 许可下发布。

依赖关系

~9.5MB
~167K SLoC