一、安装mailx
1.1 mailx是centos下的一种处理邮件的工具
1 yum -y install mailx
1.2 然后对mail.rc文件进行配置,在最后添加如下命令,根据你所使用的邮箱进行配置
1 whereis mail.rc # 查询mail.rc所在位置 2 cd /etc # 进入ETC文件夹 3 vi mail.rc # 编辑mail.rc文件
1 set smtp=smtp://smtp.office365.com:587 # 填写SMTP服务器地址 2 set smtp-auth=login # 认证方式 3 set smtp-auth-user=travis-li@outlook.com # 输入邮箱账号 4 set smtp-auth-password=XXXXXXXXXXX # 输入邮箱账号密码 5 set ssl-verify=ignore # 忽略证书告警 6 set nss-config-dir=/etc/pki/nssdb # 证书所在目录 7 set from="travis-li@outlook.com" # 设置发信人邮箱 8 set smtp-use-starttls=yes # 使用STARTTLS加密
1.3 测试邮件发送
1 [root@zabbix ~]# echo "zabbix test mail" | mail -s "zabbix" travis-li@outlook.com
二、编写发送脚本
2.1 mailx发送的邮件是BIN附件形式,需要安装dostounix程序转换
1 yum install dos2unix -y # 安装dos2unix转换工具
2.2 编写发送邮件脚本,脚本存放在/usr/lib/zabbix/alertscripts/ 文件下
1 cd /usr/lib/zabbix/alertscripts 2 vi mailx.sh
1 #!/bin/bash 2 #send mail 3 FILE=/usr/lib/zabbix/alertscripts/mailtmp.txt 4 echo "$3" > $FILE 5 dos2unix -k $FILE 6 mail -s "$2" "$1" < $FILE
2.3 修改权限
1 touch /tmp/mailx.log 2 chown -R zabbix.zabbix /tmp/mailx.log 3 chmod +x /usr/lib/zabbix/alertscripts/mailx.sh 4 chown -R zabbix.zabbix /usr/lib/zabbix/
2.4 测试脚本发送邮件
1 /usr/lib/zabbix/alertscripts/mailx.sh travis-li@outlook.com "TESTtitle" "TestContent"
三、zabbix配置
3.1 创建报警媒体类型
3.2 配置用户权限