我正在使用 Ubuntu 12.04,并将 postfix 配置为卫星系统,将外发邮件中继到 Gmail。举例来说,我的注册域名是 example.com 我希望 root cronjobs 的错误输出被邮寄到我的真实域名[电子邮件受保护]收件箱。我的这个继电器工作正常。
但这些 root cronjobs 默认设置为通过电子邮件发送至[电子邮件受保护]这不是真实的电子邮件地址。我的/etc/aliases
:
root: [email protected]
example.com 没有列在 postfix 的 main.cf 中,mydestination
因此 postfix 不认为该邮件是本地的。它绕过处理/etc/aliases
并尝试发送到[电子邮件受保护]。
解决方法是MAILTO=david
在每个 cron 文件的顶部添加。但有很多。另一个解决方法是设置[电子邮件受保护]作为转发到的真实收件箱[电子邮件受保护]。有没有更好的办法?即,有没有一种方法可以中继具有本地域但仍然处理其收件人的电子邮件/etc/aliases
?
答案1
在我看来,后缀myorigin
值设置为example.com
。在 Debian 上(对于 Ubuntu 不是 100% 确定),默认情况下在/etc/mailname
.
准备消息时, 的值myorigin
用作域部分。这应该设置为 中的内容mydestination
。
如果这些设置正确,那么您将从配置的别名中获得您期望的行为。
答案2
您必须定义一个relayhost
- 在您的情况下可能是 Gmail SMTP 服务器。
这relayhost
将获取任何不被视为本地的邮件(而不是尝试直接联系每个域的邮件中继)。