zabbix邮件报警发送至qq邮箱

zabbix邮件报警设置

第一、安装邮件发送工具mailx

这里我选择的是mailx,所以的关闭其他的邮件发送工具

service sendmail  start #开启,因为发送邮件需要开启25端口
   chkconfig sendmail  off #禁止开机启动
   service postfix  stop
   chkconfig postfix  off

执行安装mailx的命令:yum install mailx

第二、配置Zabbix服务端外部邮箱

打开文件vi /etc/mail.rc 如果mail.rc文件没有,就手动创建 内容如下:

set sendcharsets=iso-8859-1,utf-8
     set [email protected]

set smtp=smtp.qq.com

     set [email protected]
     set smtp-auth-password=********
     set smtp-auth=login
     set ssl-verify=ignore
     set nss-config-dir=/etc/pki/nssdb

第三、测试邮件是否可以发出

echo"zabbix test mail" |mail -s "zabbix" [email protected]

#这时候,邮箱[email protected]会收到来自[email protected]的测试邮件

第四、编写发送邮件脚本

进入下面路径:/usr/local/zabbix/share/zabbix/alertscripts

创建sendmail.sh文件,内容如下

#!/bin/bash

to=$1
subject=$2
file="/tmp/mail$RANDOM"
echo $3 > $file

sed -i -e ‘s/ //g‘ -e ‘s/\r/\n/g‘ $file

date "+%F %T" >> /usr/local/zabbix/share/zabbix/alertscripts/sendmail.log
echo "$to" "$subject" >> /usr/local/zabbix/share/zabbix/alertscripts/sendmail.log
cat "$file" >> /usr/local/zabbix/share/zabbix/alertscripts/sendmail.log

cat "$file" | /bin/mail -s "$subject" "$to"
rm -f $file

上面的这个三个参数是接收从web页面中传递过来的,$1:收件人邮箱地址;$2:邮件标题;$3:邮件内容

为什么我们会在这个路径下面创建这个脚本呢,这是在我们的zabbix_server.conf文件中配置的

AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts

所以你不想将这个脚本放在这个目录下面,需要修改服务端的配置文件中的AlertScriptsPath的值

第四、配置web页面

4.1、创建媒体类型

点击创建媒体类型

添加以下3个参数,分别对应sendmail.sh脚本需要的3个参数:收件人地址、主题、详细内容
      {ALERT.SENDTO}
      {ALERT.SUBJECT}
      {ALERT.MESSAGE}

如果在3.0中不添加这三个参数会报错,因为在3.0以后zabbix允许自定义参数了,所以不会默认传递参数,在2.0的时候会默认传递三个参数,所以在3.0如果不写这三个参数会报错。

4.2、给用户添加报警媒介

在这以Admin用户为例 管理—》用户—》点击Admin

点击Admin

4.3、创建动作

填写动作选项

除了自己填写一个名称以外,其余的都默认就好了。当然也可以修改成中文:参考如下

默认接收人:故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生:{TRIGGER.NAME}故障!
 默认信息:
 告警主机:{HOSTNAME1}
 告警时间:{EVENT.DATE}{EVENT.TIME}
 告警等级:{TRIGGER.SEVERITY}
 告警信息: {TRIGGER.NAME}
 告警项目:{TRIGGER.KEY1}
 问题详情:{ITEM.NAME}:{ITEM.VALUE}
 当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
 事件ID:{EVENT.ID}
 恢复信息:打钩
 恢复主旨:恢复{TRIGGER.STATUS},服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
 恢复信息:
 告警主机:{HOSTNAME1}
 告警时间:{EVENT.DATE}{EVENT.TIME}
 告警等级:{TRIGGER.SEVERITY}
 告警信息: {TRIGGER.NAME}
 告警项目:{TRIGGER.KEY1}
 问题详情:{ITEM.NAME}:{ITEM.VALUE}
 当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
 事件ID:{EVENT.ID}
 已启用:打钩

填写条件选项

填写操作详细信息

解释:默认的步骤是1-1,也即是从1开始到1结束。一旦故障发生,就是执行sendEmail.sh脚本发生报警邮件给Admin用户和zabbix administrator组。假如故障持续了1个小时,它也只发送一次。如果改成1-0,0是表示不限制.无限发送 间隔就是默认持续时间60秒。那么一个小时,就会发送60封邮件。

到这我们的邮件报警配置就完成了,这是只要我们设置的触发器触发,就会自动给我发送报警邮件。

测试邮件报警

我将zabbix自带的模板中的对可用内存的监控中的触发器的临界值改为大于0,进入模板列表

