zabbix上怎么通过sendmail发送邮件报警
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了zabbix上怎么通过sendmail发送邮件报警相关的知识,希望对你有一定的参考价值。
参考技术A zabbix相关环境:OS: centos 5.4 x86_64 zabbix: 1.8.3 sendmail: 8.13.8-2.el5
在配置zabbix的Email报警之前,需要将sendmail使用的域名进行相应的修改,系统默认为localhost.localdomain,其实不改也行,不过有些pop3服务器会过滤掉来自localhost.localdomain的邮件,导致邮件不能正常查收,所以,最好是改一下 hostname,确保邮件发送的成功率。
以下是我线上机器修改好了的配置,可供参考。
# cat /etc/hosts
127.0.0.1 monitor.bot.cms localhost.localdomain localhost
# cat /etc/mail/access
Connect:localhost.localdomain RELAY
Connect:localhost RELAY
Connect:127.0.0.1
Connect:monitor.bot.cms RELAY
# cat /etc/mail/local-host-names
monitor.bot.cms
修改完成后,重启sendmail服务,通过telnet命令,测试一下看看是否已生效
# telnet 127.0.0.1 25
Trying 127.0.0.1...
Connected to monitor.bot.cms (127.0.0.1).
Escape character is '^]'.
220 monitor.bot.cms ESMTP Sendmail 8.13.8/8.13.8; Sun, 10 Oct 2010 14:00:33 +0800
从以上结果可以发现,localhost.localdomain 已经变成了 monitor.bot.cms 这个域名,表示修改成功,接下来就可以在zabbix 的管理页面上进行Email 报警设置了。
设置完成后点击保存按钮,到此Email报警设置就结束了,测试时,可以新建一个action,报警方式选择Email, 当trigger成功触发后,一分钟后就可以查收邮件了。
zabbix3.0.4安装部署文档--邮件报警
一、使用外部邮箱账号发送报警邮件设置:
1、关闭sendmail或者postfix
使用外部邮箱账号时,不需要启动sendmail或者postfix ,如果在sendmail或者postfix启动的同时 使用外部邮箱发送报警邮件,首先会读取外部邮箱配置信息。
[[email protected] local]# /etc/init.d/sendmail stop
[[email protected] local]# /etc/init.d/postfix stop
2、安装测试邮件发送工具mailx
[[email protected] ~]# yum install mailx
[[email protected] ~]# vi /etc/mail.rc //在文件的最后添加以下内容
set from=******@163.com smtp=smtp.163.com
set smtp-auth-user=*******@163.com smtp-auth-password=********
set smtp-auth=login
[[email protected] ~]# echo "zabbix test mail" |mail -s "zabbix" [email protected]
二、添加zabbix服务器发送脚本
cd /usr/local/zabbix-3.0.4/share/zabbix/alertscripts
vim sendmail.sh
#!/bin/sh
echo "$3" | mail -s "$2" $1
chown zabbix.zabbix /usr/local/zabbix-3.0.4/share/zabbix/alertscripts/sendmail.sh
chmod +x /usr/local/zabbix-3.0.4/share/zabbix/alertscripts/sendmail.sh
三、进入zabbix管理界面
点击 管理-->报警媒介类型-->创建媒体类型
输入脚本名称,类型选择脚本
添加以下3个参数,分别对应sendEmail.sh脚本需要的3个参数:收件人地址、主题、详细内容
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}
解释:很多人安装zabbix 3.0之后,写的脚本一直发信不成功,手动执行时可以的。
那是因为zabbix3.0之后,可以自定义参数了。所以不写参数,它是不会传参数的。
在2.x版本不存在这个问题,默认会传3个参数。
点击admin
点击用户群组,点击zabbix administrator后面的调用模式,点击一下,就启用了
配置-->动作-->创建动作
配置完成看看效果吧哈哈!!
以上是关于zabbix上怎么通过sendmail发送邮件报警的主要内容,如果未能解决你的问题,请参考以下文章