如何使用我的 CentOS 服务器发送电子邮件?

如何使用我的 CentOS 服务器发送电子邮件?

我刚刚使用 CentOS 5.5 构建了一个普通的家庭服务器。我希望服务器能够将电子邮件发送到我的 Gmail 帐户或其他电子邮件帐户,用于各种任务,例如 cron 任务。此外,如果能够通过我在服务器上运行/开发的 PHP 应用程序发送电子邮件就太好了。或者甚至能够让服务器通过 mail 命令发送电子邮件。

我知道 Google 搜索结果中有上百万条关于如何将 Linux 服务器设置为电子邮件服务器或配置 sendmail 等内容。但它们似乎不是我想要的……至少我不这么认为。我并不是想设置某个企业服务器,其他客户端可以连接它来发送电子邮件或做类似的事情。

我只想让我的服务器给我发送一些有关东西的电子邮件。这似乎很简单...有人能给我指明正确的方向吗?

更新

根据以下用户请求,我尝试了这个命令:

/bin/mail -s "My Subject" "[email protected]" < /home/john/test

没有错误或任何问题。但电子邮件从未出现在我的收件箱中。这是我的maillog

Oct 27 00:52:19 localhost sendmail[13702]: o9R6qJhU013702: from=root, size=10906, class=0, nrcpts=1, msgid=<[email protected]>, relay=root@localhost
Oct 27 00:52:19 localhost sendmail[13703]: o9R6qJOd013703: from=<[email protected]>, size=11209, class=0, nrcpts=1, msgid=<[email protected]>, proto=ESMTP, daemon=MTA, relay=localhost.localdomain [127.0.0.1]
Oct 27 00:52:19 localhost sendmail[13702]: o9R6qJhU013702: [email protected], ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=40906, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (o9R6qJOd013703 Message accepted for delivery)

有什么线索吗?

答案1

/bin/mail -s "Enter Subject Line here" -a /home/.../whateverFileYouWantAttached "you@YourEmailAddress" < /home/me/textBody.letter

尝试上述命令:)

答案2

简单回答:

设置 sendmail。这取决于您的发行版,但这并不难。如果您有任何具体问题,请随时提问。

复杂的答案:

如果你问这个问题,你可能不应该急于安装 sendmail贾斯特然而。

您需要考虑以下几点:

  1. 您的 ISP 允许您发送电子邮件吗?您可能处于非服务器 IP 范围内,因此许多电子邮件提供商会直接阻止您。

  2. 您将使用哪个地址作为发件人地址?您是否被授权从此地址发送邮件(SPF、DomainKeys 等)?如果没有,您的邮件可能会被电子邮件提供商检测为垃圾邮件——这是理所当然的。

  3. 最后,但肯定不是最不重要的一点:您真的需要使用自己的 SMTP 服务吗?有什么理由说明使用 ISP 的服务不够好吗?

过去,设置 SMTP 服务器并不是什么大事。如今,设置可能更容易,但设置得当将消息发送到人们的邮箱,是一个挑战。

答案3

我可以确认,上述建议对我家里的 CentOS 系统都不起作用 - 一个都不起作用。这很烦人!

然后,我在运行 CentOS 6.4 的新 Amazon 实例上尝试了同样的操作,即使使用默认配置,我也可以毫无问题地发送邮件。我所要做的就是

yum install mailx

之后,按照上述方法发送邮件就很顺利了。对于 Jakub 想要做的事情来说,安装 sendmail 之类的复杂功能并不是必需的。

这肯定是我的 ISP 的一些配置问题,因为我这边没有可配置的防火墙。

答案4

您是否修改了 /etc/mail.rc 来设置 smtp 地址?

相关内容