zabbix报警发送邮件配置

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zabbix报警发送邮件配置相关的知识,希望对你有一定的参考价值。

  1. 先创建组和用户,这个组内的用户只是用来监控的,所以权限只给读权限,报警媒介输入邮箱地址。

    技术分享




2.在 配置-动作 选择创建动作。

技术分享


3.填写动作名称,触发条件。

技术分享


4.操作填写触发后执行的动作,远程执行命令或发送邮件:

#默认信息,这里是宏变量,可以设置成中文,这里我常用的是下面这个。
告警主机:{HOST.NAME}
主机IP: {HOST.IP}
告警时间:{EVENT.DATE}  {EVENT.TIME} 
告警等级:{TRIGGER.SEVERITY} 
告警信息:{TRIGGER.NAME}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
事件ID: {EVENT.ID}

技术分享


5.在管理-报警媒介处选择报警类型(注意以下三处)。

技术分享


1)这里脚本名称是Email.sh,所以要在zabbix的安装目录中创建一个脚本:

我这里的zabbix3.2是编译安装的,所以脚本目录应放在/usr/local/zabbix/etc/alertscripts/下,yum安装的应放在/etc/zabbix/alertscripts/下。

mkdir -p /usr/local/zabbix/etc/alertscripts/
cd /usr/local/zabbix/etc/alertscripts/

2)编写发送邮件的脚本

$1:邮件地址。

$2:邮件主题。

$3:邮件内容


vi Email.sh

#!/bin/sh
#export.UTF-8
FILE=/tmp/mailtmp.txt
echo "$3" >$FILE
dos2unix -k $FILE
/bin/mail -s "$2" $1 < $FILE

注意:这里的Email.sh脚本一定要有可执行权限,mailtmp.txt同样需要可执行权限,否则发送的邮件会有问题。

chmod +x Email.sh
touch /tmp/mailtmp.txt
chmod 777 /tmp/mailtmp.txt


3)安装发送邮件的工具postfix或者申请一个163邮箱的smtp,这里用第二种方式,用163邮箱作为发送邮件的工具。

首先卸载linux自带的邮件发送工具。

yum remove sendmail postfix -y

申请一个163邮箱,然后设置smtp:

技术分享

点击客户端授权密码,开启以后会得到一个密码,这个密码下面就要用到。

技术分享




4)在服务器上编辑邮件mailx,没有的话需要安装:

yum install -y mailx
vi /etc/mail.rc 
#在配置文件最后添加如下内容:
set bsdcompat
set [email protected]   
set smtp=smtp.163.com
set [email protected]
set smtp-auth-password=123456   #这个密码就是刚才开启的163客户端授权密码
set smtp-auth=login


5)测试Email.sh脚本发送邮件是否能成功:

/usr/local/zabbix/etc/alertscripts/Email.sh [email protected] "test" "test email"


6)如果脚本测试成功,那说明linux系统发送邮件是没有问题的,如果zabbix触发了事件,结果没收到邮件,就要检查zabbix的设置了。



本文出自 “王家东哥” 博客,谢绝转载!

以上是关于zabbix报警发送邮件配置的主要内容,如果未能解决你的问题,请参考以下文章

通过脚本发送zabbix邮件报警

zabbix-05-报警配置

Zabbix - 邮件报警配置

zabbix报警发送邮件配置

Centos6.5+nginx+php+myql+zabbix 配置邮件报警(qq邮箱)

zabbix上怎么通过sendmail发送邮件报警