使用mutt+msmtp在Linux命令行界面下发邮件(续)

一年前写过一篇《使用mutt+msmtp在Linux命令行界面下发邮件》,但是最近想照着文中的办法解决新的问题时发现又有新的疑惑了,所以就有了今天这篇“续集”。

首先说说msmtp。如果你仅仅想在Linux下发送邮件,那么只靠它就能实现了,只需要配置好如何连接到相应的SMTP服务器即可,以下我就以腾讯企业邮为例,说一下具体的步骤(以下皆为root用户):

1. apt-get install msmtp

2. vi ~/.msmtprc && chmod 600 ~/.msmtprc

defaults
auth on
tls on
tls_starttls off    #这个必须显式声明,折腾好久
tls_trust_file /etc/ssl/certs/ca-certificates.crt

account freemail
host smtp.exmail.qq.com
port 465
from chend@qq.com.cn
user chend@qq.com.cn
password XXXXXX
logfile ~/msmtp.log

account default : freemail

3. 测试:echo "a test mail." | msmtp --debug --file=./.msmtprc 1234567@qq.com

接下来说说mutt。mutt是一个邮件客户端,不过我猜测它无法单独实现发送邮件的功能,必须依赖类似msmtp这样的工具,反正网上基本都是这两者的结合使用。我将采用编译源代码的方式来安装mutt,原因是通过apt-get的方式会将Postfix一起装上。以下是具体步骤(以下皆为root用户):

1. apt-get install libncurses5-dev

2. ./configure --prefix=/usr/local && make && make install

3. vi ~/.muttrc    # 默认的muttrc文件在这里:/usr/local/etc/Muttrc

set sendmail="/usr/bin/msmtp"
set realname="监控系统"
set use_from=yes
set editor="vi"

4. 测试:echo "邮件正文" | mutt -s "邮件主题" 1234567@qq.com

2016-11-2更新:

闲来无事,想研究一下网上说的用Mutt+IMAP来实现收取邮件的方法,唯一要注意的是在编译时请加上--enable-imap参数,其余的就按照网上的文章操作即可。

附上腾讯企业邮的SMTP信息:

root@ubuntu:~# msmtp --host=smtp.exmail.qq.com --serverinfo --tls=on --tls-trust-file=/etc/ssl/certs/ca-certificates.crt
SMTP server at smtp.exmail.qq.com ([183.57.48.39]), port 25:
    smtp.qq.com Esmtp QQ Mail Server
TLS certificate information:
    Owner:
        Common Name: pop.qq.com
        Organization: Shenzhen Tencent Computer Systems Company Limited
        Organizational unit: R&D
        Locality: Shenzhen
        State or Province: Guangdong
        Country: CN
    Issuer:
        Common Name: GeoTrust SSL CA - G3
        Organization: GeoTrust Inc.
        Country: US
    Validity:
        Activation time: Tue 06 Sep 2016 05:00:00 PM PDT
        Expiration time: Fri 07 Dec 2018 03:59:59 PM PST
    Fingerprints:
        SHA1: 45:62:5E:9F:41:60:97:3F:18:E9:FA:53:FE:A5:DA:03:0C:58:55:4C
        MD5:  DE:DF:05:9C:22:71:F0:91:83:D0:0B:A8:01:04:06:82
Capabilities:
    SIZE 73400320:
        Maximum message size is 73400320 bytes = 70.00 MiB
    PIPELINING:
        Support for command grouping for faster transmission
    STARTTLS:
        Support for TLS encryption via the STARTTLS command
    AUTH:
        Supported authentication methods:
        PLAIN LOGIN 
原文地址:https://www.cnblogs.com/IvanChen/p/5987928.html