我正在尝试配置一个 Ubuntu 11.04 盒子来发送只发送邮件,不接收邮件。我现在很困惑。我知道我需要在服务器上安装一个 MTA,如 sendmail、postfix 或 exim,但在尝试配置它们时我遇到了问题。
这是一个网络服务器,我只是希望它能够发送邮件。
假设域名是 example.com。我使用 Google 邮箱托管电子邮件,但需要托管我网站的这台服务器能够向其他用户和电子邮件帐户发送电子邮件,例如[电子邮件保护]。
另外,假设我的服务器的主机名是“greatserver”。
所以这里有一些问题:1. Exim 要求我提供我的 FQDN。如果我没看错的话,这基本上是一个互联网上任何人都可以访问的地址?这应该是“example.com”吗?2. Exim 要求提供以分号分隔的收件人域列表,此机器应将自己视为最终目的地。我完全不知道这里要放什么。除了“localhost”和“example.com”之外,我还需要其他什么吗?3. 我的服务器的主机名只是一个单词,或者更准确地说,不是域名,对吗?
答案1
这不是一个直接的回答你的问题,但它可能是最终的答案。你说的一句话激起了我的好奇心:
这是一个网络服务器,我只是希望它能够发送邮件。
这一切都取决于如何您希望发送邮件。如果您正在使用 CMS 或开发自己的应用程序,几乎所有语言都具有 SMTP 功能,无需使用本地 MTA 即可发送邮件。只有当您有可验证的理由时才安装完整的 MTA。
答案2
Exim 要求我提供 FQDN。如果我没看错的话,这基本上是互联网上任何人都可以访问的地址?这应该是“mydomain.com”吗?
当您发送邮件时,在 SMTP 语句中,这将作为服务器的主机名呈现给远程服务器EHLO
。将其设置为解析回此服务器的地址 - 如果mydomain.com
托管在此服务器上,那么这将正常工作。
Exim 要求输入一个以分号分隔的收件人域列表,该机器应将自己视为最终目的地。我完全不知道该在这里放什么。除了“localhost”和“mydomain.com”之外,我还需要其他什么吗?
否 - 您唯一能收到的本地投递是本地邮件,例如来自 cron 作业的通知。FQDN 和 localhost 都可以正常工作。
我的服务器的主机名只是一个单词,或者更正确地说,不是一个域名,这样对吗?
有点。运行hostname
;这是您的主机名。运行hostname -f
;这是您的完全合格域名。您在什么情况下需要这个?
答案3
以下是重新配置 Exim 时需要回答的问题和选项dpkg-reconifugre exim-config
。我使用 example.com 作为您的域名(您接收邮件的域名);www.example.com 作为您的网络服务器名称(使用其主机名(包括域名)或您的网络服务器使用的域名);mail.example.com 作为将向您发送电子邮件的邮件服务器。下面将进一步讨论。
General type of mail configuration: mail sent by smarthost; no local mail
System mail name: example.com
IP address to listen: 127.0.0.1
Other destinations:
Visible domain name for local users: www.example.com
IP address or host name of outgoing smarthost: mail.example.com
Keep number of DNS-queries minimal: No
Split configuration into small files: No
FQDN 是完全限定域名,对于主机来说,它由主机名和域名作为前缀组成(例如 host.example.com)。
通常,您可以使用 ISP 的中继服务器作为智能主机,但如果已经有用于发送邮件的邮件服务器,则最好使用它。这样,您就可以更好地控制来自您域的电子邮件来源。
始终使用可以接收电子邮件的电子邮件地址作为所有电子邮件的发件人。使用类似[电子邮件保护]对于不需要回复的电子邮件是可以接受的。像 noreply 这样的地址可以接受电子邮件并自动删除它们。对看起来真实的地址这样做是不合适的。
确保发给 postmaster 的邮件能被送到能采取适当措施的人手中。您可能还想对 abuse、webmaster 和 hostmaster 采取同样的措施。这将使其他管理员能够轻松地通知您问题。
当电子邮件从服务器发送出去时,“本地用户可见的域名”应该被重写为“系统邮件名称”,但这并不重要,因为您在生成要发送到互联网的电子邮件时应该使用正确的域。我相信这个域用于生成 Message-Id 标头,因此它应该是每个服务器的唯一 FQDN。
考虑为您的所有域名设置 SPF 记录。这将有助于阻止垃圾邮件发送者使用您的域名发送垃圾邮件。