我有一个域名,我们将其命名为 foobar.com。foobar.com 的所有 MX 记录都指向 Google 的邮件服务器,因为我正在使用适用于您的域的 Google 企业应用套件来管理它。这很棒,因为每个人都可以享受 GMail 的所有优势,但我们的电子邮件地址不是 @gmail.com。
我还有一个服务器。它主要是 Web 服务器,但也提供其他服务。它提供的一个服务是 foobar.com 网站以及各种虚拟主机(如 shop.foobar.com 和 forum.foobar.com)的网站。该服务器运行的是 Ubuntu 8.04,因为我喜欢在生产中使用 LTS 版本。
问题是,服务器上运行着各种需要发送电子邮件功能的应用程序。各种应用程序(如 cron 作业)在出现错误时都会向我发送电子邮件。一些 Web 应用程序需要在用户忘记密码时向他们发送电子邮件,以确认新注册的用户等。最后,能够使用 mail 命令或 mutt 从命令行发送电子邮件真是太好了。
我如何设置 Web 服务器上的邮件以通过 Google 应用邮件服务器?我不需要 Web 服务器来接收邮件,尽管那会很酷。我确实需要它能够以任何合法地址 @foobar.com 发送邮件。这样,论坛应用程序就可以使用[电子邮件保护]在发件人字段中,电子商务应用程序将具有[电子邮件保护]在发件人字段中。此外,通过 Google 服务器发送邮件,我们可以避免电子邮件被网络上各种垃圾邮件过滤器阻止的很多问题。Google 的 SMTP 服务器比我的更受信任。
我很擅长管理 Linux 系统,但一提到电子邮件我就完全是脑残。我需要从头到尾一步一步地指导如何设置它。我需要知道要安装的每一个东西,以及对配置文件的每一个必要更改。我过去曾尝试遵循各种操作指南和指南,但没有一个是完全正确的。要么它们根本不起作用,要么它们提供的配置不是我想要的。
请帮忙。谢谢。
答案1
最简单的方法是避免使用 exim 而使用轻量级 MTA sSMTP。
您需要做的就是安装它:
sudo apt-get install ssmtp mailutils
并对其进行配置(编辑 /etc/ssmtp/ssmtp.conf)以使用您的 Google Mail 服务器,请参见:
[email protected]
mailhub=smtp.gmail.com:587
UseSTARTTLS=yes
UseTLS=yes
[email protected]
AuthPass=password
FromLineOverride=YES
我已经使用这个设置有一段时间了,它很好用 - 在没有必要的时候不需要运行 exim,让 Google 的邮件服务器为您处理一切,这也很好。
答案2
基本上,这非常简单。
$ sudo dpkg-reconfigure exim4-config
选择所有对你有意义的东西 - 只要你选择带有智能主机的东西。当询问你使用哪个智能主机的问题出现时,回答:smtp.gmail.com::587
然后编辑文件 /etc/exim4/passwd.client 以匹配
gmail-smtp.l.google.com:[email protected]:p@sSw0rd
*.google.com:[email protected]:p@sSw0rd
smtp.gmail.com:[email protected]:p@sSw0rd
这样就完成了工作。
ssmtp 也运行良好,但邮件投递速度似乎比较慢。另外,我更喜欢有一个守护进程来连接。
答案3
请记住,免费版 GMail 的出站限制为每天约 500 条消息。如果您不超过此限制,muffin 的解决方案将非常适合您。
答案4
如果您不需要接收邮件,您实际上不需要通过 Google 发送邮件。如果您正确设置了 DNS 记录,您应该能够从 Web 服务器上的 MTA 发送邮件。
如果您正在使用 SPF,您需要确保将其更新以包含您的应用程序服务器。