实操:zabbix关联邮箱触发报警提示操作

一:首先测试一下服务是否断掉

[root@client ~]# systemctl stop sshd
[root@client ~]# 

在这里插入图片描述

[root@client ~]# systemctl start sshd
[root@client ~]# 

在这里插入图片描述

二:设置邮件报警

在服务端配置

2.1 首先先配置自己的邮箱

这里我是用qq邮箱

邮箱发送协议:smtp,25端口

邮件接受协议,pop3 110端口 IMAP4 143端口

  • pop3与IMAP4的区别

POP3可以理解为单项通讯,比如删除接收到的邮件时,服务端还是存在这个邮件

而IMAP若是删掉本地的邮件,在服务端的也会被删掉

pop3允许电子邮件客户端下载服务器上的邮件,但是在客户端的操作(如移动邮件、标记已读等)不会反馈到服务器上

而IMAP提供webmail与电子邮件客户端的双向通道,客户端的操作都会反馈到服务器上,对邮件进行的操作,服务器上的邮件也会做相应动作

2.1.1 在邮箱设置中找到IMAP服务,选择开启,生成授权码

在这里插入图片描述
在这里插入图片描述

这个授权码用来验证身份

在这里插入图片描述

[root@server ~]# yum install mailx -y
[root@server ~]# vim /etc/mail.rc 
# For Linux and BSD, this should be set.
set bsdcompat
#文件末尾新增
set from=965483130@qq.com
set smtp=smtp.qq.com
set smtp-auth-user=965483130@qq.com
set smtp-auth-password=qcaspkj***ccbfai		#这里是自己的授权码
set smtp-auth=login		#使用登陆验证

2.1.2 测试mailx发送邮件

[root@server ~]# echo "hello world" | mail -s "testmail" 965483130@qq.com
[root@server ~]# echo “内容”    |    mail -s “标题” 邮箱地址

在这里插入图片描述

2.2 配置完成,接下来编写发送邮件脚本,一旦zabbix触发报警,就会自动执行脚本

2.2.1 zabbix可以调用脚本

[root@server ~]# vim mailx.sh
#!/bin/bash
#邮件发送

messages=`echo $3 | tr '\r\n' '\n'`
subject=`echo $2 |tr '\r\n' '\n'`
echo "${messages}" | mail -s "${subject}" $1 >> /tmp/mailx.log 2>&1
[root@server ~]# touch /tmp/mailx.log
#对于& 1 更准确的说应该是文件描述符 1,而1标识标准输出,stdout。
#对于2 ,表示标准错误,stderr。
#2>&1 的意思就是将标准错误重定向到标准输出。

2.2.2 将脚本移动到zabbix的指定目录下

[root@server ~]# cd /usr/lib/zabbix/
alertscripts/    externalscripts/ 
#常用脚本		  #扩展脚本
[root@server ~]# cd /usr/lib/zabbix/alertscripts/
[root@server alertscripts]# cp ~/mailx.sh .
[root@server alertscripts]# ls
mailx.sh

2.2.3 赋予权限

[root@server alertscripts]# chmod +x mailx.sh 
[root@server alertscripts]# chown -R zabbix.zabbix /tmp/mailx.log
[root@server alertscripts]# ll /usr/lib/zabbix/
total 0
drwxr-xr-x 2 zabbix zabbix 22 May 24 11:13 alertscripts
drwxr-xr-x 2 zabbix zabbix  6 Apr 27 18:23 externalscripts
[root@server alertscripts]# chown -R zabbix.zabbix /usr/lib/zabbix/

2.2.4 测试脚本

[root@server alertscripts]# ./mailx.sh 965483130@qq.com "./mail.sh" "cishijiaoben"
[root@server alertscripts]# tail -f /tmp/mailx.log 
^C
#有报错才会写入日志

在这里插入图片描述

脚本编写完成

三:配置zabbix报警触发参数

在web上面配置

3.1 管理-报警媒体类型-创建媒体类型

{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}

在这里插入图片描述
在这里插入图片描述

3.2 管理-用户-点击Admin-报警媒介

在这里插入图片描述
点击添加

类型选中刚才指定的脚本类型的报警

在这里插入图片描述
然后点击添加,点击更新
在这里插入图片描述

3.3 配置-动作-创建动作-删除默认标签-修改触发条件

默认的是被停用的
在这里插入图片描述
在这里插入图片描述

操作的默认参数
在这里插入图片描述
修改后的参数

默认操作步骤持续时间 60
默认标题 : {TRIGGER.STATUS}:{TRIGGER.NAME}
消息内容:

告警主机:{HOST.NAME}
告警 IP:{HOST.IP}
告警时间:{EVENT.DATE}-{EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息:{TRIGGER.NAME}:{ITEM.VALUE}
事件 ID:{EVENT.ID}
在这里插入图片描述

  • 恢复操作

默认标题:{TRIGGER.STATUS}:{TRIGGER.NAME}
消息内容:

恢复主机:{HOST.NAME}
恢复 IP:{HOST.IP}
恢复时间:{EVENT.DATE}-{EVENT.TIME}
恢复等级:{TRIGGER.SEVERITY}
恢复信息:{TRIGGER.NAME}:{ITEM.VALUE}
恢复 ID:{EVENT.ID}
在这里插入图片描述

  • 点击添加

在这里插入图片描述

四:测试报警

4.1 停掉sshd服务

[root@client ~]# systemctl stop sshd

在这里插入图片描述
在这里插入图片描述

触发邮件报警

4.2 恢复服务

[root@client ~]# systemctl start sshd

在这里插入图片描述

触发恢复操作邮件

备注:

使用钉钉的话,就需要申请一个机器人

微信的话,需要申请一个企业级账号

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值