zabbxi 邮件告警推送有两种方式:

  1.使用zabbix服务端的本地邮箱账号发送,邮件名为:user@hostname.localdomain,user为发送邮件的用户,hostname为zabbix-server的主机名,该邮箱只能发送,不能接收外部邮件;

  2.使用外部邮箱指定为告警发送邮箱

本文采用第2种方式进行配置

  1.在线安装:yum -y install sendmail

systemctl start sendmail.service #启动sendmail
systemctl enable sendmail.service #设置开机自起
systemctl stop sendmail.service #停止sendmail

  2.安装邮件发送工具mailx: yum -y install mailx

  3.我是用的是腾讯的企业邮箱,需要在服务器上下载SSL证书:

mkdir -p /root/.certs/
echo -n | openssl s_client -connect smtp.qq.com: | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > ~/.certs/qq.crt
certutil -A -n "GeoTrust SSL CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
certutil -A -n "GeoTrust Global CA" -t "C,," -d ~/.certs -i ~/.certs/qq.crt
certutil -A -n "GeoTrust SSL CA - G3" -t "Pu,Pu,Pu" -d ~/.certs/./ -i qq.crt
certutil -L -d /root/.certs

  4..配置外部邮箱:编辑   view /etc/mail.rc

set from=service@****.com#发件箱
set smtp=smtps://smtp.exmail.qq.com:465 #smtp地址,我用的腾讯企业邮箱 我是用的是阿里云服务器 阿里云把邮件的默认25端口给禁用掉了,可以申请解除,本文用的465端口来发送邮件
set smtp-auth-user=serice@******.com
set smtp-auth-password=****** #邮箱授权码
set smtp-auth=login
set nss-config-dir=/etc/pki/nssdb
set ssl-verify=ignore #ssl认证方式
set nss-config-dir=/root/.certs #证书所在目录 

  5.测试邮箱发送(查看邮箱是否收到邮件):echo "zabbix test mail" |mail -s "zabbix" server@******.com 

  6..编写邮件发送脚本

    1.修改脚本路径:vim /etc/zabbix/zabbix_server.conf

AlertScriptsPath=/etc/zabbix/alertscripts

    2.编写脚本mail.sh
      进入zabbix目录:cd /ect/zabbix
      创建alertscripts文件夹并进入文件夹创建mail.sh文件: mkdir alertscripts && cd alertscripts && touch mail.sh
      编辑mail.sh文件:vim mail.sh (将以下粘贴到mial.sh中)

#!/bin/bash
echo "$3" | mail -s "$2" $ //$1:收件人邮箱地址;$2:邮件标题;$3:邮件内容

      为mail.sh授权:chmod 755 mail.sh
  7.web端配置
    1.创建报警媒介类型 (脚本参数分别对应:收件人地址、主题、详细内容)
    

    2.配置用户 选择admin用户

    

  

  3.添加报警媒介

4.创建报警动作 配置-动作-创建动作,新建动作:

  5.新建操作:

    新建操作就是通过何种方式将消息发送给谁,其它选项默认。

    6.添加恢复操作

    7.添加后的动作:

   

  7.测试邮件告警

    新增告警项,在agent端/home文件系统使用dd命令创建文件,将文件系统使用率提升至90%以上以触发告警:

dd if=/dev/zero of=test bs=1M count=2000 #用dd命令生成一个2000M的test文件,使/home使用率告警。

  触发邮件告警:

  

  发现邮件以附件方式发送,显示不正常,修改邮件发送脚本。

  安装dos2unix转换工具:yum -y install dos2unix

  编辑发送脚本:

 cd /etc/zabbix/alertscripts
touch mailtmp.txt && chmod mailtmp.txt
chown -R zabbix:zabbix /etc/zabbix/alertscripts/ more mail.sh
  #!/bin/bash
  FILE=/etc/zabbix/alertscripts/mailtmp.txt
  echo "$3" >$FILE
  dos2unix -k $FILE
  cat $FILE|/bin/mail -s "$2" $

  注意:dos2unix命令执行的时候会产生临时文件,所以要有写的权限,故应修改alertscripts目录属主,不然测试过程中会报错:‘dos2unix: Failed to open temporary output file: 权限不够’。

  发现正文不再以附件形式显示。

  查看告警日志:

  

  至此邮件告警配置完成。

 

