一、安装软件

wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz

创建目录

mkdir /usr/local/bin

解压软件

tar zxf sendEmail-v1.56.tar.gz -C /usr/src

进入目录

cd /usr/src/sendEmail-v1.56

复制文件,并设置权限

cp -a sendEmail /usr/local/bin

chmod +x /usr/local/bin/sendEmail

安装组件

yum install perl-Net-SSLeay perl-IO-Socket-SSL -y

进入zabbix自定义的指定目录

可以查看zabbix_server.conf配置文件AlertScriptsPath变量是如何定义的。

cd /usr/local/zabbix/alertscripts/

编辑脚本

 cat sendmail.sh
#! /bin/bash
#
to=$1
subject=$2
body=$3
/usr/local/bin/sendEmail -f q865158909@163.com -t "$to" -s smtp.163.com -u "$subject" -o message-content-type=html -o message-charset=utf8 -xu q865158909@163.com -xp wb513692 -m "$body"

说明:

上面有4个地方我用紫色加粗字体表示了

a@domain.com 表示发件人邮箱

smtp.exmail.qq.com 表示邮箱的smtp服务器,因为我是用的腾讯企业邮箱。如果是其他邮箱,需要修改

password 表示发件人邮箱密码

编辑完成后,给脚本权限

chmod +x sendEmail.sh

chown zabbix.zabbix sendEmail.sh

手动执行一次脚本,后面的参数分别对应接收人,主题,内容

./sendEmail.sh c@domain.com test 123

登录c@domain.com的账户,查看邮件是否可以收到

如果脚本执行没有报错,收不到邮件的话,请检查linux网络问题,iptables、selinux是否关闭。

在测试脚本发送邮件失败出现如下问题:

sendEmail报错:at /usr/share/perl5/vendor_perl/IO/Socket/SSL.pm

centos7.2默认是 perl的版本是5.16,centos6.5的是5.10,后来把7的版本换成5.10,就可以正常发邮件了。

#### perl安装
wget http://www.cpan.org/src/5.0/perl-5.10..tar.gz
tar -zxf perl-5.10..tar.gz
cd perl-5.22.
./configure.gnu -des -Dprefix=/usr/local/perl
echo $?
make
make test
make install
mv /usr/bin/perl /usr/bin/perl.bak
ln -s /usr/local/perl/bin/perl /usr/bin/perl
perl -v

安装perl

二、进入zabbix安装界面配置

  1.点击管理->报警媒介类型 点击最右边的创建媒体类型

    

输入脚本名称,类型选择脚本

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

{ALERT.SENDTO}

{ALERT.SUBJECT}

{ALERT.MESSAGE}

2. 点击Admin用户

选择邮件报警

3.点击用户群组

点权限->添加

  选择所有

点击更新

点击配置->动作 点击默认的动作

点击动作->编辑

zabbix服务端出现邮件发送失败

Zabbix监控之邮件发送失败-smtp-server: 错误代码550与535

1. 查找两个邮箱的配置

发现两个邮箱的POP3/SMTP/IMAP的状态不一致,于是开通qixin_monitor@163.com的客户端授权密码。

2. 开通客户端授权密码

  

  

修改持续时间为60秒

修改步骤为3,表示触发3次动作

选择用户Admin

选择仅送到sendEmail.sh

点击更新

解释:默认的步骤是1-1,也即是从1开始到1结束。一旦故障发生,就是执行sendEmail.sh脚本发生报警邮件给Admin用户和zabbix administrator组。

假如故障持续了1个小时,它也只发送一次。如果改成1-0,0是表示不限制.无限发送

间隔就是默认持续时间60秒。那么一个小时,就会发送60封邮件。

