Linux下可以直接用mail命令发送邮件,但是发件人是user@servername,如果机器没有外网的dns,其他人就无法回复。此时,有一个可以使用网络免费邮箱服务的邮件发送程序就比较重要了。msmtp就是这样的一个程序。

#1、下载源码包

wget http://sourceforge.net/projects/msmtp/files/msmtp/1.4.31/msmtp-1.4.31.tar.bz2/download

#2、解压

tar -jxvf msmtp-1.4.31.tar.bz2 && cd msmtp-1.4.31

#build and install

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

#link to /usr/bin

ln -s /usr/local/msmtp/bin/msmtp /usr/bin/msmtp

 

#3、新建msmtp的配置文件

mkdir /usr/local/msmtp/etc && vim /usr/local/msmtp/etc/msmtprc

 

#4、输入如下内容

# Set default values for all following accounts.

defaults

logfile /var/log/msmtp/msmtp.log

# The SMTP server of the provider.
account 163

# SMTP邮件服务器地址

host smtp.163.com

# 发送的邮件Email

from user@163.com
auth login

# 邮件服务器登录账号

user user@163.com

# 邮件服务器登陆密码

password password
# Set a default account
account default : 163

 

#############################################

#5、测试msmtp是否配置正确

msmtp test@163.comtest[ctrl+d] #6、安装配置mutt yum install -y mutt vim /etc/Muttrc #输入如下内容:
set sendmail='/usr/bin/msmtp' set use_from=yesset realname='YOURNAME' set from=user@163.comset envelope_from=yesauto_view text/htmlset charset='utf-8' set send_charset='utf-8' set locale ='zh_CN.UTF-8' set content_type = 'text/html\;charset=utf-8' set rfc2047_parameters=yes #6、配置完毕,测试一下吧!
echo  "测试test"|mutt -s "test"  receiver@163.com
 
 

允许转载,麻烦注明出处: