作为一个专业的监控运维,不可能一个 Zabbix系统监控架构部署好就一直盯着仪表盘或者问题表单看,这多浪费人力以及时间啊,所以这里将记录 Zabbix 监控触发邮件报警的配置过程,由于可能有些企业的 Zabbix 部署在了云端,比如:阿里云,腾讯云,百度云这些厂商,但他们的 25 号端口是禁止使用的,这是后我们只能用别的办法,就是配合邮件发送工具mailx使用第三方的邮件服务器发送

安装邮件发送工具mailx

yum -y install mailx

配置mailx外部邮箱

配置/etc/mail.rc文件的外部邮箱信息

#邮箱地址set [email protected]#邮箱服务器地址set smtp="smtps://smtp.0x50j.cn:465"#邮箱服务器登陆用户账号set [email protected]#邮箱服务器登陆用户密码set smtp-auth-password=123456#邮箱服务器登陆方式set smtp-auth=login#使用SSL的方式发送邮件set smtp-user-starttlsset ssl-verify=ignore#ssl.crt地址set nss-config-dir=/etc/mail.rc_ssl.crt


需配置SSL证书,这里将配置文件夹放在了/etc/mail.rc_ssl.crt,文件内容为*.db


SSL证书包附件: mail.rc_ssl.crt.zip  下载

测试邮件发送

echo "This is Zabbix Test Mail" | mail -s "Zabbix" [email protected]

编写 Zabbix 邮件发送脚本

#!bin/bashFILE=/tmp/mailtmp.txtecho "$3" > $FILE#转译,不然邮件显示是附件dos2unix -k $FILE/bin/mail -s "$2" $1 <  $FILE

修改配置文件/usr/local/zabbix/etc/zabbix_server.conf

AlertScriptsPath=/usr/local/zabbix/etc/alertscripts

修改权限,以及创建临时文本

#创建临时文本touch /tmp/mailtmp.txtchown zabbix.zabbix /tmp/mailtmp.txt#赋予脚本执行权限和更改属主chown zabbix.zabbix sendmail.shchmod +x sendmail.sh

Zabbix Web界面调试

设置报警媒介类型

Zabbix 发送邮件报警_第1张图片

{ALERT.SENDTO},{ALERT.SUBJECT},{ALERT.MESSAGE}这三个参数分别代表接收邮件的地址,邮件主题,邮件内容

设置报警动作

Zabbix 发送邮件报警_第2张图片

邮件主题:
About {EVENT.NAME}

邮件内容:
Event Host:{HOSTNAME}

Event Time:{EVENT.DATE} {EVENT.TIME}

Event Level:{TRIGGER.SEVERITY}

Event Msg: {TRIGGER.NAME}

Event Item:{TRIGGER.KEY1}

Event Details:{ITEM.NAME}

Event ID:{EVENT.ID}

Zabbix 发送邮件报警_第3张图片