利用mutt和msmtp实现邮件自动发送功能

来源:互联网 发布:centos安装ssh客户端 编辑:程序博客网 时间:2024/05/16 16:10

mutt是一个MUA(邮件用户代理),类似foxmail和outlook,是不负责发送接收邮件的,如果要发送邮件需调用msmtp,msmtp实现了MTA的功能,比起sendmail来方便了不少。

使用环境:CentOS5.3

1)安装mutt和msmtp

mutt使用CentOS4或5自带的版本即可。

rpm -ivh mutt-1.4.2.2-3.0.2.el5.x86_64.rpm

安装msmtp,下载地址http://sourceforge.net/projects/msmtp

tar xjf msmtp-1.4.19.tar.bz2

cd msmtp-1.4.19

./configure

make

make install

默认msmtp被放在/usr/local/bin/下。

2)设置MUTT

系统全局设置使用/etc/Muttrc,也可以在用户的~/.muttrc(新建)中设置。

vi .muttrc

set sendmail="/usr/local/bin/msmtp"

set use_from=yes

set realname="yourname"     #就是邮件发件人姓名

set from=test@domain.com

set envelope_from=yes

3)设置MSMTP

创建~/.msmtprc和~/.msmtp.log,分别为配置和日志文件。

vi .msmtprc

account default

host smtp.domain.com    #smtp服务器域名或ip

from test@domain.com

auth off                #这里关闭认证,根据smtp支持的认证方式修改

user test               #邮件账号,不包括@后面的域名

password ******         #邮件密码

logfile ~/.msmtp.log    #邮件发送和错误日志

可用的auth方法有plain、cram-md5、digest-md5、gssapi、external、login和ntlm。

由于password是明码,所以我们需要修改此文件的权限:

chmod 600 .msmtprc

touch ~/.msmtp.log

4)测试

echo "test" |mutt -s " first_test" test2@domain.com

其实mutt还可以用来发送附件以及HTML的邮件,可以说功能还是很强大的。

观察.msmtp.log日志文件,如果有错会在日志文件中被报告出来,当然,成功发送的日志也会出现在此日志文件内。

5)错误FAQ

Error sending message,child exited 78 ().

请严格配置好mutt的配置文件。

0 0
原创粉丝点击