![Postfix:如何根据收到的消息的频率触发 body_check?](https://linux22.com/image/771600/Postfix%EF%BC%9A%E5%A6%82%E4%BD%95%E6%A0%B9%E6%8D%AE%E6%94%B6%E5%88%B0%E7%9A%84%E6%B6%88%E6%81%AF%E7%9A%84%E9%A2%91%E7%8E%87%E8%A7%A6%E5%8F%91%20body_check%EF%BC%9F.png)
我们有一个商业的、闭源的、重要的服务器设备,其基本的电子邮件通知机制有很多不足之处。Postfix 作为内部中继器做得很好,可以将服务器的电子邮件通知转发给我们的员工 (gmail)。
有时,根据发生的事件,服务器可能会生成数百条相同的通知 - 我在 15 分钟内看到过 800 封相同的电子邮件。当然,这是一个很大的麻烦,我怀疑 Gmail 对此也不太高兴;我想使用 Postfix 来智能地过滤这些情况。
这不是您通常的“防范垃圾邮件发送者”的情况。常见的速率限制器 smtpd_error_sleep_time 和 smtpd_soft_error_limit 可处理错误的客户端。
如何设置一个根据传入消息的频率触发 body_check 的过滤器?
我认为有几种方法可以解决此问题:
- 如果在过去 X 秒内发送了相同的正文消息,则丢弃(丢弃?)该消息。
- 比较所有消息并根据相同正文进行合并
- 将相同的消息合并为摘要(每封电子邮件只有 4 行,我宁愿收到 8 封电子邮件,每封 400 行,而不是 800 封 4 行电子邮件。)
但是我是 Postfix 新手,考虑到此功能和优先级,我会选择简单、直接的解决方案。例如,部署“真实内容过滤程序”来进行高强度的队列后检查似乎有点过头了。希望内置的内容检查流程能够满足要求。