我想使用与本地帐户相同的域向外部 Office 365 帐户发送邮件。
当我尝试向外部的该地址发送邮件时,Postfix 会拒绝该邮件,并显示错误“帐户不可用”。因此,如果该帐户不在本地,我希望 Postfix 将邮件发送到同一域的外部帐户。
例如我有两个电子邮件地址[email protected]
和[email protected]
。
[email protected]
存在于本地服务器中[email protected]
是 Office 365 外部邮件服务器上的帐户。
现在,我想[email protected]
从任何本地帐户向 Postfix 发送邮件。域也example.com
已添加relay_domains
,但 Postfix 仍然拒绝邮件并显示错误“收件人不存在”。
答案1
由于您已经在或example.com
中配置了本地域,因此您无法通过将其添加到来实现这一点。mydestination
virtual_alias_domains
relay_domains
相反,你应该添加一个运输(5)可以覆盖由等transport:nexthop
使用的默认定义的传送规则的地图mydestination
。virtual_alias_domains
描述
可选 运输(5) 表指定从电子邮件地址到消息传递传输和下一跳目的地的映射。文件中定义了消息传递传输(例如本地或 smtp)
master.cf
,下一跳目的地通常是主机或域名。该表由以下项搜索:简单重写(8)守护进程。此映射覆盖了
transport:nexthop
Postfix 内置的默认选择。
添加运输地图至您的/etc/postfix/main.cf
:
transport_maps = hash:/etc/postfix/transport
然后添加到/etc/postfix/transport
:
[email protected] smtp:example-com.mail.protection.outlook.com
@example.com :
* :
(请记住,postmap /etc/postfix/transport
当您使用hash
Berkeley DB查找表。
这将对所有@example.com
其他内容使用默认传输规则(*
),其他传送配置保持不变,但[email protected]
通过 SMTP 将所有电子邮件转发到 Office 365:默认模式Office 365 MX 记录对于公司来说<domain>.mail.protection.outlook.com.
使用transport_maps
是一种全局解决方案,可与任何外部 SMTP 服务器配合使用。在特定情况下,a) 外部帐户位于 Office 365 上,b) 域配置在 Postfix 上,virtual_alias_domains
也可以添加虚拟别名,将所有邮件重定向到 Office 365 用户的初始域(承租人)地址,。[email protected] [email protected]
答案2
我无法评论,但对于 Google Suite/Workspace,URL 是aspmx.l.google.com
,它允许不受限制/未经授权的传输。
看:https://support.google.com/a/answer/176600?hl=en#zippy=%2Cuse-the-restricted-gmail-smtp-server