你们能否分享一些关于 Postfix 防病毒/反垃圾邮件的想法/经验?
- 您的系统使用了什么防病毒和反垃圾邮件组合?
- 这背后有什么特别的原因吗?
- 选择防病毒和反垃圾邮件软件时应考虑哪些显著功能?
- 其他的
我需要设置一个 MX 服务器,我们为大约 70 个域提供服务,每个域的用户数从几百到 35000 不等。我们的想法是设置数十个 MX 服务器,仅用于接收电子邮件,执行所有反垃圾邮件/病毒/rbl 等检查,然后将它们路由回域 SMTP。
希望您能给我一点启发。
TQVM 伙计们。
答案1
我自己更喜欢使用 DSPAM(实现起来有点复杂,但值得),而且我发现它的资源使用率非常低(用 C 语言编写),而且与 spamassassin 等千篇一律的过滤系统相比,我更喜欢统计方法。DSPAM 内置了对 ClamAV 的支持。
但正确使用内置后缀限制确实是最好的第一道防线。
我决定跳过灰名单(过去使用过 postgrey),因为它要求你保留一份行为不当的服务器白名单(或信任其数据库)。出于这个原因,我还决定不使用 rejection_unknown_helo,因为它要求你保留一份不按应有方式行事的服务器白名单(根据 RFC)。
如果您喜欢手动白名单,那么这两种方法可以大大减少垃圾邮件(在垃圾邮件进入服务器排队之前,可以捕获 80% 以上的垃圾邮件,几乎没有错误),这是一个很大的好处。缺点是,您需要在发现行为不当(但合法)的服务器后立即关注日志和白名单,否则您的用户可能会抱怨。
实施 SMTP AUTH(我认为最容易通过使用 dovecot auth 提供程序)有助于确保正确处理提交(与严格的智能主机(mynetworks)列表/策略一起)。
我的建议是,在设置 postfix 时要有一个明确的计划,明确你想要实现的目标(弄清楚你想要本地还是虚拟传送,什么类型的防病毒/垃圾邮件系统以及如何进行传送+过滤)。
从空的 main.cf 开始,使用 postconf(完成当前配置)/ postconf -n(仅非默认)/ postconf -d(仅默认)逐步从默认配置构建配置,直到获得所需的配置。发行版通常带有默认配置,这些默认配置反映了发行商对邮件系统的想法,并且并不总是反映您的观点、意见和政策(它们可能有所不同)。请记住在没有用户的系统上执行所有这些操作,以便您可以安心地进行实验。
我能够使用 Ubuntu 9.04 服务器上的预编译包(甚至 dspam)实现所有这些,因此不需要大量编译,只需在配置时保持耐心。
答案2
我 3-4 年前就放弃使用防病毒/反垃圾邮件解决方案了(那时我使用的是 amavisd+clamav+spamassasin,这确实很耗资源)
我现在采取的唯一反垃圾邮件措施(并且通常效果很好,尽管添加上述组合会减少设法进入收件箱的垃圾邮件数量)按检查顺序如下:
- reject_invalid_hostname
- greylisting
- spf checks
- rbl checks (spamhaus, abuseat, dsbl, sorbs, njabl)
- reject_rhsbl_sender dsn.rfc-ignorant.org
一些检查发件人访问权限的自定义规则
这是阻止垃圾邮件和避免使用大量 CPU+RAM 之间的折衷方案;但是,我计划使用一两台机器来扫描邮件 - clamav+spamassassin
对于您的第 3 点 - 如果您正在考虑商业产品,我猜价格是主要原因(每个域名、每个邮箱等)
答案3
我负责为一家拥有大约 180 个域名和大约 5000 个电子邮件帐户的 ISP 管理邮件(以及其他事务)。因此,我们的客户需要出色的垃圾邮件过滤功能,并且真心希望我们不使用诸如拒绝所有来自俄罗斯的邮件或类似的垃圾邮件等粗暴方法。
我们当前的邮件服务器是 Qmail,该机器上有 clamav 过滤病毒,另一台机器(双 Xeon CPU,1.5 GB RAM)只运行 Spamassassin。但这一切都要等到一个特殊的 Qmail 插件根据 bl.spamcop.net 和 Spamhaus 的 XBL 检查 IP 后才会发生。
这会过滤掉发送到我们服务器的大约 95% 的电子邮件。
但是,我不推荐这种方法。Qmail 实在太过时了,无法完成这项任务。消除反向散射需要笨拙的黑客手段,需要太多的人工干预,它不进行灰名单处理,并且对传入邮件和转发邮件的 SPF 处理非常糟糕。
我几乎完成了运行 Exim 的新 Debian 服务器的构建,该服务器会检查 SPF 记录、进行灰名单、检查实时黑名单,并且传入 SMTP 服务器会使用与 Dovecot 用于验证用户身份的相同 MySQL 数据库来验证电子邮件帐户的存在。然后,当它完成所有这些操作后,它会使用 Spamassassin 这个资源占用大户来检查邮件。当您使用该过滤器时,减少进入该过滤器的邮件数量非常重要。启发式方法提供了高级别的粒度,但它不应该是您的第一道防线。
答案4
我使用 postfix + amavis + spamassassin + clamav 。这是在我的系统中效果更好的解决方案。对于大型安装,最好将 amavis 与 postfix 分开放在另一台服务器上。
这种解决方案需要大量的持续努力和调整,以避免性能问题并获得阻止垃圾邮件和病毒的最佳效果。但最终我非常满意。
另外正如 petre 所说,您需要在 postfix 和 dns 中自定义规则来改进解决方案。