我是一家小型 ISP 的系统管理员,我们有自己的邮件服务器(qmail,真是个该死的东西),总共为大约 300 个域和 5000 个用户提供邮件服务。它的磁盘空间快用完了,我们必须更换硬件来扩大它。
因此,我基于 Exim 构建了一个新邮件服务器,它使用 Dovecot 进行 POP/IMAP,并进行了修改,在 Dovecot 端和 Exim 端都使用 MySQL 进行用户身份验证(接收邮件时在接受邮件进行投递之前验证帐户是否存在)。这一切都基于以下 HOWTO:结构,在解决了所有问题之后,一切都进展顺利,直到我看到用户需要能够管理自己的帐户的部分,或者至少是喜欢频繁创建/删除帐户的域名托管客户。
Vexim 基本上是一个死项目,所以我避免使用它。有人推荐Postfix管理员。
现在,虽然它几乎可以正常工作,但它缺少一个破坏我现有设置的重要功能:用户定义的垃圾邮件分数,存储在用户帐户的 MySQL 数据库中。同样重要的是,整个系统的设计似乎需要围绕 Postfixadmin 构建,而不是将 Postfixadmin 放在首位。我只是把整个系统设计得倒过来了。
我一直在做这个项目,现在我只想放弃一切,买一些可以让邮件服务器按照我们需要的方式正常工作的软件。我也不打算在接下来的一个月或六个月内开发一个新版本的 Postfixadmin(以我的设计和编程技能,虽然技能很差),甚至不打算修改当前的版本。
有办法摆脱这种情况吗?
答案1
有一个开源 isp 工具,可能就是您所需要的。
但我认为你必须从头开始构建你的系统,因为这个软件只支持 sendmail 或 postfix。另一个问题是,你为什么选择 exim 并想要使用 postfixadmin。我不了解这个软件,但我猜它是为 postfix 设计的 :)
这个问题的另一种观点如下。这些管理界面在某种程度上是极其指定的。不是你使用它们的方式,而是它们需要如何集成到你的环境中。在如何设置邮件服务器和管理方面有很多不同的场景,这些系统需要一个非常非常具体的环境来适应它们。我想说,找到一个能 100% 满足你需求的解决方案几乎是不可能的。反过来说,我敢打赌你也找不到任何 100% 适合的商业解决方案。:)
我不了解 exim,所以我很难说清如何让用户定义的垃圾邮件之类的东西工作,但我知道 postfix,我敢打赌,您可以自定义 Postfix 以适应您的情况。我个人使用 sendmail 和 postfix,直接比较一下,postfix 比 sendmail 灵活得多(在其当前版本中)。因此,再次澄清这一点,我不了解 qmail 和 exim,也许这两个邮件服务器是极好的 smtp 服务器,但我猜如果您需要专门的设置,它们不如 postfix 灵活。而且在大多数情况下,有简单的方法可以解决复杂的场景或需求。
也许这篇文章会给我带来一些负面评价,但我从来没有遇到过无法通过 postfix 解决的问题。我的意思是,你可以构建基于正则表达式的哈希映射,这有多酷啊 :)
我祝您好运,找到解决方案,希望我能提供一点帮助,澄清一些事情并向您展示另一种观点。
答案2
我认为对 qmail 的厌恶有点不合理,它是一款非常安全的处理大量邮件的优秀软件包。在几乎所有情况下,我都更喜欢它而不是 Exim。话虽如此,既然您已经选择了一条特定的道路并投入了大量精力,为什么不直接聘请开发人员来解决您需要的功能请求呢?您说这归结为一个功能,这听起来并不复杂。
如果您已经拥有一种根据数据库中的表格对用户进行身份验证的机制,并且您有一种方法将垃圾邮件过滤器与这些用户关联起来,那么前端似乎相对简单。现在是时候退一步来看看替代方案与一些定制开发相比的成本是多少,我认为您会发现不到 40 小时就可能让您解决问题,让您处于比完全重做所有事情更有利的地位,而且更具成本效益。
也可以公平地说,可能没有任何特定的解决方案可以 100% 满足您的需求,而且在已完成的工作中肯定不存在。有句老话说,当您是锤子时,所有东西看起来都像钉子,作为系统人员,您可能看不到阻力最小的路径,因为您是在自己的技能和知识范围内工作。超越这一点,找出您的其他选择。如果您不顾这个建议最终进行了彻底的重新设计,请看看 Cyrus Imap,因为它在一些最大的 ISP 和大学环境中得到有效使用,并且与传统的 exim/postfix/qmail db 支持设置相比,具有巨大的可扩展性和其他优势。祝你好运。
答案3
ISPmail 教程适合您:http://workaround.org/ispmail
答案4
我认为 Postfixadmin 不是寻找用户级垃圾邮件评分管理工具的正确地方。看看 Maia Mailguard 来管理垃圾邮件评分/白名单/洗狗,让 postfixadmin 去做管理用户存在性这个更温和的工作。