我安装了 Ubuntu 9.04 服务器,用于托管少量网站(目前为两个,以后将保持在个位数)。该服务器的电子邮件要求非常有限 - 发送外发电子邮件并将所有收到的电子邮件转发到另一台服务器(最有可能是 Google)上的邮箱。
我已经安装了 postfix,并且外发邮件运行正常。如何配置 Postfix 以转发所有传入邮件?如果我将其发送到 googlemail 地址,是否需要特别注意?最后,将基本垃圾邮件过滤功能纳入转发机制有多难?
答案1
这叫做“全部捕获”
映射是使用 /etc/postfix/virtual 文件完成的。
vi /etc/postfix/virtual
附加代码如下,用实际值替换域和电子邮件用户名:
@yourdomain.com emailusername
保存并关闭文件。运行以下命令:
postmap /etc/postfix/virtual
还要确保 /etc/postfix/main.cf 文件中有以下行:
virtual_alias_maps = hash:/etc/postfix/virtual
如果你刚刚添加了上面的行,则重新加载后缀:
service postfix reload
从http://www.cyberciti.biz/faq/howto-setup-postfix-catch-all-email-accounts/
答案2
你需要虚拟别名。 就像是:
virtual_alias_domains = foo.com, bar.com
virtual_alias_maps = hash:/etc/postfix/virtual
其中/etc/postfix/virtual
包含:
@foo.com [email protected]
@bar.com [email protected]
运行postmap /etc/postfix/virtual
以从映射文件创建数据库并postfix reload
重新读取配置。虚拟表非常灵活 - 您可以匹配特定地址或整个域并将邮件转发到多个地址。
注意:不是列出额外的域名$mydestination
!请参阅文档了解更多详细信息。
发送到 GMail 地址时,我想不出有什么特别的注意事项。一个可选的巧妙技巧是将每个域的邮件发送到单独的地址,并让 GMail 自动对其进行相应的标记。转发邮件到foo.com
和[email protected]
到bar.com
相应[email protected]
的过滤器。请参阅此GMail 博客文章了解更多信息。
我还没有尝试过,但过滤垃圾邮件的一种方法就是使用 SpamAssassin。在 Google 上搜索一下,可以找到不少看似方便的指南。
答案3
使用“always_bcc =”不是更简单吗?[电子邮件保护]' 在 main.cf 中?Denes
答案4
使用时请注意虚拟别名或邮件转发时,Postfix 倾向于保留原始邮件中的信封发件人。这会给 Gmail 和其他使用 SPF 的邮件带来问题:
Received-SPF: softfail (google.com: domain of transitioning ***@***.com does not
designate *** as permitted sender);
我还没有找到任何好的解决办法,但是这里有一个解决办法:
创建一个新文件
/etc/postfix/sender_canonical
:/.*/ postmaster
postmap /etc/postfix/sender_canonical
添加几行
/etc/postfix/main.cf
:sender_canonical_classes = envelope_sender sender_canonical_maps = regexp:/etc/postfix/sender_canonical
service postfix reload
从外部来源发送电子邮件并验证其
Return-Path
包含您的postmaster@***
地址
警告:这替换所有邮件的信封发件人经过您的服务器,这可能会产生意想不到的副作用。From
但是,邮件标题不应因此被修改,因此发件人地址仍应正确显示。