操作系统:CentOS 7

Web环境:Nginx+MySQL+PHP

zabbix版本:zabbix-2.4.8.tar.gz

邮件服务:msmtp-1.4.32.tar.bz2     #http://download.csdn.net/detail/allen_a/9504581

一、解压,编译,安装,配置msmtp

tar xf msmtp-1.4.32.tar.bz2

./configure --prefix=/usr/local/msmtp

make && make install

mkdir /usr/local/msmtp/etc

touch /usr/local/msmtp/etc/msmtprc

在/usr/local/msmtp/etc/msmtprc中写入如下内容:

defaults

account michael_zhou

host smtp.sohu.com    #你发邮件用户的smtp服务器

domain sohu.com    #域名    非顶级域名

from ******@sohu.com   #你发件人的用户邮箱

auth login

user ******@sohu.com   #你发件人的用户邮箱

password ******   #你发件人的邮箱密码

account default:michael_zhou

logfile /var/log/maillog     #邮件日志

测试一下:/usr/local/msmtp/bin/msmtp i@chinadba.com,输入内容后按ctrl+D发出。

二、在实际测试中发现直接使用msmtp命令发出去的邮件会看不到发件人和主题,只能看到邮件内容,所以我使用mutt挂接在msmtp上,yum install mutt*

修改mutt的配置文件/etc/Muttrc, 不是/etc/muttrc ,M要大写

1.set sendmail="/usr/local/msmtp/bin/msmtp"

2.set use_from=yes

3.set realname=******@sohu.com #发件人邮箱地址

4.set editor="vi"

5.wq   #保存退出

测试一下:echo "邮件报警测试" | mutt -s "测试" ******@qq.com #收件人地址

发送邮件的应用有很多,通nagios相同,使用的是sendEmail

三、创建 zabbix用于发送邮件的脚本,脚本放在什么位置随便,但是要保证zabbix能找到!

(1)vim /usr/local/zabbix/share/zabbix/alertscripts/mail,并写入如下内容:

#!/bin/bash

echo "$3" | mutt -s "$2" $1     # $3表示邮件内容、$2表示邮件标题、$1表示收件人

(2)chmod 755 /usr/local/zabbix/share/zabbix/alertscripts/mail

chown zabbix.zabbix /usr/local/zabbix/share/zabbix/alertscripts/mail

---------------脚本的编写可以先放到一边,记住$1,$2,$3参数分别代表的意义。

在zabbix_server.conf配置文件中,有参数AlertScriptsPath和ExternalScripts

AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts/mail ---用户自定义的media types脚本

ExternalScripts=/usr/local/zabbix/share/zabbix/alertscripts/mail ---用户自定义的检查的脚本(item)

这样才能找到你的脚本,因为你在frontend中只是输入脚本的名称,没有路径。

四、zabbix配置

----------------------------在定义Trigger时,Multiple PROBLEM events generation这个必须要打勾,在官网上该参数被解释为

By checking this option you can set that an event is generated upon every 'Problem' evaluation of the trigger.

(1)创建meida types

1.登录到zabbix,进入“Administration" >> ”Media types",点击右上角“Create Media Type"。 Description填"msmtp"或其它名称,Type选择"Script",Script填”mail”。

2.点击update更新

(2)创建actions

1.登录到zabbix,进入"Configation" >> "Actions",点击右上角"Create Actions"。输入Name “baojing” ,其它都默认点击右侧“Action Operations"下的"New"按钮,"Operation Type"选择"Send message","Send Message to"选择一个或多个要发送消息的用户组,”Send only to"选择我们之前新增的msmtp。

2.最后点击保存

(3) zabbix用户配置

登录到zabbix, 进入"Adimistration" >> "Users",在之前选定要发送消息的组里的Members栏位里选择一个用户,例如选择Admin用户。

在用户信息修改界面最下方的”Media"处点击"Add"按钮。

Type选择"msmtp",Send to填入收件人地址,点击Add添加。

点击"Save"保存配置。

至此配置完成,测试!

