Zabbix使用外部邮箱服务器发送邮件报警

zabbix服务端配置:

操作系统:CentOS7_x64

1、  安装一个邮件发送程序mailx工具

[[email protected] ~]# yum install mailx -y

打开mailx配置文件,在末尾添加如下信息:

[[email protected] ~]# vi /etc/mail.rc

set [email protected] smtp=smtp.163.com

[email protected] smtp-auth-password=123456

set smtp-auth=login

2、  测试是否能正常发送邮件

[[email protected] ~]# echo "this is test mail." |mail -s "test mail" [email protected]

注:如果正常收到邮件,说明配置成功!

3、  写邮件发送脚本

[[email protected] ~]# cd /usr/local/zabbix/share/zabbix/alertscripts

[[email protected]]# vi sendmail.sh

#!/bin/bash
file=/tmp/zabbix_mail.txt
echo"$3" > $file
dos2unix-k $file
/bin/mail-s "$2" $1 < $file
#echo"$3" | mail -s "$2" $1 #如果发送邮件完全是英文的,可以只使用这一条

注:使用dos2unix工具是为解决zabbix发送邮件出现乱码情况。

$3 是前端定义的邮件内容,$2是前端定义的标题,$1是前端定义的收件人

更改脚本属主组并添加执行权限:

[[email protected]]# chown zabbix.zabbix sendmail.sh

[[email protected]]# chmod +x sendmail.sh

以上是服务端配置,以下是前端配置:

1、  创建一个媒体类型

2、  给用户添加收件人

3、  添加动作

先配置Operations菜单,否则在Action菜单会添加不成功:

主题:Problem:{TRIGGER.NAME}

内容:

Host: {HOSTNAME1}

Date: {EVENT.DATE} {EVENT.TIME}

Level: {TRIGGER.SEVERITY}

Problem: {ITEM.NAME}:{ITEM.VALUE}

Item: {TRIGGER.KEY1}

CurrentStatus: {TRIGGER.STATUS}:{ITEM.VALUE1}

EventID: {EVENT.ID}

前端配置完毕,为了防止本地的Email影响,你可以禁用,只留我们自定义的外部邮箱。

配置正常的话,这时已经可以使用外部邮箱发邮件,你可以关掉一台zabbix_agentd测试下,看会不会触发告警,给你发邮件。祝你成功!

时间: 2024-10-18 09:38:13

Zabbix使用外部邮箱服务器发送邮件报警的相关文章

zabbix下如何通过sendmail发送邮件报警

我的zabbix相关环境:          OS: centos 5.4  x86_64       zabbix:   1.8.3     sendmail:  8.13.8-2.el5    在配置zabbix的Email报警之前,需要将sendmail使用的域名进行相应的修改,系统默认为localhost.localdomain,其实不改也行,不过有些pop3服务器会过滤掉来自localhost.localdomain的邮件,导致邮件不能正常查收,所以,最好是改一下 hostname,确

zabbix 利用外部邮件设置邮件报警

一.Linux服务端设置1.先检查sendmail或postfix是否关闭service sendmail stop chkconfig sendmail offservice postfix stopchkconfig postfix off 2.安装mailx邮件发送工具yum remove mailx #先卸载老版本的mailx下载安装新版本的mailxtar zxvf heirloom-mailx_12.5.orig.tar.gz cd heirloom-mailx_12.5.origm

Linux发送邮件使用外部邮箱

一般Linux发送报警邮件通过本地邮箱或外部邮箱服务器,我习惯使用本地邮箱发邮件,装个Sendmail安装启动,即可实现发送邮件功能,但会存在两个问题: 1.发件人默认显示主机名,有的会被邮件服务商当垃圾邮件处理,也可以使用mutt定义发件人解决这个问题,要麻烦一下. 2.发件延迟,正常的话,一分钟之内可以收到,延迟大的话,几个小时收不到也很正常,这样一来运维工程师没有及时收到告警邮件,耽误问题处理及时性. 针对这两个问题,用外部邮箱就可以解决,你只需简单注册个国内的邮件服务商邮箱,如163,也

使用Zabbix服务端本地邮箱账号发送报警邮件的部署记录

邮件报警有两种情况:1)Zabbix服务端只是单纯的发送报警邮件到指定邮箱,发送报警邮件的这个邮箱账号是Zabbix服务端的本地邮箱账号(例如:[email protected]),只能发送,不能接收外部邮件.2)使用一个可以在互联网上正常收发邮件的邮箱账号(例如:[email protected]),通过在Zabbix服务端中设置,使其能够发送报警邮件到指定邮箱.上面第2中使用外部邮箱发送报警邮件之前已经介绍了:分布式监控系统Zabbix-3.0.3-完整安装记录(5)-邮件报警部署.下面说下

Zabbix利用msmtp+mutt发送邮件报警

Zabbix利用msmtp+mutt发送邮件报警Zabbix支持多种报警的方式,其中成本最低.最方便的就是邮件报警的方式了.但是因为它不支持邮件的用户认证,这种方式现在也非常少见,同时安全性也差,如果在本机建邮件服务器的话也容易被误入垃圾邮件. 现在我们使用163的邮箱或者自己公司内部的邮箱,利用msmtp+mutt完成邮件的报警.(当然也可以利用移动139的邮箱或者联通沃邮箱,可以达到短信通知) 1.msmtp的安装 wget http://jaist.dl.sourceforge.net/p

Zabbix调用外部脚本发送邮件:python编写脚本

Zabbix调用外部脚本发送邮件的时候,会在命令行传入两个参数,第一个参数就是要发送给哪个邮箱地址,第二个参数就是邮件信息,为了保证可以传入多个参数,所以假设有多个参数传入 #!/usr/bin/env python #encoding:utf8 # # Zabbix Server 发送邮件脚本 # from email import encoders from email.header import Header from email.mime.text import MIMEText fro

通过SSIS监控远程服务器Windows服务并发送邮件报警!

原文:通过SSIS监控远程服务器Windows服务并发送邮件报警! 利用SSIS不仅可以做BI项目的ETL,而且还可以做一些系统监控和维护工作,由于之前供应商写的Windows服务是读取ESB的消息进行处理,且通过OA流程与访客系统进行了集成,无论是ESB出现状况,还是Windows服务出现状况,都会对访问系统造成严重影响,导致内部员工无法进行接待外部人员,因此整体对ESB进行优化,在本人博客的前一篇已介绍了<通过SSIS监控远程服务器磁盘空间并发送邮件报警!>.本文实现的方法思路与此相同,仅

Zabbix监控 之sendEmail脚本邮件报警配置【5】

本次zabbix邮件报警时通过sendEmail这一个轻量级的命令行的smtp电子邮件客户端,使用脚本的方式实现邮件报警. 此次使用的Linux发行版是CentOS 6.5,zabbix版本为3.0.3 Zabbix监控之不发送邮件异常[附属] 一.下载sendEmail wget http://caspian.dotconf.net/menu/Software/SendEmail/sendEmail-v1.56.tar.gz sendEmail安装方法: 1 2 3 shell# tar xv

Linux 通过sendmail 发邮件到外部邮箱

Linux 通过sendmail 发邮件到外部邮箱 最近在写自动化巡检脚本,想着怎么预警后自动发送邮件报警. 首先下载最新版本mailx-12.4.tar.bz2 # wget http://sourceforge.net/projects/heirloom/files/latest/download?source=files 解压包: # tar jxvf mailx-12.4.tar.bz2 # cd mailx-12.4 # make # make install UCBINSTALL=/