点击触发器

点击修改

保存以后 我将每一分钟收到一份报警邮件 内容如下:

时间: 2024-10-03 13:38:39

zabbix邮件报警发送至qq邮箱的相关文章

zabbix4.2配置邮件报警:以QQ邮箱为例

一.邮箱配置:开启smtp服务和授权 开启smtp选项后,系统会生成一个授权,你需要记住这个授权码,后面需要写入配置文件. 二.配置管理mailx: (1)安装mailx:[[email protected] ~]# yum install -y mailx    (2)请求数字证书(这里以qq邮箱为例): [[email protected] ~]# mkdir -p /home/zabbix/.certs [[email protected] ~]# echo -n | openssl s_

Python通过smtp服务发送电子邮件给指定用户(适用于Zabbix邮件报警)

当下免费的邮件服务很多,例如163企业邮箱.QQ企业邮箱等.不需要自己搭建邮件服务器发送邮件给指 定用户,只需要注册任何一个支持smtp协议的邮箱就可以实现发送邮件.发送邮件可以通过Linux命令.自己编写的Shell脚本,也可以通过Python写的Python脚本. 如下代码是一个简单却实用的示例.默认无参数执行时,发送预设的邮件主题和邮件内容到预设的用户.带参数执行时将指定的主题和邮件内容发送到指定的用户.带参数执行可用于Zabbix邮件报警脚本. 对于Zabbix2.x可以直接填写脚本名字

C#发送Email邮件(实例:QQ邮箱和Gmail邮箱)

下面用到的邮件账号和密码都不是真实的,需要测试就换成自己的邮件账号. 需要引用: using System.Net.Mail; using System.Text; using System.Net; 程序代码: MailMessage myMail = new MailMessage(); //创建邮件实例对象 myMail.From = new MailAddress(""); //发送者,要和邮件服务器的验证信息对应,不能随便更改 myMail.To.Add(new MailAd

zabbix 邮件报警(五)

一.sendEmail配置zabbix邮件报警 1.下载sendEmail: wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz 2.配置sendEmail: # yum -y install perl-Net-SSLeay perl-IO-Socket-SSL # 安装组件 # tar xf sendEmail-v1.56.tar.gz -C /usr/src/ # cd /usr/src

Zabbix邮件报警配置

一.安装sendmail或者postfix(安装一种即可) yum install sendmail                #安装 service sendmail start              #启动 chkconfig sendmail on                #设置开机启动 或者 yum install postfix service postfix start chkconfig postfix on 二.安装邮件发送工具mailx yum install m

zabbix 邮件报警的配置

一.安装以及配置邮件服务 1.查看是否已经安装该服务 rpm -qa | grep mailx    //如果已经安装则无需再安装 2.安装 yum install mailx 3.修改以下配置文件 vim /etc/mail.rc 添加如下内容: set [email protected] smtp=smtp.qq.com               //填写自己邮箱的地址 set smtp-auth-user=用户名  smtp-auth-password=密码     //邮箱的用户名以及

05、zabbix邮件报警

Zabbix监控服务端.客户端都已经部署完成,被监控主机已经添加,Zabiix监控运行正常,通过查看Zabbix监控服务器,可以了解服务器的运行状态是否正常,运维人员不会时刻登录Zabbix监控平台刷新,查看服务器的状态. 可以在Zabbix服务端设置邮件报警,当被监控主机宕机或者达到设定的触发器预设值时,不管任何时候,会自动发送报警邮件.微信信息到指定的人员,运维人员收到信息有利于第一时间解决故障.Zabbix邮件报警设置步骤如下: 1) 设置邮件模板及邮件服务器 Administration

zabbix 邮件报警设置

zabbix 邮件报警设置 1.创建报警类型 登陆到zabbix--------------管理-----------示警媒体类型的配置-------------创建示警媒体类型 2创建一个动作 选择配置----------动作-----------事件源选择触发器----------创建动作 1.添加一个zabbix报警用户 选择管理------------用户------------------创建用户

通过脚本发送zabbix邮件报警

zabbix原生的报警媒介类型中,邮件报警是我们常用的方式.当我们在CentOS6上面安装zabbix3.0并配置邮件报警的时候,在邮件配置正确的前提下,不管触发器如何触发,邮件总是发送不出去,但是在CentOS7上面安装的zabbix3.0却可以正常发送邮件.究其原因,是因为zabbix3.0对服务器上的libcurl版本有要求(CentOS6.9上的默认curl版本为7.19.7,而CentOS7.2上的默认libcurl版本为7.29.0),zabbix3.0所要求的的版本说明在zabbi