Zabbix外部邮件告警配置mailx
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Zabbix外部邮件告警配置mailx相关的知识,希望对你有一定的参考价值。
-
关闭sendmail或者postfix
service sendmail stop
chkconfig sendmail off
service postfix stop
chkconfig postfix off
备注:
使用外部邮箱账号时,不需要启动sendmail或者postfix
如果在sendmail或者postfix启动的同时使用外部邮箱发送报警邮件,首先会读取外部邮箱 - 设置mailx发信账号
yum -y install mailx
ln -s /bin/mailx /bin/mail
vim /etc/mail.rc
#服务端转发邮件到指定邮箱
set [email protected]
#填写发送邮箱服务器地址smtp
set smtp=smtp.163.com
#个人邮箱用户
set [email protected]
#个人邮箱密码
set smtp-auth-password=****
set smtp-auth=login
-
zabbix服务器端编写邮件发送脚本
#进入zabbix脚本目录
cd /usr/lib/zabbix/alertscripts
#编辑邮件脚本
vim mailx.sh
#!/bin/bash
messages=echo $3 | tr ‘ ‘ ‘ ‘
subject=echo $2 | tr ‘ ‘ ‘ ‘
echo "${messages}" | mail -s "${subject}" $1 >>/tmp/mailx.log 2>&1 -
增加可执行权限并测试,邮件日志可以在 /tmp/mailx.log 看到
touch /tmp/mailx.log
chown -R zabbix.zabbix /tmp/mailx.log
chmod +x /usr/lib/zabbix/alertscripts/mailx.sh
chown -R zabbix.zabbix /usr/share/zabbix/
发送测试邮件
echo "zabbix test mail" |mail -s "zabbix" [email protected] - zabbix配置: 管理-->配置-->创建媒体类型
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}
-
用户报警配置
- 添加报警动作:配置—动作-创建动作
名称:mailx
默认接收人:
故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
默认信息:
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
恢复主旨:
恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
恢复信息:
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
8.设置步骤操作,发送用户
9.查看报警邮件
-
关闭sendmail或者postfix
service sendmail stop
chkconfig sendmail off
service postfix stop
chkconfig postfix off
备注:
使用外部邮箱账号时,不需要启动sendmail或者postfix
如果在sendmail或者postfix启动的同时使用外部邮箱发送报警邮件,首先会读取外部邮箱 - 设置mailx发信账号
yum -y install mailx
ln -s /bin/mailx /bin/mail
vim /etc/mail.rc
#服务端转发邮件到指定邮箱
set [email protected]
#填写发送邮箱服务器地址smtp
set smtp=smtp.163.com
#个人邮箱用户
set [email protected]
#个人邮箱密码
set smtp-auth-password=****
set smtp-auth=login
-
zabbix服务器端编写邮件发送脚本
#进入zabbix脚本目录
cd /usr/lib/zabbix/alertscripts
#编辑邮件脚本
vim mailx.sh
#!/bin/bash
messages=echo $3 | tr ‘ ‘ ‘ ‘
subject=echo $2 | tr ‘ ‘ ‘ ‘
echo "${messages}" | mail -s "${subject}" $1 >>/tmp/mailx.log 2>&1 -
增加可执行权限并测试,邮件日志可以在 /tmp/mailx.log 看到
touch /tmp/mailx.log
chown -R zabbix.zabbix /tmp/mailx.log
chmod +x /usr/lib/zabbix/alertscripts/mailx.sh
chown -R zabbix.zabbix /usr/share/zabbix/
发送测试邮件
echo "zabbix test mail" |mail -s "zabbix" [email protected] - zabbix配置: 管理-->配置-->创建媒体类型
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}
-
用户报警配置
- 添加报警动作:配置—动作-创建动作
名称:mailx
默认接收人:
故障{TRIGGER.STATUS},服务器:{HOSTNAME1}发生: {TRIGGER.NAME}故障!
默认信息:
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
恢复主旨:
恢复{TRIGGER.STATUS}, 服务器:{HOSTNAME1}: {TRIGGER.NAME}已恢复!
恢复信息:
告警主机:{HOSTNAME1}
告警时间:{EVENT.DATE} {EVENT.TIME}
告警等级:{TRIGGER.SEVERITY}
告警信息: {TRIGGER.NAME}
告警项目:{TRIGGER.KEY1}
问题详情:{ITEM.NAME}:{ITEM.VALUE}
当前状态:{TRIGGER.STATUS}:{ITEM.VALUE1}
事件ID:{EVENT.ID}
8.设置步骤操作,发送用户
9.查看报警邮件
以上是关于Zabbix外部邮件告警配置mailx的主要内容,如果未能解决你的问题,请参考以下文章