用了几个邮件报警软件,感觉还是sendmail及时、稳定。

一、zabbix server服务器上配置:

 1.1 发送邮件脚本的存放路径:

[root@zabbix_server etc]# cat zabbix_server.conf | grep alertscripts # AlertScriptsPath=${datadir}/zabbix/alertscripts AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts

 1.2 sendmail软件下载安装:

  我使用的是SendEmail,如果你系统自带的mail能够发送成功邮件可以用自带的,可以参考我的另一篇文章,Centos5.x & Centos6.x 使用mail命令发邮件以及如何伪造发件人:。

   SendEmail下载地址;

   解压放到任意目录,我放在了/usr/local/zabbix/share/zabbix/alertscripts目录下

[root@zabbix_server alertscripts]# lssendEmail-v1.56

 1.3 zabbix的报警信息会传过来三个变量,都在zabbix_web界面配置。分别是:收件人邮件,报警主题和报警内容,及脚本中的$1 $2 $3

  编写脚本sendmail并赋予可执行权限

[root@zabbix_server alertscripts]# chmod a+x sendmail.sh [root@zabbix_server alertscripts]# cat sendmail.sh #!/bin/bash# $1 sendmail address# $2 sendmail subject# $3 contentSENDMAIL=/usr/local/zabbix/share/zabbix/alertscripts/sendEmail-v1.56/sendEmail$SENDMAIL -f LangFang@zabbix.com -t "$1" -s xxx.benguo.cn -u "$2" -m "$3" >> /dev/null

  注:LangFang@zabbix是发件人邮箱,是伪造的发件人,可自行定义只要别被识别为垃圾邮箱就行。

    解释:
    -f 表示发送者的邮箱
    -t 表示接收者的邮箱
    (接收邮件和发送邮件,尽量不要用同一个邮箱帐号,容易出错)
    -s 表示SMTP服务器的域名或者ip
    -u 表示邮件的主题
    -xu 表示SMTP验证的用户名
    -xp 表示SMTP验证的密码(注意,这个密码貌似有限制,例如我用d!5neyland就不能被正确识别)
    -m 表示邮件的内容

二、下面是zabbix web上配置:

 2.1 配置“示警媒介类型”,创建媒体类型:

注意脚本名字要和服务器上写的一样。

 2.2 用户设置:

示警度就是触发器的严重性。

三、创建动作

    

四、添加完毕,就会按照触发器实现报警了