一、解决的问题:当触发器满足条件被触发时,发邮件进行通知
 
二、软件及方案
  1. 使用外部邮箱发送邮件
  2. 使用mailx发送邮件,版本为12.4
  3. zabbix版本为2.2.2
  4. zabbix中使用执行脚本方式发送邮件
  5. 流程参考http://www.jb51.net/article/56973.htm中的(第二种:使用外部邮箱账号发送报警邮件设置
 
三、实现步骤
  1. 安装zabbix服务端客户端
  2. 关闭sendmail和postfix(可选项,发邮件成功的环境有此配置,但不确认是否是必须项,原因是使用外部邮箱可能需要关闭)

    service sendmail stop #关闭

    chkconfig sendmail off #禁止开机启动

    service postfix stop

    chkconfig postfix off

  3. 安装mailx(直接使用yum安装,版本位12.4)
    yum install mailx
  4. 编辑mail.rc
    a) 打开文件:vi /etc/mail.rc
    b)文件最后添加内容:(添加一定要用vi动手加,不要用记事本粘贴,否则会在每行后自动加字符)
    set from=xx@xx.com(发送邮箱)
    set smtp=mail.xx.com(邮箱的smtp服务地址,不同邮件服务商地址不同,比如163为smtp.163.com,需要开通smtp服务)
    set smtp-auth-user=xx(用户名,不包含@xx.com)
    set smtp-auth-password=pwd(用户密码)
    set smtp-auth=login
    c) 测试邮件能否发送(一定要保证邮件发送成功后再走后续的步骤,不能成功的原因一般是服务器判定为垃圾邮件,发送邮件未开通smtp服务等)
    echo "zabbix test mail" |mail -s "zabbix" yyy@163.com
    标题:zabbix、内容:zabbix test mail、收件方:yyy@163.com
  5. 添加Zabbix服务器邮件发送脚本

    cd /usr/local/zabbix/share/zabbix/alertscripts #进入脚本存放目录

    vi sendmail.sh #编辑,添加以下代码

    #!/bin/sh

    echo "$3" | mail -s "$2" $1

    :wq! #保存退出
    #设置脚本所有者为zabbix用户

    chown zabbix.zabbix /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh

    #设置脚本执行权限

    chmod +x /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh

  6. 设置Media types
    Administration-->Media types-->Create media type(j脚本名称参见3.5)
     
  7. 设置报警邮件接收的用户和邮箱
    Administration-->Users-->Create User
    a)、设置邮件(Media)
     
     b) 权限全部设置到Read-Write(如果不这样设置,可能无法发邮件)

     
  8. 创建Item
  9. 创建触发器(这里的触发器为当客户端的xftp进程被关闭则触发)
  10. 创建Actions并关联触发器
    a) Configuration-->Actions-->Create action
    b) 设置action

    c) Conditions

    d)Operations
     
 
四、可能遇到的问题
  1. 最好使用公司邮箱,163等邮箱很可能被认为是垃圾邮箱,被163禁止使用
  2. 邮箱必须打开smtp,注意(同一个邮箱,不同账号,也可能有的开了,有的没开,踩过坑了)
  3. 如果邮箱可以通过foxmail发送,一般就是开通了smtp
  4. zabbix的actions表存储了所有的actions数据
  5. zabbix的alerts表存储了所有被触发的action,包含成功和失败的,可以查看失败原因
  6. 可先用echo "zabbix test mail" |mail -s "zabbix" yyy@163.com测试linux能否发邮件,如果可以,后续基本问题不大
  7. /etc/mail.rc的内容一定要用vim编辑,不要用记事本+复制粘贴,不然会自动添加字符
 
五、参考资料

