Linux配置Msmtp1.6.2和Mutt发送邮件,支持ssl

首先,安装一些需要的包
1. gcc
2. gnutls-devel或openssl-devel,这个在后面使用tls/ssl发送邮件的时候需要,ubuntu安装openssl即可

1. 下载msmtp,配置并编译(openssl也可以替换成gnutls)

#if Ubuntu
apt-get install pkg-config

wget http://nchc.dl.sourceforge.net/sourceforge/msmtp/msmtp-1.6.2.tar.xz
tar xvf msmtp-1.6.2.tar.xz
cd msmtp-1.6.2
./configure --prefix=/usr/local/msmtp --with-tls=openssl
make
make install

2. 配置msmtp
切换到相应文件夹

cd /usr/local/msmtp

新建文件夹etc

mkdir etc

使用vi新建文件

vi /usr/local/msmtp/etc/msmtprc

编辑内容如下:

# Set default values for all following accounts.
defaults
logfile /usr/local/msmtp/msmtp.log 
timeout 10
# The SMTP server of the provider. 
account test
# SMTP邮件服务器地址
host smtp.domain.163.com
# 发送的邮件Email
from [email protected]
auth login
# 邮件服务器登录账号
user [email protected]
# 邮件服务器登陆密码
password yourpassword
# Set a default account
account default: test

如果我们使用ssl方式发送,请在timeout后面加

tls on
tls_certcheck off
#使用网易邮箱必须有下面这句
tls_starttls off

3. 测试msmtp配置结果

/usr/local/msmtp/bin/msmtp [email protected]

输入任意字符,然后按Ctrl+D退出,查看邮件是否收到。

由于设置了日志,可以到 /usr/local/msmtp/msmtp.log,查看日志,发信成功失败都会有记录。

4. 安装并配置编辑mutt配置文件

#if Ubuntu 出现的选择框选择第一个保持系统默认即可
apt-get install mutt

vi ~/.muttrc

#总配置文件的位置,不推荐使用
#vi /etc/Muttrc

编辑mutt的总设置,修改以下几行

set from="发送邮件地址"
set sendmail="/usr/local/msmtp/bin/msmtp"
set use_from=yes
set realname="发件人"
set editor="vi"

发件地址最好与msmtp设置的账号相同,否则可能会出错。

5. 测试一下mutt是否有效

#echo "测试测试" | mutt -s "测试" 测试邮件地址
echo "test" |mutt -s "my_first_test" [email protected]