5ol.cc 发表于 2017-4-20 10:27:11

zabbix发送邮件

  一、安装配置msmtp
  1.下载msmtp
  wget http://downloads.sourceforge.net/msmtp/msmtp-1.4.30.tar.bz2?big_mirror=0
  2.解压
  tar -jxvf msmtp-1.4.30.tar.bz2
  3. 进入msmtp目录
  cd msmtp-1.4.30
  4. 编译安装
  ./configure –prefix=/usr/local/msmtp
  make && make install
  5. 配置msmtp账号
  切换到,cd /usr/local/msmtp
  新建文件夹etc,mkdir etc
  使用vi新建文件,输入:vi /usr/local/msmtp/etc/msmtprc ,编辑内容如下:
  # Set default values for all following accounts.
  defaults
  logfile /var/log/msmtp.log
  # The SMTP server of the provider.
  account service
  # SMTP邮件服务器地址
  host smtp.qq.com
  #端口
  port 25
  # 发送的邮件Email
  from xxx@xxx.com
  auth login
  # 邮件服务器登录账号
  user xxx@xxx.com
  # 邮件服务器登陆密码
  password 123456
  # Set a default account
  account default : service
  保存退出。
  由于password是明码,所以我们需要修改此文件的权限 chmod 600 etc/msmtprc
  6 测试
  /usr/local/msmtp/bin/msmtp youremail@test.com
  输入任意字符,然后按Ctrl+D退出,查看邮件是否收到。
  由于设置了日志,可以到 /var/log/msmtp.log ,查看日志,发信成功失败都会有记录。
  二、安装配置mutt
  1、安装mutt
  yum install mutt -y
  2、编辑mutt配置文件
  vi /etc/Muttrc ,编辑mutt的总设置,修改以下几行
  set sendmail="/usr/local/msmtp/bin/msmtp"
  set from="noreply@XXX.net"
  set use_from=yes
  set realname=noreply@XXX.net
  set editor="vi"
  set copy=no
  发件地址最好与msmtp设置的账号相同,否则可能会出错。下面以#开头的操作可以不做.
  # vi ~/.muttrc , 编辑根目录下的设置
  # set envelope_from=yes
  # set from="发送邮件地址"
  # set realname="发件人"
  # set use_from=yes
  3、测试一下mutt是否有效
  echo "测试测试" | mutt -s "测试" 测试邮件地址
  echo "test" |mutt -s "my_first_test" XX@XXX.com
  三 、配置zabbix server
  将AlertScriptsPath=${datadir}/zabbix/alertscripts  行的注释取消,编写发送Email的脚本。
  #  vim /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh
#####输入以下内容:#!/bin/bash
  # $1 sendmail address
  # $2 sendmail subject
  # $3 file
  echo "$3" | mutt -s "$2" $1
  添加执行权限:
  # chmod  +x  /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh
  配置zabbix 的web界面:
 
  上文图片中有两项需要注意下:

[*]Type 此处需要选择Script
[*]Script name 此处需要填写所要调用的脚本的名字,之后保存即可
  之后添加action即可,不再叙述!
页: [1]
查看完整版本: zabbix发送邮件