zabbix 邮件报警配置的更多相关文章

  1. Zabbix邮件报警配置

    一.安装sendmail或者postfix yum install sendmail #安装 service sendmail start #启动 chkconfig sendmail on #设置开 ...

  2. zabbix 邮件告警配置

    使用外部邮箱账号发送报警邮件设置 一.关闭sendmail或者postfix service sendmail stop #关闭 chkconfig sendmail off #禁止开机启动 serv ...

  3. zabbix邮件报警设置

    第一.安装邮件发送工具mailx 这里我选择的是mailx,所以的关闭其他的邮件发送工具 service sendmailstop #关闭   chkconfig sendmailoff #禁止开机启 ...

  4. Zabbix 邮件报警示例

     Zabbix 邮件报警示例: 1.编辑 mail.rc 文件添加默认的邮箱配置 # vi /etc/mail.rc set from=1234567@qq.com set smtp=smtp.qq. ...

  5. zabbix 邮件报警(五)

    一.sendEmail配置zabbix邮件报警 1.下载sendEmail: wget http://caspian.dotconf.net/menu/Software/SendEmail/sendE ...

  6. linux中Zabbix邮件报警设置配置步骤

    使用外部邮箱账号发送报警邮件设置 配置Zabbix服务端外部邮箱 vi /etc/mail.rc #编辑,添加以下信息 set from=xxx@163.com smtp=smtp.163.com s ...

  7. zabbix(7)邮件报警配置

    邮件报警可以使用Linux自带邮件服务器(postfix等),也可以使用其他邮件服务器(像腾讯邮箱,126邮箱) 一.使用mail. 1.确定zabbix server是否安装发送邮件的命令mail, ...

  8. Zabbix邮件报警-->Email

    Version:3.0.1 邮件报警有两种media 1.Email zabbix发送报警邮件到指定smtp服务器(使用系统自带的sendmail,发送邮箱是zabbix服务器的本地邮箱账号) 再由s ...

  9. Zabbix邮件报警-->Script

    Version:3.0.1 邮件报警有两种media 1.Email zabbix发送报警邮件到指定smtp服务器(使用系统自带的sendmail,发送邮箱是zabbix服务器的本地邮箱账号) 再由s ...

随机推荐

  1. 《Java核心技术(卷一)》读书笔记——第六章:内部类

    1.      内部类的概念? 类中类 2.      为什么要用内部类? 内部类的方法可以访问外部类的实例域 内部类对外部类的同一个包中的类实现了隐藏 匿名内部类在“想要定义一个回调函数却又不想编写 ...

  2. P5315 头像上传

    --------------------------------------- 模拟中的模拟 --------------------------------------- FOR---MIKU -- ...

  3. 《DSP using MATLAB》Problem 7.26

    注意:高通的线性相位FIR滤波器,不能是第2类,所以其长度必须为奇数.这里取M=31,过渡带里采样值抄书上的. 代码: %% +++++++++++++++++++++++++++++++++++++ ...

  4. 软件开发者路线图梗概&书摘chapter2

    空杯心态:放下对技能水平的自鸣得意 1.入门语言:学习一门语言,从实际问题入手→形成反馈回路 构建学习沙箱 利用实际代码,进行学习测试 学习一门语言:与精通该语言的专家一起工作,即找人指导 阅读他人的 ...

  5. 去掉win7快捷方式小箭头

    reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\Shell Icons" ...

  6. django中云存储静态文件

    Django自带文件存储系统存储在本地文件夹,如果我们将文件存储在云端,需要自定义文件存储系统. 自定义文件存储系统需要继承django.core.files.storage.Storage from ...

  7. transmission跳过文件校验功能实现

    贴吧链接:https://tieba.baidu.com/p/4839039900 GitHub:https://github.com/superlukia/transmission-2.92_ski ...

  8. [noip2016]洛谷2827

    来一发文字证明~ 数据范围很大... 如果用priority_queue搞的话肯定是会t的. 所以肯定要想一想优化的思路. 我们发现,对于队列来讲,同加,减是不改变这个队列的大小关系的: 但是呢,切开 ...

  9. linux 中 && 及|| 判断原理

    [root@linuxprobe ~]# [ $USER = root ] && echo "root" || echo "user"root[ ...

  10. 借助微软提供的url重写类库URLRewriter.dll(1.0)实现程序自动二级域名,域名需要泛解析

    二级域名和系统中会员帐号自动关联,也就是系统中注册一个会员,会员自动就可以通过二级域名来访问,比如我的帐号是zhangsan,我在morecoder.com注册后,访问zhangsan.morecod ...