【发布时间】:2016-09-16 16:30:58
【问题描述】:
我想将 root 的所有邮件(基本上是所有 cron 作业的输出,但也包括 root 的其他邮件)转发到外部电子邮件地址 (hotmail)。
最简单的方法是使用别名文件。我更新了根别名: 根:mymail@hotmail.com 并运行新别名。
发送电子邮件后,我看到 hotmail MX 服务器“接受”了我的邮件。通过默默无闻的标准 MS 安全性让我认为它正在默默地丢弃我的电子邮件(不是垃圾邮件,......)。
此服务器用于为一个域(以及未来更多域)发送/接收邮件。
我检查了日志,似乎邮件是通过以下字段发送的:root@mail.domain.com
我很确定这是我的 hotmail 中从未收到的邮件的根目录。 现有的电子邮件地址使用 user@domain.com 作为 from。
现在我想从地址/ctladdr 重写这个(邮件)。 我认为这将是使用 genericstable 轻松解决的问题。
Genericstable(多次尝试):
root info@domain.com
root@localhost info@domain.com
root@mail.domain.com info@domain.com
使用 makemap 重新生成数据库。 我尝试了不同的设置。
我还删除了 EXPOSED_USER 根目录(从通用 m4 文件中)。我可以看到它不在生成的 cf 文件中。
我还为受信任的用户添加了 root。
在我的 m4 文件中:
FEATURE(genericstable)dnl
GENERICS_DOMAIN(domain.com)dnl
dnl GENERICS_DOMAIN(mail.domain.com)dnl
dnl GENERICS_DOMAIN_FILE(`/etc/mail/generics-domains')dnl
FEATURE(masquerade_envelope)dnl
dnl define(`LOCAL_RELAY', `localhost')dnl
我也有一个提交 mc 文件。不确定这是否重要,但我不这么认为。 (据我所知,我没有在 MSP 模式下运行 sendmail)。
我已经尝试将 GENERICS_DOMAIN 作为我想要的域或我想要重写的域。
全部安装 并重新启动 sendmail。
它似乎仍然以 root@mail.domain.com 的身份出现
我尝试在地址测试模式下使用 sendmail(bt;tryflags hs 并尝试 esmtp root)。这会正确修改为所需的源地址:info@domain.com。
任何人有其他想法为什么这不起作用?还是更多的调试方式? 我需要 local_relay 来完成这项工作吗? hosts 文件中应该包含什么内容? 127.0.0.1 的 Fqdn(mail.domain.com) 和主机名(so mail)?
编辑:我可能应该提到我有一个 MailScanner 的传入队列。
提前非常感谢!
【问题讨论】: