我是否应该将我的 Postfix 仅发送服务器设置为作为子域发送?

我是否应该将我的 Postfix 仅发送服务器设置为作为子域发送?

设想:

  • 我拥有域名 example.com。
  • 我已注册电子邮件提供商,并将我的帐户配置为 *@example.com 的通用邮箱。我使用电子邮件[电子邮件保护]
  • 我有一个运行 Ubuntu 18.04 的 VPS,它将托管 example.com。
  • 在 VPS 上,我有一个名为 dude 的用户。

我想要:

  • 将 Postfix 配置为仅发送 SMTP 服务器,以便能够以以下方式发送电子邮件:[电子邮件保护]. 灵感来自本指南
  • 具体来说,我希望一些系统、日志或应用程序消息能够发送给我[电子邮件保护]并在我的外部电子邮件提供商处接收它们(我意识到这可能有点奇怪,因为我的 VPS 用户也是 dume)。

在我这个新手看来,这似乎是一个非常常见的设置。

长话短说,当我向 root 或 postmaster ( echo test | mail -s testsubject postmaster) 发送一些测试电子邮件时,它并没有像预期的那样工作。我想我对如何修复它有一些想法,但它让我认为我可能会陷入困境并犯下错误的设置。

所以我有一些更普遍的问题:

  • 我是否应该完全放弃用户=伙计和电子邮件=[电子邮件保护]设置?这会让我将来遇到更多疯狂的问题吗?
  • 我的服务器以子域名发送是否更好?例如[电子邮件保护]
  • 如果以上答案为“否”,那么:这种设置是否仅通过 /etc/aliases 中的别名和其他配置选项即可完成,还是我需要使用虚拟别名映射?这可能是我的问题中最注重细节的,所以我实际上只是在泛泛地问。

我很感激大家能给出的任何建议。我已阅读了指南上的所有评论,查看了这里提出的许多问题,并在两台电脑上打开了数十个标签,试图解决此问题!

编辑:这是我最终得出的相关设置的总结,我认为这些设置介于“适合我”和“我可以根据需要修改我的方法,而不会弄乱我的想法”之间。下面有三个文件,第一个文件只是摘录(因此省略)。我的理解是/etc/aliases永远不会使用(因为example.com$myhostname$mydomain不在中mydestination),但我还是把它包括进去了,因为它是我测试的一部分,而且拥有它似乎是一种很好的做法。

/etc/postfix/main.cf

...
myorigin = example.com
myhostname = example.com
mydomain = $myhostname
mydestination = localhost.$mydomain, localhost
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
virtual_alias_maps = hash:/etc/postfix/virtual
...

/etc/aliases
postmaster root
root dude

/etc/postfix/virtual
postmaster root
root dude

答案1

可以@example.com使用记录中列出的服务器发送和接收邮件MX。关键部分是mydestination(和virtual_alias_domains/ _maps) 不应包括example.com本地投递。这样,您dude@localhost将没有地址[email protected],邮件就像使用任何其他域一样投递。

请记住在您的 SPF 记录中允许此服务器example.com

相关内容