如何设置我的Ubuntu VPS以发送出站邮件?

12

我的VPS提供商(Slicehost)没有提供SMTP服务器。 我使用Google Apps为我的域名发送和接收邮件,但我想能够以编程方式发送电子邮件。

我已经在网上搜索了这个问题很长时间,但似乎无法清晰地了解我需要做什么。我只需要像postfix这样的MTA吗? 我将其配置为“satellite”还是“internet”网站? 我需要进行任何DNS更改吗? 如果我某天想以编程方式接收电子邮件,是否有任何需要小心处理的配置选项? 此外,如果我的VPS主机提供了SMTP服务器,那么我现在正在做的哪些工作就不需要再做了?

谢谢!

编辑: 我的研究结果简述:

  • 更新/etc/hosts/etc/hostname以反映FQDN(例如,mail.domain.comsub.domain.com而不是slicename
    • 重新启动并使用hostname -f验证
  • 设置反向DNS(由拥有IP池的人所有)指向相同的FQDN
    • 使用dig -x server.ip.address检查RDNS是否已传播
  • sudo aptitude install postfix telnet mailx
    • 使用internet site设置
    • 将FQDN设置为上面选择的名称
  • 使用mail whateveryouremailis@gmail.com进行测试

RDNS部分并不是那么必要的,似乎它不需要指向您的主机名,而可以指向任何地方。 - HappyFace
4个回答

3

巧合的是,我一直在考虑不久的将来启动一个项目,这可能会给我最后一点推动。 - Scott Bennett-McLeish
还发现了这个网址(http://jonsview.com/2008/07/14/setting-up-email-services-on-ubuntu-hardy-using-postfix-and-courier),可能会很有用。 - Scott Bennett-McLeish

2
根据我的经验,当电子邮件提供商检查垃圾邮件时,除了内容之外,他们还会检查以下5个主要方面: (当我说域名时,我指的是发件人电子邮件地址的域名。)
  1. 域名的“A”记录(IP)存在
  2. 域名的MX记录存在
  3. 发件人IP地址的PTR记录(反向查找)存在(有时,我认为还会检查PTR记录是否与原始域具有相同的A记录)
  4. 该域的SPF记录与IP号码匹配(这是允许发送该域电子邮件的IP号码列表。虽然这将是一个很好的垃圾邮件过滤解决方案,但这不是官方记录,因此并不总是被检查。请查看SPF设置向导。
  5. 服务器的IP段不在黑名单段中。
第五个问题对我来说是一个难题。显然,像Hotmail、Gmail、Yahoo这样的电子邮件提供商会丢弃所有来自广泛使用的服务器提供商(例如Amazon EC2)的所有传入电子邮件。在这种情况下,就没有办法保证所有外发电子邮件的投递,因此您必须从黑名单段以外的其他SMTP服务器中中继所有外发电子邮件。最简单的方法是配置Postfix(或您正在使用的任何MTA)自动中继所有电子邮件。如果您进行一些谷歌搜索,可以找到大量相关文章。
如果不是这种情况,那么只需要一个简单的MTA,如Postfix,只要上面列出的所有必要DNS记录都正确配置,您就应该没有发送电子邮件的问题。

1

其他答案已经提供了有关发送电子邮件的机制的信息,但您需要考虑的一件事是您将使用什么发件人地址以及如何处理退回消息。

假设您正在从sender@example.com发送电子邮件;那么(正如Murat Ayfer所指出的),您需要确保您的主机被允许根据example.com的SPF记录发送邮件。(这可能或可能不是通过IP地址配置的-有关更多详细信息,请参见SPF网站。)如果您负责example.com域,则这不应该是一个问题。作为该域的可接受发件人列出是使您的电子邮件顺利传递的重要步骤。

下一步你需要担心的是如何处理退回的电子邮件。如果其他主机接收example.com的电子邮件(即MX记录指向其他地方),那么这主要是别人的问题。(但请注意,由于语法无效的电子邮件地址等原因,在SMTP会话到达您主机上的邮件服务器期间发生故障时,您的应用程序必须做好准备。)但是,如果您决定在您的主机上接收example.com的邮件,则需要担心处理重试消息、退回消息、双重退回消息以及许多其他常规邮件服务器管理问题。有一些关于在Web应用程序中处理未送达的电子邮件的信息可能会有所帮助,但我还建议获取一本关于Postfix或您决定使用的任何邮件服务器的好书。

0

只需安装类似于“internet site”的postfix,您就可以直接从VPS发送邮件。

默认设置应该可以工作,但建议您阅读一些文档/操作指南以适当地保护它。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接