从 Postfix/Dovecot 迁移到 Exchange

从 Postfix/Dovecot 迁移到 Exchange

我工作的地方目前在 CentOS 6 上使用 Postfix/Dovecot 来处理邮件。我们将来会迁移到 Windows Server 2012 上的 Exchange 2013。我负责这项任务,我(显然)希望迁移尽可能顺利。

问题是,关于此类迁移的文档似乎不多。至少,Exchange 2013 上没有。话虽如此,我有几个问题。

我想将我们当前的邮件服务器保留为中继主机,因为它上面有一个我们喜欢的垃圾邮件过滤器。据我所知,如果我想实现这一点,我所需要做的就是将以下行添加到我的 main.cf 中:

relayhost = ExchangeServer.domain.com  

然后在 Exchange 中将邮件服务器添加为受信任的服务器。这样对吗?

我的另一个问题是:有没有办法保留所有用户的电子邮件?根据我的研究,在 Exchange 2003 和 2007 中是可行的。但如果不购买企业解决方案,似乎无法直接在 Exchange 2013 中实现,而我想避免这种情况。
我从发布 imapsync 可能是一个可行的选择。但是,我的理解是该工具不适用于 exchange(而且它是一种付费解决方案)。

任何帮助都将受到赞赏。

答案1

main.cf列出您的 Exchange 服务器 relayhost几乎就足够了:由于 Postfix 处理地址类别relayhost,当 Postfix 认为它是收到邮件的最终目的地时(即收件人域在内mydestinationvirtual_mailbox_domains等等),将永远不会使用。

因此,您需要做的实际上是将有问题的域移动到relay_domains(如果您transport_maps为其指定了非标准传输,也请删除此条目)。

这只给您留下一个问题:验证收件人是否确实存在于 Exchange 服务器上。如果您可以查询 AD/LDAP,则没有问题,只需设置relay_recipient_maps。如果不行,您将需要使用收件人验证。假设 example.com 的邮件应转发到 Exchange 服务器:

smtpd_restriction_classes = relay_verification
relay_verification = check_unverified_recipient
# if Postfix > 2.10, you can also do this in smtpd_relay_restrictions
smtpd_recipient_restrictions =
  ...
  check_recipient_access hash:/etc/postfix/relay_verification
  ...

并且/etc/postfix/relay_verification

example.com  relay_verification

对于问题的第二部分,请坚持使用 imapsync 或类似工具。

相关内容