Zabbix利用msmtp+mutt发送邮件报警的更多相关文章

  1. Zabbix利用msmtp+mutt发送邮件报警(公告:这文章有问题,还没有修改,2016-08-25)

    [root@86 ~]# wget http://jaist.dl.sourceforge.net/project/msmtp/msmtp/1.4.32/msmtp-1.4.32.tar.bz2 百度 ...

  2. msmtp+mutt发送邮件报警

    1).yum 安装 msmtp+mutt yum install -y msmtp mutt 2).配置Muttrc信息 vim /etc/Muttrc set sendmail="/usr ...

  3. 烂泥:ubuntu下配置msmtp+mutt发送邮件

    本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb. 本文主要介绍如何在Linux下使用msmtp+mutt发送邮件,当然Linux下发送邮 ...

  4. CentOS7 msmtp+mutt发送邮件

    一.安装软件 # msmtp软件各版本下载地址:https://marlam.de/msmtp/download/ [root@--- ~]# wget https://marlam.de/msmtp ...

  5. L05-Linux部署msmtp+mutt发送邮件

    一.前言 首先,得明白发送一封邮件的流程,下面一段理论摘抄自廖雪峰的官网网站https://www.liaoxuefeng.com/article/00137387674890099a71c04005 ...

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

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

  7. zabbix利用mutt和msmtp配置邮件报警

    Mutt安装 yum –y install mutt msmtp安装 yum –y install openssl openssl-devel libntlm libntlm-devel cyrus- ...

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

    本来是想自己写一篇文章的,但是看到发现网上有写的不错的,于是乎又抄别人的文章,作为记录. 使用外部邮箱来发生邮件明显好处就是防止其他邮箱服务器当垃圾邮件处理,另一方面能降低收邮件延迟. 下面开始进行使 ...

  9. zabbix使用sendEmail发送邮件报警

    sendEmail是一个轻量级,命令行的SMTP邮件客户端.如果你需要使用命令行发送邮件,那么sendEmail是非常完美的选择:使用简单并且功能强大.这个被设计用在php.bashperl和web站 ...

随机推荐

  1. 学习笔记 | Set

    目录 Set Set 前言 不会数据结构选手 当几乎没写过什么数据结构的菜鸡遇上了毒瘤的splay和treap 时间正一点一点地被续走TAT 听说set有时候可以替代treap和splay 那么菜鸡L ...

  2. alias命令详情

    基础命令学习目录首页 原文链接:http://c.biancheng.net/view/938.html 给命令设置别名,你可以把它当作命令的"小名",但是这样做有什么意义呢? 比 ...

  3. 在Gulp中使用BrowserSync

    博客已迁移至http://zlwis.me. 很早就听说过BrowserSync,也看过一些相关文章,可就是没用过.之前一直在用Gulp开发项目,每次编写完Sass后还要用按F5刷新页面看效果,想想也 ...

  4. Python脚本文件(.py)打包为可执行文件(.exe)即避免命令行中包含Python解释器

      在最近的软件工程作业中用到了将Python脚本转化为exe文件这一过程,网上各种博客介绍了很多,有些东西都不完全,我也是综合了很多种方法最后才实现的,我就把这些整理出来,希望可以帮到大家~ 一.环 ...

  5. 第十次作业psp

    psp 进度条 博文累积折线图 代码累积折线图 psp饼状图

  6. Java将json字符串转成map

    Map<String, Object> map = (Map<String, Object>) JSONUtils.parse(result)

  7. 1~n中1的和

    题目:给定一个十进制的正整数,写下从1开始,到N的所有整数,然后数一下其中出现“1”的个数: 要求:写一个函数f(n),返回1到n之间出现“1“的个数, 思路: 1.先判断这个数共多少位,假设为n位: ...

  8. 2018软工实践—Beta冲刺(4)

    队名 火箭少男100 组长博客 林燊大哥 作业博客 Beta 冲鸭鸭鸭! 成员冲刺阶段情况 林燊(组长) 过去两天完成了哪些任务 协调组内工作 完成软件开发技术文稿 展示GitHub当日代码/文档签入 ...

  9. 作业1.3——Android平台的开发环境的发展演变

    一开始的打算是在eclipse的基础上搭建Android平台,在ADT.SDK上兜兜转转,听过一些前车之鉴后,还是选择了Android studio.因为之前安装过eclipse,就省去了JDK下载和 ...

  10. mac下搭建MySql环境基本步骤

    准备工作做完后,开始: 创建数据库 step1: 在mac中->系统偏好设置->最下边点MySQL 在弹出页面中 关闭mysql服务(点击stop mysql server) step2: ...