zabbix3.4实现sendEmail邮件报警的更多相关文章

  1. zabbix3.4 实现sendEmail邮件报警

    zabbix3.4实现sendEmail邮件报警 转发:https://www.cnblogs.com/pythonal/p/7813948.html sendEmail是一个轻量级,命令行的SMTP ...

  2. 11 一步一步Zabbix4.4.0系统教你实现sendEmail邮件报警

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 一步一步Zabbix4.4.0系统教你实现sendEmail邮件报警 sendEmail是一个轻量 ...

  3. 12 Zabbix4.4.0系统sendEmail邮件报警优化

    点击返回:自学Zabbix之路 点击返回:自学Zabbix4.0之路 点击返回:自学zabbix集锦 12 Zabbix4.4.0系统sendEmail邮件报警优化 接上一章节  Zabbix4.4. ...

  4. zabbix3.0.4 配置邮件报警

    试验环境: LAMP环境 (LNMP环境已经成功了,为了避免干扰,我另一台LAMP主机) ### 我在做实验之前,作了时间同步,不知道这个有木有影响,一起说一下吧! yum -y install nt ...

  5. zabbix3.0.3 设置邮件报警

    在zabbix3.0.3 设置报警这里卡了两天.终于解决了,这里我使用的mailx来作为发送邮件的客户端 1.设置mailx发信账号 yum -y install mailx ln -s /bin/m ...

  6. zabbix3.4使用外部邮件报警

    打开web页面,找到 管理--报警媒介类型 打开 Email 填写外部邮箱信息 点击更新,这样发件人和邮箱服务器信息定义完成. 添加收件人信息: 接下来创建动作,配置---动作---选触发器 ok 过 ...

  7. zabbix3.4配置第三方邮件报警

    废话不多说,直接进入主题. 1.安装mailx [root@localhost ~]#yum install malix -y                        #yum安装malix [ ...

  8. 分布式监控系统Zabbix-3.0.3-完整安装记录(5)-邮件报警部署

    前面几篇陆续介绍了zabbix3.0.3监控系统的部署和监控项配置,今天这里分享下zabbix3.0.3的邮件报警的配置过程~由于采用sendmail发送邮件,常常会被认为是垃圾邮件被拒,所以不推荐这 ...

  9. 通过脚本发送zabbix邮件报警

    zabbix原生的报警媒介类型中,邮件报警是我们常用的方式.当我们在CentOS6上面安装zabbix3.0并配置邮件报警的时候,在邮件配置正确的前提下,不管触发器如何触发,邮件总是发送不出去,但是在 ...

随机推荐

  1. ValidateCode源码

    ValidataCode.java: package com.itcast; /** * @author 大汉 */ import java.awt.Color; import java.awt.Fo ...

  2. C#基础概念总结

    C#基础概念总结 1..NET Framework概念 2. C#的含义: 3.什么是面向对象编程: 4.Visual Studio开发工具: 5..NET程序运行的机制: 1..Net Framew ...

  3. px,em,rem的区别与用法

    别人总结的.个人觉得特别的好: http://www.w3cplus.com/css/when-to-use-em-vs-rem.html

  4. 华大单片机开发板HC32F030上手入门

    HC32F030开发板(如下图所示)分为板载调试模块(左半部分)和MCU开发电路(右半部分).二者中间通过邮票孔相连,如果将板子从中间掰开,板载调试模块就可以当一个CMSIS-DAP的仿真器来使用.此 ...

  5. ASP.NET Core 问题排查:Request.EnableRewind 后第一次读取不到 Request.Body

    实际应用场景是将用户上传的文件依次保存到阿里云 OSS 与腾讯云 COS ,实现方式是在启用 Request.EnableRewind() 的情况下通过 Request.Body 读取流,并依次通过 ...

  6. ublox TMOD2

    Survey_in模式就是为了当满足下面的条件的时候,自动跳转到fixmod

  7. mysql--表数据操作

    查询: 简单查询 ####查询的字段必须在表中存在 #### 对查询出来的数据进行修改时,不会修改原来的数据,只是修改了可视化的,我们看到的数据. # 查一个数据 select 字段名 from 表名 ...

  8. node.js爬取ajax接口数据

    爬取页面数据与爬取接口数据,我还是觉得爬取接口数据更加简单一点,主要爬取一些分页的数据. 爬取步骤: 1.明确目标接口地址,举个例子 : https://www.vcg.com/api/common/ ...

  9. 普通Java Web项目为什么lib包要放在WEB-INF下

    首先一个项目要编译好之后才能部署到Tomcat中运行. Tomcat运行时如何找编译好的.class文件呢,其实Tomcat下的web项目有两个预置的classpath(就是能找到.class文件的入 ...

  10. JavaWeb学习之三层架构实例(三)

    引言 通过上一篇博客JavaWeb学习之三层架构实例(二)我们基本上已经实现了对学生信息列表的增删改查操作(UI除外),但是不难看出,代码冗余度太高了,尤其是StudentDao这个类,其中的增删改查 ...