在 Ubuntu 上配置邮件

Quy*_*013 2 email ubuntu-14.04

如何在 Ubuntu 14.04 上配置邮件以与需要邮件功能的 bash 文件一起使用?我还没有找到任何可以在 Ubuntu 14.04 上使用的指南

use*_*686 5

传统上,该mail命令只是将生成的消息通过管道传送到/usr/sbin/sendmail,然后预期它会处理 SMTP、UUCP、Bitnet 或任何其他收件人地址描述的内容。因此,最通用的解决方案是安装提供sendmail工具的软件包。

这里有很多选择——您可以使用功能齐全的 MTA(postfix、exim4、opensmtpd...)或简单的转发器(msmtp、ssmtp、esmtp...)。转发器只能将消息发送到一个特定的服务器(例如 Gmail 或其他提供商的),并且通常足以达到此目的。完整的邮件服务器支持直接和间接传输。

(请注意,如果您希望邮件带有From: ...@gmail.com,则必须通过 Gmail 服务器转发它。这同样适用于大多数其他提供商。另一方面,如果您有自己的域名,则需要一个完整的邮件服务器也。)

我无法在这里描述每一个选项。如果您安装转发器,配置应该或多或少是不言自明的。如果要配置完整的邮件服务器以通过提供商转发邮件,请搜索术语“中继邮件”或“智能主机”。具体来说,很多人写了教程来制作Postfix/Sendmail/etc。通过 Gmail 中继所有邮件。不过,我正在使用msmtp,所以这是一个示例~/.msmtprc

无论您选择哪一个,请确保/usr/sbin/sendmail/usr/lib/sendmail调用正确的邮件程序。


还有另一种选择。mail存在多个版本的命令;具有大量功能的一个heirloom-mailx在 Ubuntu 存储库中被调用(后来重命名为s-nail)。除其他外,它能够直接与您的提供商的 SMTP 服务器通信,而无需单独的sendmail工具。

如果您安装了 heirloom-mailx,您可以跳过以上所有步骤,并在您的~/.mailrc; 中设置必要的 SMTP 变量。例如

# ~/.msmtprc

默认值
    开启
    tls_trust_file /etc/ssl/certs/ca-certificates.crt

账户默认
    来自 grawity@gmail.com
    主机 smtp.gmail.com
    587端口
    正宗的
    用户 grawity@gmail.com
    密码 ********
# ~/.mailrc

设置 smtp="grawity%40gmail.com@smtp.gmail.com:587"
设置 smtp-use-starttls
设置 smtp-auth="plain"