zabbix实现邮件告警的方法

2025-05-27 0 108

根据网络教程实现。zabbix3.4,使用脚本和sendemail。

1.下载并解压缩sendemail到/usr/local/bin下面,修改权限。

下载网址:

sendemail – send email with this free command line email client http://caspian.dotconf.net/menu/software/sendemail/

修改权限:

chownzabbix:zabbix/usr/local/bin/sendemail

2.进行发邮件测试。

?

1
/usr/local/bin/sendemail -f xxxx@163.com(发件邮箱) -s smtp.163.com -u "邮件标题" -m "邮件内容" -o message-content-type=html -o message-charset=utf8 -xu xxxx@163.com(发件邮箱账号) -xp “网易邮箱授权码” -t “目标邮箱”

3.发邮件测试通过后,进入/usr/local/zabbix/share/zabbix/alertscripts/目录,并新建mail.sh文件,授予权限;

4.mail.sh内容:

?

1

2

3

4

5
#!/bin/bash

to=$1

subject=$2

body=$3

/usr/local/bin/sendemail -o tls=auto -f xxxx@163.com -t "$to" -s smtp.163.com -u "$subject" -o message-content-type=html -o message-charset=utf8 -xu xxxx@163.com -xp "邮箱客户端授权码" -m "$body"

5.测试报错

?

1

2

3

4

5

6

7

8

9

10

11
[root@centos7 alertscripts]# ./mail.sh “目标邮箱” test_topic hello_world!

*******************************************************************

using the default of ssl_verify_mode of ssl_verify_none for client

is deprecated! please set ssl_verify_mode to ssl_verify_peer

possibly with ssl_ca_file|ssl_ca_path for verification.

if you really don't want to verify the certificate and keep the

connection open to man-in-the-middle attacks please set

ssl_verify_mode explicitly to ssl_verify_none in your application.

*******************************************************************

at /usr/local/bin/sendemail line 1906.

invalid ssl_version specified at /usr/share/perl5/vendor_perl/io/socket/ssl.pm line 444.

在sendemail中1906行的内容,从

if (! io::socket::ssl->start_ssl($server, ssl_version => ‘sslv3 tlsv1‘)) {

修改为

if (! io::socket::ssl->start_ssl($server)) {

再次测试,成功。

?

1

2

3

4

5

6

7

8

9

10

11
[root@centos7 alertscripts]# ./mail.sh “目标邮箱” test_topic hello_world!

*******************************************************************

using the default of ssl_verify_mode of ssl_verify_none for client

is deprecated! please set ssl_verify_mode to ssl_verify_peer

possibly with ssl_ca_file|ssl_ca_path for verification.

if you really don't want to verify the certificate and keep the

connection open to man-in-the-middle attacks please set

ssl_verify_mode explicitly to ssl_verify_none in your application.

*******************************************************************

at /usr/local/bin/sendemail line 1906.

aug 08 15:42:42 wanbu sendemail[25763]: email was sent successfully!

6.zabbix-web配置

zabbix3.4中,有3处需要配置,actions,media type,users。actions负责判断,发送邮件;media type负责选择脚本,传递参数;users负责明确告警信息发送给谁等信息。

按照官网的介绍配置即可,这部分实在懒得写了。唯一需要注意的是,media type需要添加3个参数,分别是{alert.sendto},{alert.subject},{alert.mesage},分别对于mail.sh中的to、subject和body。

zabbix实现邮件告警的方法

7.最后,点击“reports”-“action log”,可以查看邮件是否发送成功,不成功的原因。

zabbix实现邮件告警的方法

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对快网idc的支持。如果你想了解更多相关内容请查看下面相关链接

原文链接:https://blog.csdn.net/zsx0728/article/details/81510017

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

快网idc优惠网 行业资讯 zabbix实现邮件告警的方法 https://www.kuaiidc.com/63888.html

相关文章

发表评论
暂无评论