noumenia/guardian-milter

多用途安全milter。

安装: 2

依赖: 0

建议者: 0

安全: 0

星星: 0

分支: 0

类型:项目

1.9 2024-02-08 12:17 UTC

This package is auto-updated.

Last update: 2024-09-28 13:46:04 UTC


README

                           _ _                             _ _ _
  __ _ _   _  __ _ _ __ __| (_) __ _ _ __        _ __ ___ (_) | |_ ___ _ __
 / _` | | | |/ _` | '__/ _` | |/ _` | '_ \ _____| '_ ` _ \| | | __/ _ \ '__|
| (_| | |_| | (_| | | | (_| | | (_| | | | |_____| | | | | | | | ||  __/ |
 \__, |\__,_|\__,_|_|  \__,_|_|\__,_|_| |_|     |_| |_| |_|_|_|\__\___|_|
 |___/

多用途安全milter。

Guardian-milter是一个Postfix/Sendmail milter,用于过滤各种类型的假冒、钓鱼和垃圾邮件。该milter执行精心设计的检查,并在SMTP对话期间使用通过/失败标题标记收到的邮件或拒绝它们。

功能

  • 添加Authentication-Results标题
  • 将失败的邮件复制到另一个电子邮件地址
  • 在SMTP对话期间拒绝失败的邮件
  • 删除From:标题中的名称部分
  • 将失败的邮件以JSON格式保存
  • 在连接(IP/主机名)上运行正则表达式
  • 在HELO/EHLO字符串上运行正则表达式
  • 在信封RCTP上运行正则表达式
  • 在From名称中检测域名
  • 在主题中检测域名
  • 检测假WeTransfer邮件
  • 检测假银行邮件
  • 检测假马士基邮件
  • 检测假LinkedIn邮件
  • 检测假路易威登邮件
  • 检测假DHL邮件
  • 检测假USPS邮件
  • 检测假香奈儿邮件
  • 检测假ELTA邮件
  • 检测假Facebook邮件
  • 检测假密码过期邮件
  • 拒绝具有已知问题文件扩展名的附件
  • AbuseIPDB集成
  • 基于IP置信度分数(AbuseIPDB)阻止邮件
  • 基于来源国家(AbuseIPDB)阻止邮件

要求

  • libMilterPHP
  • PHP 8.0, 8.1, 8.2, 8.3
  • iconv模块
  • posix模块
  • sockets模块

使用RPM包安装

您可以通过copr存储库安装guardian-milter,对于Alma/Rocky/Oracle Enterprise Linux和Fedora,只需使用

dnf copr enable mksanthi/noumenia
dnf install guardian-milter

使用Composer安装

您可以使用composer安装guardian-milter,要获取最新版本,请使用create-project命令,最后的点很重要,因为它告诉composer将文件保存到当前目录。

composer create-project noumenia/guardian-milter .

配置postfix以使用guardian-milter

编辑/etc/postfix/main.cf文件,添加或修改现有的smtpd_milters参数,使用guardian-milter的连接字符串。例如

smtpd_milters = inet:127.0.0.1:8895

如何使用

如果您通过RPM包安装,则已提供systemd服务,可以使用systemctl启动guardian-milter。默认情况下,guardian-milter将读取配置文件/etc/gu-milter.ini并在127.0.0.1端口8895上监听连接。

systemctl --now enable guardian-milter

如果您通过composer或手动安装,则gu-milter.ini文件将位于与guardian-milter可执行文件相同的目录中,可以使用--ini=...参数指定。以下是一系列命令行参数的完整列表

Usage: guardian-milter [OPTION]...

  -V,  --version             display version information only
  -h,  --help                display help about parameters
  -v,  --verbose             enable verbose output to stdout

  -u,  --user=[USER]         Effective user
  -g,  --group=[GROUP]       Effective group
  -p,  --pid=[FILE]          PID file
  -l,  --processlimit=[NUM]  Process limit
  -c,  --connection=[STRING] Connection string
  -a,  --autoload=[FILE]     LibMilterPHP autoloader (controller/common.inc.php)
  -i,  --ini=[FILE]          Configuration file (/etc/gu-milter.ini)

       --addHeader           Add Authentication-Results header with pass/fail information
       --reject              Reject failed emails
       --removeName          Remove From: header name part

 The connection string can be a UNIX socket or an IPv4/IPv6 address/port.
 UNIX Socket...: unix:/run/gu-milter/guardian-milter.sock
 Address/port..: inet:8895@127.0.0.1

相关项目