msmtp使用特定邮箱地址发邮件-Mutt协作篇

你是否为自己内网测试机无法向外网发送邮件而苦恼,这个工具会让你的这个想法实现起来easy! 记得以前我在搭建个个环境,有时就需要邮件功能,但自己的小环境又没域名解析等等,根本就没办法测试通信!就算你有mail这些也局限于你自己的这个内网环境。msmtp很棒,其实windows上也有个此相同的小工具。
msmtp是啥:msmtp 是一个SMTP 客户端
在默认情况下,它把邮件送给负责发邮件的SMTP 服务器(如:免费邮箱供应商)。
你需要手工建立一个含邮件账号信息的配置文件,并且让MUA(邮件客户端)启用msmtp 而不是/usr/sbin/sendmail ,这样才能使邮件客户端软件与msmtp 更好的协同工作。
更多内容可以到:
http://msmtp.sourceforge.net/查看
正文内容:

先安装依赖,我直接yum安装mutt
yum install opsenssl mutt libntlm libgsasl
下载msmtp
http://sourceforge.net/projects/msmtp/files/msmtp/
下载msmtp
http://cdnetworks-kr-1.dl.sourceforge.net/project/msmtp/msmtp/1.4.27/msmtp-1.4.27.tar.bz2
解压

tar jxvf  msmtp-1.4.27.tar.bz2  -C /usr/local/src/
mkdir  /usr/local/msmtp

安装

[root@kinggoo.com ~]#cd /usr/local/src/msmtp-1.4.27
[root@kinggoo.com msmtp-1.4.27]# ./configure --prefix=/usr/local/msmtp --with-ssl=openssl  ##  有些可能需要openssl
[root@kinggoo.com msmtp-1.4.27]# make && make install
#安装成功
[root@kinggoo.com msmtp-1.4.27]#cd /usr/local/msmtp/bin
[root@kinggoo.com bin]# ./msmtp  --version
msmtp version 1.4.27
Platform: x86_64-unknown-linux-gnu
TLS/SSL library: OpenSSL
Authentication library: built-in
Supported authentication methods:
plain cram-md5 external login 
IDN support: disabled
NLS: enabled, LOCALEDIR is /usr/local/msmtp/share/locale
Keyring support: none
System configuration file name: /usr/local/msmtp/etc/msmtprc
User configuration file name: /root/.msmtprc

Copyright (C) 2012 Martin Lambers and others.
This is free software.  You may redistribute copies of it under the terms of
the GNU General Public License < . http. gpl.html licenses www.gnu.org >.
There is NO WARRANTY, to the extent permitted by law.

创建msmtp配置文件,输入外部smtp地址

[root@kinggoo.com msmtp-1.4.27]# mkdir  /usr/local/msmtp/etc
[root@kinggoo.com msmtp-1.4.27]# cd /usr/local/msmtp/etc
[root@kinggoo.com etc]# touch msmtprc 
[root@kinggoo.com etc]# vim msmtprc
account default
host  mail.kinggoo.com   # 邮箱的服务器地址
port 25 # 端口
from kinggoo@kinggoo.com.cn # 用户名
auth login # 必须得是login,如果是on的话请看下面错误提示
tls off
user kinggoo@kinggoo.com # 邮箱帐号
password 123456 #邮箱密码
logfile /var/log/mmlog
保存退出
## 以上你可以改成163的邮箱等等

可以测试一下发信

/usr/local/msmtp/bin/msmtp kinggoo.com@kinggoo.com
test
ctrl+d

看下日志文件或者到对方邮箱查看有没有收到就可以了

/////////////////////

现在配置mutt了,强大的东西,前面已经安装好了mutt直接配置吧

可能找不到~/.muttrc,如果没有可以

cp  /etc/Muttrc ~/.muttrc
vim  /etc/Muttrc.local   

在最后加入

set sendmail='/usr/local/msmtp/bin/msmtp'
set use_from=yes
set realname='SVN服务'
set from=kinggoo.com@kinggoo.com
set envelope_from=yes
auto_view text/html

set 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

测试一下mutt和mstmp吧

echo  "测试test"|mutt -s "mstmp,mutt中文"  admin.com@kinggoo.com

看下日志文件或者到对方邮箱查看有没有收到就可以了

错误信息:

运行msmtp时提示

msmtp: cannot use a secure authentication method

msmtp: could not send mail (account default from /usr/local/msmtp/etc/msmtprc)

解决办法:

修改/usr/local/msmtp/etc/msmtprc内

auth on将其修改为auth login

=================================

参考文献:

http://www.mutt.org/

http://msmtp.sourceforge.net/

http://xhc.me/wp-content/uploads/mutt/manual_1.5.19_zh.html

- THE END -
版权声明:
转载原创文章请注明,文章出处:http://kinggoo.com
原文地址:http://kinggoo.com/app-msmtpandmutt.htm
发表评论?

3 条评论。

  1. vps内wordpress 数据备份脚本 | KingGoo技术博客 - pingback on 2013 年 04 月 17 日 在 18:27
  2. svn邮件通知功能,可以发送特定邮件 - KingGoo博客 - pingback on 2012 年 05 月 15 日 在 13:59

发表评论


Trackbacks and Pingbacks: