在zabbix3.0.3 設置報警這里卡了兩天。終於解決了,這里我使用的mailx來作為發送郵件的客戶端
1.設置mailx發信賬號
yum -y install mailx
ln -s /bin/mailx /bin/mail
cat /etc/mail.rc //內容如下 set from=123456@126.com set smtp=smtp.126.com set smtp-auth-user=123456 set smtp-auth-password=123456 set smtp-auth=login
發送測試郵件
echo test | mail -s " test" 136×××@126.com
2.zabbix服務器端編寫郵件發送腳本
mkdir /etc/zabbix/alertscripts vim /usr/local/zabbix/etc/zabbix_server.conf //修改alert scripts為以下路徑 AlertScriptsPath=/etc/zabbix/alertscripts service zabbix_server restart
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
增加可執行權限 chown zabbix.zabbix /etc/zabbix/alertscripts/sendmail.sh chmod +x /etc/zabbix/alertscripts sendmail.sh
測試發送腳本 /etc/zabbix/alertscripts/sendmail.sh 136xxx@126.com "測試郵件標題" "測試郵件內容"
3.zabbix后台配置
Administration|Media types,進入告警方式配置界面,創建sendmail.sh告警方式,如下圖
name這里可以隨便自己定義,type選擇scripts;Script name則輸入上一步編寫的腳本名稱,即sendmail.sh
Administration|Users,進入用戶配置界面,在”Media”選項卡中配置用戶接收告警的郵箱地址。點擊”Add”,在彈出的窗口中輸入用戶郵箱,見下圖:
Configuration-->Action 修改已有的Actions,具體如下:
這時候就可以先停止zabbix_agent 測試下短信會不會成功發送