概述
最近学习zabbix,想触发告警时发送邮件,准备使用sendEmail发送邮件,原以为很简单的事情,还是踩了一些坑,记录如下。
Step 1 安装sendEmail
sendEmail官网 http://caspian.dotconf.net/menu/Software/SendEmail/
安装方法:
wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz
tar -xzvf sendEmail-v1.56.tar.gz
cd sendEmail-v1.56/
cp sendEmail /usr/local/bin/
Step 2 发送邮件
发送qq邮件:
首先找到qq邮箱smtp设置处,拿到授权码:
登录qq邮箱,设置,找到如下界面:
![](https://img.haomeiwen.com/i3139698/a1f7b9c5b8df64b6.png)
关闭再开启,可获得授权码。
发送:
/usr/local/bin/sendEmail -f 1523955650@qq.com \
-t 1523955650@qq.com \
-s smtp.qq.com \
-u "邮件主题" \
-o message-content-type=html \
-o message-charset=utf-8 \
-xu 1523955650@qq.com \
-xp pepltaflcvuniied \
-m "邮件内容"
sendEmail[1925]: ERROR => Timeout while reading from smtp.qq.com:25 There was no response after 60 seconds.
-f 1523955650@qq.com 发件人邮箱
-t 1523955650@qq.com 收件人邮箱
-s smtp.qq.com 发件人邮箱的smtp服务器
-u "邮件标题" 邮件的标题
-o message-content-type=html 邮件内容的格式,html表示它是html格式
-o message-charset=utf8 邮件内容编码
-xu 1523955650@qq.com 发件人邮箱的用户名
-xp pepltaflcvuniied 发件人邮箱smtp授权码
-m "邮件内容" 邮件的具体内容
Timeout?咋回事呢,试用465和587端口,一样不行:
/usr/local/bin/sendEmail -f 1523955650@qq.com \
-t 1523955650@qq.com \
-s smtp.qq.com:465 \
-u "邮件主题" \
-o message-content-type=html \
-o message-charset=utf-8 \
-xu 1523955650@qq.com \
-xp pepltaflcvuniied \
-m "邮件内容"
sendEmail[3950]: ERROR => Timeout while reading from smtp.qq.com:465 There was no response after 60 seconds.
意思是邮件不让发了呗?不纠结了,换163试试。
发送163邮件
找到163邮箱,设置,找到如下图:
![](https://img.haomeiwen.com/i3139698/15263b9e2ef92d81.png)
开启smtp服务,然后找到客户端授权密码
:
![](https://img.haomeiwen.com/i3139698/019e23b4683b3bf1.png)
关闭再开启,可自己设置授权密码。
发送:
/usr/local/bin/sendEmail -f 13957348548@163.com \
-t 13957348548@163.com \
-s smtp.163.com \
-u "邮件主题" \
-o message-content-type=html \
-o message-charset=utf-8 \
-xu 13957348548@163.com \
-xp cloudtest123 \
-m "邮件内容"
sendEmail[4753]: invalid SSL_version specified at /usr/share/perl5/IO/Socket/SSL.pm line 575.
又怎么了?网上查了下,是perl版本问题,添加 -o tls=no
参数即可解决,参考 https://www.cnblogs.com/fjping0606/p/6774348.html
/usr/local/bin/sendEmail -f 13957348548@163.com \
-t 13957348548@163.com \
-s smtp.163.com \
-u "邮件主题" \
-o message-content-type=html \
-o message-charset=utf-8 \
-xu 13957348548@163.com \
-xp cloudtest123 \
-m "邮件内容" \
-o tls=no
sendEmail[5120]: Email was sent successfully!
查看邮箱验证:
![](https://img.haomeiwen.com/i3139698/742e4cefe3adbf77.png)
大功告成,下面可以愉快地配置zabbix邮件告警了!
网友评论