![将所有收到的邮件重定向至另一个用户](https://linux22.com/image/487626/%E5%B0%86%E6%89%80%E6%9C%89%E6%94%B6%E5%88%B0%E7%9A%84%E9%82%AE%E4%BB%B6%E9%87%8D%E5%AE%9A%E5%90%91%E8%87%B3%E5%8F%A6%E4%B8%80%E4%B8%AA%E7%94%A8%E6%88%B7.png)
最好使用现有 Linux 机器上的邮件服务器的虚拟实例来完成此操作,但我愿意运行整个其他安装(Linux 或 Windows)以使其正常工作。
基本上,我们使用的系统会在我们执行某些操作时向客户生成电子邮件。在测试设置中,我们会定期将完整的实时快照导入测试报告等。问题是,这可能会导致我们向客户发送错误的电子邮件。
我的目标是在服务器上指定一个不同的邮件服务器,该服务器将接受所有邮件,然后将其重定向回开发团队。我能想到的最好的办法是为每个客户的每个域创建全能地址转发。但一定有更好的选择吗?
机器将不是面向互联网,因此不存在垃圾邮件风险。
编辑:有多个客户地址域。任何万能解决方案都不需要特定于域。发件人字段也因登录的用户或系统部分而异。我们还需要查看电子邮件,这就是它们被重定向的原因。
答案1
正如 towo 指出的那样,地址重写是一种方法。Exim 也为此提供了一个很好的框架:
http://www.exim.org/exim-html-3.30/doc/html/spec_34.html
顺便说一句,你想要的通常被称为“catchall”地址。这可能有助于在 Google 上搜索你选择的邮件服务器的配置。
您还可以考虑修改测试系统,将邮件转储到文件中,而不是发送。这样就避免了使用专门的“测试”邮件服务器来处理所有事情的麻烦;而且,您还可以轻松地自动解析文件,以决定测试是否成功。当然,更改测试系统可能不是一个选择……
答案2
大多数邮件服务器支持根据输入邮件的某些指标重写地址或更改投递方式。您可以使用本地用户重写所有外发地址,或者只是更改投递方式以将其毫不留情地转储到文件中。
例如,如果你使用 postfix,则有一个相当详尽的文档可用,即使它没有具体列出您的案例。
答案3
想想看,您的应用程序的测试设置将具有与生产设置不同的 IP,对吗?
您能否设置现有的邮件服务器,以便将来自 IP xyz 的所有电子邮件重定向到用户 abc?
这样,您就可以保持测试应用程序完全相同,只需更改邮件服务器即可。
答案4
我建议使用筛满足您的需求,因为它不与特定 MTA 绑定。我们广泛使用它来为自己和客户进行过滤/阻止。