使用Postfix发送邮件到不同的域名 – 在同一台服务器上托pipe的所有域名 – 外部电子邮件托pipe

我有一个服务器托pipe几个域 – 一个主域和几个别名域。

main.com alias1.com alias2.com 

我使用域名注册的(Gandi.net)电子邮件服务的主要域名。 我想所有的电子邮件到别名域被转发到主要的电子邮件服务。 我认为这只是将它们转发到@ main.com

我正在努力与Postfix(也许DNS?)设置。

DNS

 main mx records fb.mail.gandi.net <-- Gandi's settings - I'm sure they're correct spool.mail.gandi.net alias1 mx records mail.alias1.com alias2 mx records mail.alias2.com 

所有域都有一个A / AAAAlogging,用于指向服务器IP地址的邮件[domain] .com。

我也有一个第四域(superdomain.com),我用它作为服务器的主机名。 它的DNSlogging与main.com相同。

从Postfix使用这个页面 – http://www.postfix.org/VIRTUAL_README.html – 它看起来像我可以使用虚拟别名域

main.cf设置

 myhostname = mail.superdomain.com mydestination = pluto.superdomain.com localhost.superdomain.com localhost $myhostname localhost.$mydomain virtual_alias_domains = alias1.com alias2.com virtual_alias_maps = hash:/etc/postfix/virtual relay_domains = main.com 

虚拟文件内容

 @alias1.com @main.com @alias2.com @main.com 

设置可能看起来有点奇怪。 到目前为止,我已经尝试了很多组合。 虚拟文件的结构来自于如何在Postfix中将所有邮件从一个域redirect到另一个域? [serverfault.com]

基于从testing邮件反弹回来 – 我似乎得到“连接拒绝”的结果。

任何想法或提示?

这是一个防火墙(iptables)的问题! 在某些时候,我改变了防火墙,完全忘了:-P

对于那些未来可能会有所帮助的人来说,这样做的最终configuration是:

 main mx records fb.mail.gandi.net spool.mail.gandi.net alias1 mx records mail.superdomain.com alias2 mx records mail.superdomain.com 

main.cf设置

 myhostname = mail.superdomain.com mydomain = superdomain.com mydestination = pluto.superdomain.com, localhost.superdomain.com, localhost virtual_alias_domains = alias1.com alias2.com 

虚拟文件内容

 @alias1.com @main.com @alias2.com @main.com 

额外的防火墙/ iptables规则

 -A INPUT -p tcp -m tcp --dport 25 -j ACCEPT 

这些设置的要点是:

  • mx邮件logging告诉互联网上的邮件服务器(不是你的)他们应该发送邮件到哪个IP地址。 每个域都有一个Alogging,用于parsing为服务器IP地址的邮件域[.com] .com。 我认为它可能已经留下mail.alias [x] .com,但它似乎整洁mail.superdomain.com作为超级域概念上是邮件服务器域。
  • mydestination指定了postfix可以在这个服务器上传递哪些域名 – 也就是本地的
  • virtual_alias_domains指定Postfix允许将邮件转发(别名)到哪里