Tho*_*rin 6 spam spamassassin exim
在过去的几个月里,我收到的垃圾邮件数量让我发疯。尽管在我的Exim4邮件服务器上运行SpamAssassin(带有 RBL 检查),但其中很多已经找到了进入我们邮箱的途径。
我注意到,绝大多数罪犯在RBLs的结束,而只是以后它已经被扫描,发现无害。通常,这些邮件的垃圾邮件分数为0.0 - 1.1当我收到他们,而一段时间后,比分会是多少高。
我进行了一些搜索,但找不到任何看起来可用的东西,所以我拼凑了一个小程序,它可以检查我邮箱中最近的邮件,并让 SpamAssassin 重新分析它们。结果令人震惊:几乎所有最终进入我邮箱的邮件在投递后 5 到 10 分钟都通过了 5.0 阈值。有时它需要比这更长的时间,但到目前为止,它最终总会通过阈值。
现在,当您真正主动阅读邮箱时,这并不是那么有用,但它会显着减少我们在早上第一次检查电子邮件时手动删除这些邮件的时间。
现在,问题是我制作的程序单独运行,它使用 IMAP 连接到特定邮箱并进行更改。这使我很难为其他用户使用此解决方案,因为我必须拥有他们的密码。
是否有任何现有工具可以让我重新处理已收到的邮件?如果重要的话,我在磁盘上使用Maildir格式。如果不存在这样的工具,直接访问和修改 Maildir 邮箱的库也可能会起作用。
我不想延迟发送电子邮件(通过灰名单或其他方式),因为这种延迟必须至少 10 分钟才能生效,这在工作时间是令人望而却步的。
这确实是一个非常好的技术,特别是在对抗雪鞋垃圾邮件时,雪鞋是一种垃圾邮件,整个电子邮件群在几分钟内就会被发送出去。这是因为反垃圾邮件服务器需要花费很长时间来处理到达的任何内容,然后提取垃圾邮件定义。
我不知道有什么现成的软件可以在本地执行此操作,但IMAP Spam Begone可能会满足您的需求。它通过 IMAP(标准邮件客户端的方式)连接到您的邮箱服务器,并运行 SpamAssassin 来为您清理它。
如果您想要在本地运行的东西,您可能可以围绕 SpamAssassin 编写一个简单的包装器来执行此操作。Maildir 将每条消息存储在自己的文件中,因此类似这样的内容应该是不错的:
sa-bootstrap.sh的内容:
#!/bin/sh
for email in "$@"; do
if ! spamassassin -e < "$email" > /dev/null 2>&1; then
mv "$email" /full/path/to/spam/folder
fi
done
Run Code Online (Sandbox Code Playgroud)
现在你可以运行:
find /path/to/maildir -type f -print0 |xargs -0 sa-bootstrap.sh
Run Code Online (Sandbox Code Playgroud)
在删除垃圾邮件和火腿邮件之前,请不要忘记验证您的垃圾邮件并sa-learn对其进行使用。
(spamassassin -e当给定的邮件被确定为垃圾邮件时,将退出并显示非零错误代码。)
| 归档时间: |
|
| 查看次数: |
2921 次 |
| 最近记录: |