zabbix_监控_邮件预警的更多相关文章

  1. zabbix_监控_端口

        目的:监控web主机80端口是否在供提服务.如果不在发出报警.配置:    1.添加监控项(Items).        打开zabbix web管理界面:选择"Configurat ...

  2. zabbix_监控_进程

        一.根据进程名称监控 1.创建Item(只能通过进程名.用户过滤进程)  http://www.2cto.com/os/201405/302249.html http://www.ithao1 ...

  3. fail2ban的使用以及防暴力破解与邮件预警

    fail2ban可以监视你的系统日志,然后匹配日志的错误信息(正则式匹配)执行相应的屏蔽动作(一般情况下是防火墙),而且可以发送e-mail通知系统管理员! fail2ban运行机制:简单来说其功能就 ...

  4. Zabbix邮件预警-这个坑我跳了不止一次

    文章 Github 地址:点我 每每碰到 Zabbix,我发现配置邮件预警这个坑,我必须要跳进去,跟它是有八辈子的仇哦,哎,接下来数数这些坑.看看你遇到过类似的吗? Zabbix 预警配置流程 监控项 ...

  5. ossec变更alert等级及配置邮件预警

    一.场景 当攻击者尝试使用字典对某一台主机的sshd服务进行暴力破解的时候,如果我们能第一时间受到攻击预警的邮件的话,对安全人员或者运维人员来说都能做出快速响应.而使用ossec恰巧可以完成这一工作, ...

  6. 使用Log4J监控系统日志邮件警报

    使用Log4J监控系统日志邮件警报 前言 在系统上线后,有时候遇到系统故障,这时候就可以登录服务器查看系统日志来排查问题.但是需要登录服务器,下载查找相关异常日志比较麻烦.而且没有监控的话,也无法实时 ...

  7. python系统监控及邮件发送

    python系统监控及邮件发送   #psutil模块是一个跨平台库,能轻松实现获取系统运行的进程和系统利用率   import psutil                              ...

  8. 【Linux】Zabbix + MPM + msmtp + mutt 监控MySQL + 邮件报警

    Zabbix部署参考博文 http://blog.sina.com.cn/s/blog_5611597901017oe0.html  MPM安装配置参考博文和MPM官网下载地址 http://blog ...

  9. 【第一章】zabbix3.4监控WindowsCPU使用率磁盘IO磁盘事件日志监控阈值邮件报警详细配置

    Windows安装zabbix-agent 监控Windows-CPU使用率 监控Windows-磁盘IO性能监控 监控Windows/Linux-磁盘触发器阈值更改 监控Windows-网卡自动发现 ...

随机推荐

  1. [ZZ]Android UI Automated Testing

    Google Testing Blog最近发表了一篇Android UI Automated Testing,我把他转载过来,墙外地址:http://googletesting.blogspot.co ...

  2. UESTC 288 青蛙的约会 扩展GCD

    设两只青蛙跳了t步,则此时A的坐标:x+mt,B的坐标:y+nt.要使的他们在同一点,则要满足: x+mt - (y+nt) = kL (p是整数) 化成: (n-m)t + kL = x-y (L ...

  3. Android开发环境搭建(转)

    转载:http://www.cnblogs.com/zoupeiyang/p/4034517.html#1 引言   在windows安装Android的开发环境不简单也说不上算复杂,本文写给第一次想 ...

  4. Android系列之Fragment(三)----Fragment和Activity之间的通信(含接口回调)

    ​[声明] 欢迎转载,但请保留文章原始出处→_→ 生命壹号:http://www.cnblogs.com/smyhvae/ 文章来源:http://www.cnblogs.com/smyhvae/p/ ...

  5. Mecanim的Avater

    角色共用同一套动作原理 先说说为什么不同的角色可以共用同一套动作:因为导入之后,我们需要为它们每一个模型都创建一个Avater,而Avater里存储了骨骼的蒙皮信息(创建Avater时把三维软件里的蒙 ...

  6. hydra爆破用法

    -R 根据上一次进度继续破解 -S 使用SSL协议连接 -s 指定端口 -l 指定用户名 -L 指定用户名字典(文件) -p 指定密码破解 -P 指定密码字典(文件) -e 空密码探测和指定用户密码探 ...

  7. ng-bind的使用

    由于JS是单线程的,当HTML页面执行alert的时候,会中断下面代码的运行,所以为了良好的用户体验,当需要在页面使用{{name}}的时候,通常不这样直接输出,而是用ng-bind绑定model数据 ...

  8. HTML5新特性及详解

    什么是HTML5:HTML5 是下一代的HTML,将成为 HTML.XHTML 以及 HTML DOM 的新标准. 为 HTML5 建立的一些规则: 新特性应该基于 HTML.CSS.DOM 以及 J ...

  9. 【转】【Asp.Net】asp.net服务器控件创建

    VS新建一个Web服务控件工程,会默认生成以下代码: namespace WebControlLibrary { [DefaultProperty("Text")] [Toolbo ...

  10. matlab数据转换为字符串并合并字符串标注到图像曲线上

    1.把数字转换为字符串 [函数描述]str=num2str(A):把数组A中元素取小数点后四位,并转换为字符串. [函数实例]把数字转换为字符串,输入语句: str1=num2str(pi) str2 ...