1.zabbxi邮件报警
1、Zabbix服务端只是单纯的发送报警邮件到指定邮箱,发送报警邮件的这个邮箱账号是Zabbix服务端的本地邮箱账号(例如:[email protected]),只能发送,不能接收外部邮件。
2、使用一个可以在互联网上正常收发邮件的邮箱账号(例如:163邮箱,qq邮箱,新浪邮件等),通过在Zabbix服务端中设置,使其能够发送报警邮件到指定邮箱。
1.内部邮件报警
1.1安装sendmail或者postfix(centos6和7自带postfix)
[root@localhost ~]# yum install postfix
[root@localhost ~]# systemctl start postfix
1.2下载并安装mailx(yum或者编码安装都可以)
1.2.1 yum安装
yum install mailx
1.2.2 编码安装
[root@localhost ~]# wget http://nchc.dl.sourceforge.net/project/heirloom/heirloom-mailx/12.4/mailx-12.4.tar.bz2
tar jxvf mailx-12.4.tar.bz2 #解压
cd mailx-12.4 #进入目录
make #编译
make install UCBINSTALL=/usr/bin/install 安装
ln -s /usr/local/bin/mailx /bin/mail 配置mailx到mail的软连接
ln -s /etc/nail.rc /etc/mail.rc 配置mailx配置文件软连接
whereis mailx 查看安装路径
mailx -V 查看版本信息
echo "zabbix test mail" |mail -s "zabbix" [email protected]
1.3zabbix网页端配置
管理—示警媒体类型—创建示警媒体类型
管理—用户—创建用户
配置—动作—创建动作
最后收到报警邮件即可
2.外部邮件报警(前面内容基本一致,发送邮件的邮箱必须开启SMTP服务,这里自行百度)
2.1安装sendmail或者postfix(centos6和7自带postfix)
[root@localhost ~]# yum install postfix
[root@localhost ~]# systemctl start postfix
2.2下载并安装mailx(yum或者编码安装都可以)
2.2.1 yum安装
[root@localhost ~]# yum install mailx
2.2.2 编码安装
[root@localhost ~]# wget http://nchc.dl.sourceforge.net/project/heirloom/heirloom-mailx/12.4/mailx-12.4.tar.bz2
[root@localhost ~]# tar jxvf mailx-12.4.tar.bz2 #解压
[root@localhost ~]# cd mailx-12.4 #进入目录
[root@localhost ~]# make 编译
[root@localhost ~]# make install UCBINSTALL=/usr/bin/install 安装
[root@localhost ~]# ln -s /usr/local/bin/mailx /bin/mail 配置mailx到mail的软连接
[root@localhost ~]# ln -s /etc/nail.rc /etc/mail.rc 配置mailx配置文件软连接
[root@localhost ~]# whereis mailx 查看安装路径
[root@localhost ~]# mailx -V 查看版本信息
[root@localhost ~]# echo "zabbix test mail" |mail -s "zabbix" [email protected]
2.3修改mailx配置文件
[root@localhost ~]# vim /etc/mail.rc
set [email protected] 新浪注册的个人邮箱,用于zabbi服务端转发邮件到指定邮箱
set smtp=smtp.sina.com 新浪发送邮箱服务器地址smtp
set smtp-auth-user= [email protected] 新浪个人邮箱用户
set smtp-auth-password=XXX 新浪个人邮箱密码
set smtp-auth=login 登录
[root@localhost ~]# echo "zabbix test mail" |mail -s "zabbix" [email protected] 测试发送邮件
2.4编辑zabbix脚本
[root@localhost ~]# cd /usr/local/zabbix/share/zabbix/alertscripts/ #进入zabbix默认存放脚本路径
[root@localhost ~]# 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 >>/tmp/sendmail.log 2>&1
[root@localhost ~]# chown zabbix.zabbix /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh #sendmail.sh脚本修改所属用户和用户组
[root@localhost ~]# chmod 755 /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh sendmail脚本赋予执行权限
[root@localhost ~]# vim /usr/local/zabbix/etc/zabbix_server.conf 配置zabbix_server.conf配置文件
AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts 修改成sendmail.sh脚本存放路径
2.5 zabbix网页端配置
添加以下3个参数,分别对应脚本需要的3个参数:收件人地址、主题、详细内容:
{ALERT.SENDTO}
{ALERT.SUBJECT}
{ALERT.MESSAGE}
脚本名称必须和你写的脚本名称一致
其余的和上面内部邮件发送配置基本一致