环境介绍:
- 操作系统:Centos 6.* ( 双核4G、硬盘至少20G)
- Zabbix 版本:3.2.6
- zabbix server : 192.168.1.127
- zabbix agentd: 192.168.1.101
一:zabbix server端mail配置
1)安装邮件发送工具mailx
yum -y install mailx
2)将本地的mail备份
cd /bin/
mv mail mail.bak
3)创建mailx到mail的软连接
ln -s /bin/mailx /bin/mail
4)将原先mail.rc备份
cd /etc
mv mail.rc mail.rc.bak
5)新建mail.rc文件
vim mail.rc
set [email protected]
set smtp=smtp.test.com
set [email protected]
set smtp-auth-password=123.abc
set smtp-auth=login
from=用户的邮箱
smtp=smtp协议
smtp-auth-user=用户的邮箱
smtp-auth-password=用户邮箱的密码
6.)在zabbix server服务器上发送测试邮件
echo test | mail -s "test" [email protected]
二:zabbix server端邮件报警脚本配置
1.修改配置文件
1.1)修改zabbix_server的脚本指定位置
vim /usr/local/zabbix/etc/zabbix_server.conf
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts
1.2)检索下配置文件脚本指定路径是否已经修改
(注:之前做过微信报警修改过的就不用再次修改及1.3操作)
grep alertscripts /usr/local/zabbix/etc/zabbix_server.conf
1.3)重启zabbix server端使之配置文件生效
service zabbix_server restart
2.邮件报警脚本
2.1)添加脚本
cd /usr/local/zabbix/share/zabbix/alertscripts
vim sendmail.sh
#!/bin/bash
messages=`echo $3 | tr '\r\n' '\n'`
SUBJECT=`echo $2 | tr '\r\n' '\n'`
echo "${messages}" | mail -s "${SUBJECT}" $1 >> /usr/local/zabbix/share/zabbix/alertscripts/sendmail.log 2>&1
2.2)脚本添加执行权限
chmod +x /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh
2.3)创建zabbix邮件报警日志文件
touch /usr/local/zabbix/share/zabbix/alertscripts/sendmail.log
2.4)给邮件报警日志文件及脚本修改权限
注:给sendmail.log权限 否则有可能会导致,只发送,但收不到邮件的情况!!!
chown zabbix:zabbix sendmail.sh
chown zabbix:zabbix sendmail.log
或:
chown zabbix:zabbix sendmail.*
再次测试
/usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh [email protected] "测试邮件标题" "测试邮件内容"
三:zabbix server Web端配置
1.)管理-》报警媒介类型-》创建媒体类型
脚本参数
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}
注:4.0.16版本中出现的密码,均是该邮箱生成的授权码,并不是用户对应的密码
2.)管理-》用户-》创建用户
3.)配置-》动作-》创建动作
名称随意
新的触发条件选的主机且选择相应的主机添加即可,也可选择主机群组这样方便些。
操作
恢复操作
添加及修改完后记得更新
注:均可在默认信息里加上
Trigger time:{EVENT.DATE} {EVENT.TIME} 当触发器触发时-》动作-》收件人可以详细的知道触发触发器时的准确时间并不是发邮件的时间。(这里我就不再进行添加后的截图操作了)
配置到此为止!!!
测试
报警信息
恢复信息