• 微信公众号:美女很有趣。 工作之余,放松一下,关注即送10G+美女照片!

zabbix监控邮箱报警

互联网 diligentman 2周前 (04-08) 6次浏览

文章目录

    • 环境
        • 1、安装邮件功能–服务器上配置
        • 2、配置邮件报警功能—服务器上配置
        • 3、编写发邮件脚本
        • 4、邮件报警测试

首先需要来牢记一下这几个协议
zabbix监控邮箱报警

smtp  邮件发送协议     端口号是25号端口
IMAP  邮件接收协议    端口号143端口
POP3  邮件接收协议    端口号110

IMAP和POP3的区别

POP3协议允许电子邮件客户端下载服务器上的邮件,但是在客户端的操作(如移动邮件、标记已读等),不会反馈到服务器上,比如通过客户端收取了邮箱中的3封邮件并移动到其他文件夹,邮箱服务器上的这些邮件是没有同时被移动的 。

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

环境

这里邮箱告警我使用的是163邮箱,首先要在邮箱里进行设置,否则是接收不到邮件的
zabbix监控邮箱报警
zabbix监控邮箱报警
前期zabbix已部署完成,详见博客:

1、安装邮件功能–服务器上配置

yum install -y mailx

zabbix监控邮箱报警

2、配置邮件报警功能—服务器上配置

vim  /etc/mail.rc   ##注意网易邮箱需要开启客户端授权码进行第三方登录
------文件末尾新增------
set from=pan***ju**903@163.com ##个人邮箱就不方便暴露了
set smtp=smtp.163.com
set smtp-auth-user=pan***ju**903@163.com
set smtp-auth-password=VMXHCPYUSDLYCWAK
set smtp-auth=login

zabbix监控邮箱报警

echo "hello junjun" | mail -s "zb-test" pan***ju**903@163.com
## 测试发信正常
然后进入邮箱查看是否收到邮件

zabbix监控邮箱报警
zabbix监控邮箱报警

3、编写发邮件脚本

1、编写脚本

脚本位置必须在 /usr/lib/zabbix/alertscripts/

在zabbix工作目录中编写脚本
cd /usr/lib/zabbix/alertscripts
vim mailx.sh
#!/bin/bash
#send mail
messages=`echo $3 | tr 'rn' 'n'`
subject=`echo $2 | tr 'rn' 'n'`
echo "${messages}" | mail -s "${subject}" $1 >>/tmp/mailx.log 2>&1

zabbix监控邮箱报警
2、 创建日志文件目录并更改权限

touch /tmp/mailx.log 
chown -R zabbix.zabbix  /tmp/mailx.log 
chmod +x /usr/lib/zabbix/alertscripts/mailx.sh
chown -R zabbix.zabbix /usr/lib/zabbix/

zabbix监控邮箱报警
3、测试脚本发邮件

./mailx.sh pa**en*****03@163.com "主题" "内容"

## 测试发邮件脚本是否可以正常工作

zabbix监控邮箱报警
zabbix监控邮箱报警

4、服务器web页面配置

管理--》报警媒介类型--》创建媒体类型--

zabbix监控邮箱报警
① 添加报警媒介类型

脚本参数{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}

zabbix监控邮箱报警

zabbix监控邮箱报警

② 添加报警媒介

web页面–管理–用户–点击Admin–报警媒介–添加–填写完成后点击添加完成添加媒介
zabbix监控邮箱报警
zabbix监控邮箱报警
zabbix监控邮箱报警
zabbix监控邮箱报警

现在用户有了,用户能够操作媒介了。现在就是要监控的东西关联到用户

③ 、配置–动作–创建动作–删除默认标签,修改触发条件

zabbix监控邮箱报警
zabbix监控邮箱报警

'默认标题':Problem:{EVENT.NAME}
'消息内容':
告警主机:{HOST.NAME}
告警 IP:{HOST.IP}
告警时间:{EVENT.DATE}-{EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息:{TRIGGER.NAME}:{ITEM.VALUE}
事件 ID:{EVENT.ID}

zabbix监控邮箱报警

'默认标题'{TRIGGER.STATUS}:{TRIGGER.NAME}
'消息内容':
恢复主机:{HOST.NAME}
恢复 IP:{HOST.IP}
恢复时间:{EVENT.DATE}-{EVENT.TIME}
恢复等级:{TRIGGER.SEVERITY}
恢复信息:{TRIGGER.NAME}:{ITEM.VALUE}
恢复 ID:{EVENT.ID}

zabbix监控邮箱报警
最后点击最下方的添加用于完成添加整个动作

④ 服务端重启服务

systemctl restart zabbix-server
systemctl restart zabbix-agent.service

4、邮件报警测试

可以在被监控主机上模拟相关参数超过阈值或服务异常,验证邮件收发。

systemctl stop sshd  ## 这里关闭sshd服务,为了测试一下
等待三分钟左右

zabbix监控邮箱报警

zabbix监控邮箱报警
重启sshd

systemctl start sshd  #需要等待3分钟左右

zabbix监控邮箱报警


程序员灯塔
转载请注明原文链接:zabbix监控邮箱报警
喜欢 (0)