随着Google Apps不再适用于小型企业/团队,我将MXlogging指向我的应用程序服务器。 我仍然希望通过发送到与上述MXlogging关联的域的Gmail地址接收电子邮件。
我已经看过安装sendmail和configuration/etc/mail/virtusertable来包含类似的东西
@mydomain [email protected]
我也看过安装postfix和修改/etc/aliases
admin: [email protected] team: [email protected] ...
无论如何,当我发送邮件到[email protected] ,邮件似乎永远不会到达我的应用程序服务器(例如, /var/log/maillog显示没有添加任何内容),并且绝对不会将其重新发送到我的Gmail帐户。
我罚款废除postfix和/或sendmail的另一种select; 我只是想接受我的应用程序服务器上的电子邮件,它只是将所述电子邮件转发到Gmail帐户。 我不需要/需要服务器上的任何真正的电子邮件帐户,这是服务器上唯一的域名。
使用sendmail,你需要在/etc/mail/sendmail.mc末尾添加这样的内容:
LOCAL_CONFIG Kuser user -m -a.FOUND LOCAL_RULE_0 R$- < @ $=w . > $* $: $(user $1 $) < @ $2 . > $3 R$- . FOUND < @ $=w . > $* $@ username < @ gmail.com. > $3
这将转发任何电子邮件到系统的用户(列在/etc/passwd )到您的[email protected]。 请记住,规则的左侧与规则的右侧分开,而不是空格。 所以不要复制粘贴,而是input上面的规则。 之后,您需要运行/etc/mail/make来构buildsendmail.cf和service sendmail restart ,以便进行更改。
对于初学者来说,你需要在你的服务器上安装postfix或sendmail,这是一个非常痛苦的事情。 一旦你启动并运行,在Postfix中继邮件是一个简单的过程。
http://www.howtoforge.com/how-to-relay-email-on-a-postfix-server
我实际上正在运行一个后期/ dovecot服务器,正在做你所需要的。
如果在你的postfix日志中没有任何东西出现,它看起来像你的服务器没有得到传入的连接,因为它不觉得你想发送邮件的域负责。
虚拟用户和域表是一个好的开始,但要确保postfix感觉负责添加域到“mydestination”像这样:
mydestination = localhost, mydomain.tld, mail.mydomain.tld
不要忘记先哈希它:
postmap /etc/postfix/virtusertable
在别名映射中包含您的virtusertable:
virtual_alias_maps = hash:/etc/postfix/virtusertable
最后但并非最不重要的,检查后缀实际上是获取请求
dig mydomain.tld MX
和你的域名,并检查MXlogging,他们指向后缀服务器。 如果您今天刚刚更改了/ MX DNS条目,则可能最多需要24小时才能使更改显示,因为您的DNS的DNScaching,您的提供商DNS或发送邮件到mydomain.tld的服务器的其他DNS服务器
使用sendmail,你可以在/etc/mail/sendmail.mc中添加这样的内容:
define(`LUSER_RELAY',`error:550 User unknown') define(`MAIL_HUB',`esmtp:[email protected]')
它应该在(LUSER_RELAY)之后拒绝未知本地用户的邮件,并将邮件发送到剩余的本地电子邮件地址到[email protected](MAIL_HUB)。 它是在别名扩展和〜/ .forward文件处理之后应用的。
警告:
FEATURE(stickyhost) R线基础的解决scheme。