一、关闭sendmail或者postfix
service sendmail stop #关闭
chkconfig sendmail off #禁止开机启动
service postfix stop
chkconfig postfix off
备注:
使用外部邮箱账号时,不需要启动sendmail或者postfix
如果在sendmail或者postfix启动的同时使用外部邮箱发送报警邮件,首先会读取外部邮箱
配置信息。
二、安装邮件发送工具mailx
yum remove mailx #卸载系统自带的旧版mailx
在用yum安装
yum install -y mailx
whereis mailx #查看安装路径
mailx -V #查看版本信息
三、配置Zabbix服务端外部邮箱
vi /etc/mail.rc #编辑,添加以下信息
set from=123456@126.comset smtp=smtp.126.comset smtp-auth-user=123456set smtp-auth-password=123456set smtp-auth=login:wq! #保存退出
echo "zabbix test mail" |mail -s "zabbix" xxx@qq.com
#测试发送邮件,标题zabbix,邮件内容:zabbix test mail,发送到的邮箱:xxx@qq.com
#这时候,邮箱xxx@qq.com会收到来自xxx@qq.com的测试邮件
#!/bin/bashmessages=`echo $3 | tr '\r\n' '\n'`subject=`echo $2 | tr '\r\n' '\n'`echo "${messages}" | mail -s "${subject}" $1 >>/tmp/sendmail.log 2>&1四、配置Zabbix服务端邮件报警
1、打开Zabbix
管理-示警媒介类型-创建媒体类型
名称:Sendmail
类型:脚本
脚本名称:sendmail.sh
已启用:勾选
存档
编辑完成后,给脚本权限
chmod +x sendemail.sh chown zabbix.zabbix sendemail.sh
进入zabbix管理页面 
点击管理->报警媒介类型 点击最右边的创建媒体类型

输入脚本名称,类型选择脚本并添加以下3个参数,分别对应sendEmail.sh脚本需要的3个参数:收件人地址、主题、详细内容
{ALERT.SENDTO} {ALERT.SUBJECT} {ALERT.MESSAGE}
点击Admin用户-点击报警媒介-添加
选择sendEmail.sh脚本,输入收件人的邮箱地址

点击用户群组,点击zabbix administrator后面的调用模式,点击一下,就启用了

点击Zabbix administrators组名称 点权限->添加 ,全部选择

选择所有 点击更新。
点击配置->动作 点击默认的动作:
点击操作->编辑:

修改以下内容(实际情况,大家根据自己需求填写,这里仅仅为了展示) 
修改持续时间为60秒 
修改步骤为3,表示触发3次动作 
选择用户Admin 
选择仅送到sendemail.sh 
点击更新

解释: 
默认的步骤是1-1,也即是从1开始到1结束。一旦故障发生,就是执行sendEmail.sh脚本发生报警邮件给Admin用户和zabbix administrator组。 
假如故障持续了1个小时,它也只发送一次。如果改成1-0,0是表示不限制.无限发送 
间隔就是默认持续时间60秒。那么一个小时,就会发送60封邮件。 
如果需要短信报警的话,可以再创建一条新的动作,选择短信脚本。
文章评论