安装mailx
[[email protected] ~]# yum -y install mailx
已加载插件:fastestmirror, langpacks
Loading mirror speeds from cached hostfile
* base: mirrors.aliyun.com
* extras: mirrors.aliyun.com
* updates: mirrors.aliyun.com
* webtatic: us-east.repo.webtatic.com
base | 3.6 kB 00:00:00
epel | 4.7 kB 00:00:00
extras | 2.9 kB 00:00:00
nginx | 2.9 kB 00:00:00
updates | 2.9 kB 00:00:00
webtatic | 3.6 kB 00:00:00
软件包 mailx-12.5-19.el7.x86_64 已安装并且是最新版本
无须任何处理
配置邮箱
[[email protected] ~]# vim /etc/mail.rc
set [email protected]
set smtp=smtp.qq.com
set [email protected]
set smtp-auth-password=xfcffumyrfpsbgcc
set smtp-auth=login
测试发送邮件
如果出现如下报错,是因为smtp-auth-password要填写授权码而非邮箱登陆密码
![](https://img.laitimes.com/img/_0nNw4CM6IyYiwiM6ICdiwiIyVGduV2YfNWawNyZuBnL4UDOxMjMzMjMwIDMxAjMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
如何获得邮箱授权码?
发送短信之后点击“我已发送”就会出现如下界面,把授权码复制到smtp-auth-password即可
编写自动化脚本
[[email protected] ~]# cd /usr/lib/zabbix/alertscripts
[[email protected] alertscripts]# vim mailx.sh
#!/bin/bash
#send mail
messages=`echo $3 | tr '\r\n' '\n'`
subject=`echo $2 | tr '\r\n' '\n'`
echo "${messages}" | mail -s "${subject}" $1 >>/tmp/mailx.log 2>&1
创建日志文件
修改属主属组
[[email protected] alertscripts]# chown -R zabbix.zabbix /tmp/mailx.log
[[email protected] alertscripts]# chmod +x /usr/lib/zabbix/alertscripts/mailx.sh
[[email protected] alertscripts]# chown -R zabbix.zabbix /usr/lib/zabbix/
测试自动化脚本
创建报警媒介类型
配置以什么方式发送告警邮件
配置用户
配置发送到管理员的邮箱
配置报警动作
配置当出现异常时报警邮件发送的频率和内容,以及异常恢复以后发送的邮件内容