zabbix使用脚本发送外网邮件告警(msmtp + mutt)

1、安装msmtp和mutt

相关软件可自行网上搜索

1.1、msmtp安装

tar  -xf  msmtp-1.6.2.tar.xz
              cd  msmtp-1.6.2
              ./configure
              make  &&  make  install

1.2、mutt安装

yum  -y  install  mutt

2、配置msmtp和mutt

2.1、配置msmtp

vim /usr/local/etc/msmtprc
              account default
              host smtp.163.com  #不同的提供商smtp地址不相同,请自行查找
              tls off
              auth plain   #邮箱验证方式
              from xxx@163.com    #xxx改为你的邮箱用户名
              user xxx

password ******          #输入你的邮箱密码
              logfile /var/log/msmtp.log  #log路径可以随意定义

chmod   600      /usr/local/etc/msmtprc   #因为使用明文密码,所以需要修改权限

2.2、配置mutt

vim /etc/muttrc
                set sendmail="/usr/local/bin/msmtp"
                set use_from=yes
                set realname="George"
                set [email protected]
                set envelope_from=yes

2.3、测试邮件发送

echo "good lucky"   |   /usr/bin/mutt -s "hello george"    [email protected]

3、zabbix配置

3.1、允许zabbix使用脚本

vim /usr/local/zabbix/etc/zabbix_server.conf
                AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts     #该脚本路径可以随意指定

3.2、编写发送邮件的脚本

vim  /usr/local/zabbix/share/zabbix/alertscripts/send_mail.sh

#!/bin/bash
echo "$3" | /usr/bin/mutt -s "$2" $1 
#备注:$3:zabbix邮件内容;$2:zabbix邮件标题; $1:zabbix设定的收件人地址;

3.3、设置使用脚本发送邮件

管理 》 示警媒介类型 》 填写 “名称”,“类型”,“脚本名称”(该脚本名称和  zabbix_server.conf中指定的脚本名称对应起来)

3.4、设置告警邮件外网收件人

3.4.1、管理 》 用户 》 添加用户组 》 添加用户 》 用户,填写用户信息 》 示警媒介,选择“类型”,填写收件人邮箱地址 或者
                3.4.2、管理 》 用户 》 使用已有的用户组 》 添加用户 》 用户,填写用户信息 》 示警媒介,选择“类型”,填写收件人邮箱地址

3.5、设置动作

组态 》 动作 》 创建动作

(创建动作,可以参考我的另一个博文:http://small.blog.51cto.com/259970/1715237

完毕。

时间: 2024-08-10 15:01:43

zabbix使用脚本发送外网邮件告警(msmtp + mutt)的相关文章

使用本地mail发送外网邮件

有的时候需要使用本地的mail,来对外网发送邮件,需要定制mail的smtp服务器. bin/mail会默认使用本地sendmail发送邮件,这样要求本地的机器必须安装和启动Sendmail服务,配置非常麻烦,而且会带来不必要的 资源占用.而通过修改配置文件可以使用外部SMTP服务器,可以达到不使用sendmail而用外部的smtp服务器发送邮件的目的: 修改/etc/mail.rc set [email protected] smtp=smtp.domain.com set smtp-auth

exchange 2010 server内网邮箱突然不能收发外网邮件的问题分析解决办法

环境是,域控+exchange2010server+edge边缘服务器的邮件系统. 故障现象:某个内网邮箱以前可以收发外网邮件,现在突然不能收发外网邮件了. 故障分析:分析最近对服务器做了那些操作. 解决办法:原来是自己更改了设置,没有留意这个内网邮箱用户加了多个通讯组,通讯组有交叉,对这些通讯组设置禁止收发邮件的规则,把这个邮箱也给禁止了,增加了允许这个邮箱的邮件传输规则,故障排除.

zabbix通过脚本发送短信

zabbix通过脚本发送短信 原则 和zabbix电子邮件是一样的,他们是action内部配置,司的api来完毕.当然网上有不少利用139邮箱来发的,这个事实上算调用email的一种,这里复述的是调用script的方法. step 编写发短信的脚本.加上可运行权限. administration-> medis types 里面create .类型选script.填上你的脚本名称. 在server的配置文件中面指定AlertScriptsPath . 注意这个文件夹能被zabbix 訪问到. 重

zabbix配置外网邮件报警

1. 基本条件 zabbix服务器端已经建立并且运行 zabbix客户端已经建立并且运行 2. 需要安装的软件包 编译安装msmtp包,yum安装mutt包 3. 配置过程 3.1 配置msmtp 下载并安装msmtp包 http://sourceforge.net/projects/msmtp/files/msmtp/1.6.2/ 安装msmtp tar jxvf msmtp-1.6.2.tar.bz2 cd msmtp-1.6.2 ./configure  make make install

linux 系统调用python脚本发送自定义系统邮件

#!/usr/bin/python # -*- coding: UTF-8 -*- import sys import smtplib import email.mime.multipart import email.mime.text server = 'smtp.163.com' port = '25' def sendmail(server,port,user,pwd,msg): smtp = smtplib.SMTP() smtp.connect(server,port) smtp.lo

ubuntu配置外部smpt email 发送外网

添加heirloom-mailx apt源cat /etc/apt/sources.list.d/mailx.listdeb http://cz.archive.ubuntu.com/ubuntu xenial main universe 更新aptapt update 安装heirloom-mailxapt install heirloom-mailx -y 配置外部发件邮箱编辑 /etc/s-nail.rc在最后加上: for 163邮箱 set from="[email protected

Domino实现外网邮件转发功能配置

实现方式一: 配置SMTP转发主机连接文档: 同一个网络域的所有服务器,只要配置一条SMTP转发主机即可. 实现方式二: 服务器-配置-基本-设置离开本地internet网络域只能主机

zabbix自定义监控mysql主从状态,并做邮件告警

 通过zabbix自定义监控mysql主从状态,并做邮件告警 分析: mysql主要是通过主从来提供安全性,一个完整的主从体系,就应该包括数据同步.开启二进制日志.全备.还有对Slave_IO_Running和Slave_SQL_Running两个线程的实时监测,并做告警,而zabbix监控软件就提供了很好的方法:对于zabbix这个监控软件,个人来说也是比较熟悉,现在的企业们都基本用的是zabbix软件来做系统的资源的监控,zabbix的强大不仅仅体现于,它自身自带的监控模板比较全面,而是通过

Zabbix自定义、SMS、邮件告警通知

Zabbix告警媒介 Zabbix的触发器到了要发送告警通知的情况下,需要一个之间介质来接收和传递它的消息给我们这些可爱的运维们er,以往通常用Nagios(Nginos有着强大完善的告警机制),用脚本发送邮件或者微信来到达报警.这里的脚本其实就算得上一种媒介了. Zabbix的四种告警媒介 · E-mail 邮件告警(zabbix 3.0后升级了邮件告警客户端,使用起来还是很方便的) · Jabber Jabber有第三方插件,能让Jabber用户和MSN.YahooMessage.ICQ等I