MUTT+MSMTP利用163服务器发送邮件
监控系统发送告警邮件,我们自己搭建邮件服务器,成本较高,所以可以使用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端口等。