我有一个域,我们称之为 foobar.com。foobar.com 的所有 MX 记录都指向 Google 的邮件服务器,因为我正在为您的域使用 Google Apps来管理它。这很棒,因为每个人都可以获得 GMail 的所有优势,但我们的电子邮件地址不是@gmail.com。
我也有服务器。首先,它是一个 Web 服务器,但它也提供其他服务。它提供的服务之一是 foobar.com 的网站以及各种虚拟主机的网站,例如 shop.foobar.com 和 forum.foobar.com。服务器运行的是 Ubuntu 8.04,因为我喜欢在生产中使用 LTS 版本。
问题是,服务器上运行的各种应用程序需要能够发送电子邮件。各种应用程序,如 cron 作业,会在出现错误时向我发送电子邮件。一些 Web 应用程序需要在用户忘记密码时向用户发送电子邮件,以确认新注册用户等。最后,能够使用 mail 命令或 mutt 从命令行发送电子邮件非常好.
如何在网络服务器上设置邮件以通过 Google Apps 邮件服务器?我不需要网络服务器来接收邮件,虽然那会很酷。我确实需要它能够以任何合法地址@foobar.com 发送邮件。这样,论坛应用程序可以在 from 字段中使用 [email protected] 发送邮件,而电子商务应用程序将在 from 字段中使用 [email protected]。此外,通过谷歌服务器发送邮件,我们可以避免很多电子邮件被网络上的各种垃圾邮件过滤器阻止的问题。Google 的 SMTP 服务器比我的更受信任。
我非常擅长管理 Linux 系统,但在电子邮件方面我绝对是脑残。我需要从头到尾逐步说明如何设置它。我需要知道要安装的每一件事,以及对配置文件的每一次必要更改。我过去曾尝试遵循各种方法和指南,但没有一个是完全正确的。要么他们根本不工作,要么他们提供的配置不是我想要的。
请帮忙。谢谢。
最简单的方法是避免使用 exim 并使用轻量级 MTA 的 sSMTP。
您需要做的就是安装它:
并配置它(编辑 /etc/ssmtp/ssmtp.conf)以使用您的 Google Mail 服务器,请参阅:
我已经使用这个设置有一段时间了,它可以正常工作 - 在不需要时不需要运行 exim 并让 Google 的邮件服务器为您处理所有事情也很好。
基本上,这很容易。
选择所有对您有意义的东西 - 只要您选择带有智能主机的东西。当询问您使用什么 smarthost 的问题出现时,回答:smtp.gmail.com::587
然后编辑文件 /etc/exim4/passwd.client 以匹配
这就是工作。
ssmtp 也可以正常工作,但邮件传递似乎相当慢。另外,我更喜欢有一个守护进程来连接。
请记住,免费版的 GMail 的出站限制为每天约 500 条消息。如果您不超过此限制,松饼的解决方案将非常适合您。
您应该能够使用 Google 的邮件服务器作为您的 SMTP 网关并与用户进行身份验证。
http://www.google.com/support/a/bin/answer.py?hl=en&answer=60730
这里有一些基本的伪代码可以给你一个想法:
更新:
这是一个可能会有所帮助的链接。它不完全是我想要的,但足够合理(我希望)让你知道可以让 cron 作业通过谷歌应用程序发送电子邮件。
http://bakingnoodles.com/tag/linux/
这个小应用程序也可能很有用(警告:我自己没有尝试过)
http://linux.softpedia.com/get/Communications/Email/Email-2-6805.shtml
另一种选择可能是将 Postfix 配置为使用 Google Apps 进行所有邮件传递。如果你在谷歌搜索“配置后缀谷歌应用程序”,你会发现一堆链接,包括这个:
http://blog.twinklesprings.com/2008/03/27/remote-mail-delivery-for-google-apps-and-postfix-mail-server/
如果您不需要接收邮件,您真的不需要通过 Google 发送邮件。如果您正确设置了 DNS 记录,您应该能够从 Web 服务器上的 MTA 发送邮件。
如果您使用的是 SPF,您需要确保更新它以包含您的应用程序服务器。
在后缀中非常简单:
更改以下内容
mydestination = mydomain.com, localhost.mydomain.com, localhost
至
重启你的服务器,你就完成了!