zabbix配置邮件报警

一、安装配置msmtp
1、下载解压msmtp
wget http://downloads.sourceforge.net/msmtp/msmtp-1.4.30.tar.bz2?big_mirror=0
tar jxvf msmtp-1.4.30.tar.bz2
安装
./msmtp-1.4.30/configure --prefix=/usr/local/msmtp
make
make install
注意红色标记出的目录,因为是解压到那个目录的。
3、配置msmtp账号
cd /usr/local/msmtp
新建文件夹etc
mkdir etc
使用vi新建文件,输入:vi /usr/local/msmtp/etc/msmtprc ,编辑内容如下:
# Set default values for all following accounts.
defaults
logfile /usr/local/msmtp/msmtp.log #日志文件目录
# The SMTP server of the provider.
account test
# SMTP邮件服务器地址
host smtp.qq.com
# 发送的邮件Email
from [email protected]
auth login
# 邮件服务器登录账号
user [email protected]
# 邮件服务器登陆密码
password 111111111
# Set a default account
account default : test
4、测试
/usr/local/msmtp/bin/msmtp [email protected]
输入任意字符,然后按Ctrl+D退出,查看邮件是否收到。
由于设置了日志,可以到 /usr/local/msmtp/msmtp.log,查看日志,发信成功失败都会有记录。


二、安装配置mutt
1、一般Linux都会默认安装mutt,CentOS也不例外
可以使用which mutt查看mutt安装的路径,如果没有安装可以使用 # yum install mutt
2、编辑mutt配置文件
vi /etc/Muttrc ,编辑mutt的总设置,修改以下几行
set from="发送邮件地址"
set sendmail="/usr/local/msmtp/bin/msmtp"
set use_from=yes
set realname="[email protected]" #发件地址
set editor="vi"
发件地址最好与msmtp设置的账号相同,否则可能会出错。
3、测试一下mutt是否有效
echo "测试测试" | mutt -s "测试" 测试邮件地址
echo "test" |mutt -s "my_first_test" [email protected]


三、脚本设置
调用外部脚本进行告警通知
Custom script. ZABBIX passes three command line parameters to the script:
Recipient, Subject and Message.


调用外部脚本进行告警通知,zabbix会向外部脚本提交三个参数
第一个参数是Recipient,即接受告警人的联系方式,如邮件地址,手机号码等
第二个参数是Subject,即告警信息的标题
第三个参数是Message,即告警信息的内容


WEB添加用户,设置等这里暂不提。
创建zabbix用于发送邮件的脚本
vim /usr/bin/baojing 写入如下内容:
#!/bin/bash
recipient=$1
subject=$2
message=$3
echo "$3" | mutt -s "$2" $1


四、    zabbix配置 
(1)创建meida types 
1.登录到zabbix,进入“Administration" >> ”Media types",点击右上角“Create Media Type"。 Description填"mediatype-baojing"或其它名称,Type选择"Script",Script填”baojing”。




注:如收到测试发邮件没有问题,在zabbix不能触发,请检查
vim /usr/local/zabbix/etc/zabbix_server.conf
在zabbix_server.conf配置文件中有配置选项AlertScriptsPath,如AlertScriptsPath=/home/zabbix/bin/
### Option: AlertScriptsPath
#       Location of custom alert scripts
#
# Mandatory: no
# Default:
AlertScriptsPath=/usr/bin
zabbix的web界面中只写脚本名称,不要加路径
测试用户user type选择zabbix super admin 如果是Zabbix User是无法收到邮件的

你可能感兴趣的:(zabbix监控报警)