监控系统发送告警邮件,我们自己搭建邮件服务器,成本较高,所以可以使用163等第三方MTA帮助我们发送。
MUTT+MSMTP是一个很好的选择,具体实现如下:

tar -xvf msmtp-1.6.5.tar cd msmtp-1.6.5.tar 源码安装三板斧 ./configure --prefix=/usr/local/msmtp make make install cd /usr/local/msmtp/ mkdir etc #配置文件目录和配置文件需自己建 cd etc vim msmtprc #手动创建配置文件 account default host smtp.163.com #你的发送邮件服务器 from username@163.com #要从哪个邮箱发出 auth login #这里如果使用on的话会报 "msmtp: cannot use a secure authentication method"错误 tls off user uername@163.com #邮箱用户名 password passwd #邮箱密码,这里可是明文的,文件权限600,网易邮箱填写第三方客户端授权码 logfile /var/log/mmlog  

先测试一下,随便输入一些内容用ctrl+d结束。然后到邮箱看看有没有收到,如果这里提示错误按照错误代码找原因,或者看看上面的日志文件
/usr/local/msmtp/bin/msmtp username@163.com

下面开始安装 MUTT

yum install mutt
安装完成后要手动给他建立一个配置文件

vim /etc/Muttrc 
set sendmail="/usr/local/msmtp/bin/msmtp"   #你的msmtp命令路径 
set use_from=yes 
set realname="username@163.com" 
set editor="vim" 

测试:

echo "test" | mutt -s "测试" -a /etc/hosts username@163.com

然后我们就可以结合监控软件或自己写的监控脚本发送告警邮件了。

具体的mutt使用方法,这里就不做介绍了。

发送失败请检查:配置文件是否正确,收件人地址是否正确,主机能否到smtp.163.com 25端口等。

posted on 2017-01-22 21:49  浮沉一梦  阅读(2588)  评论(0编辑  收藏  举报