廢話不多說,直接進入主題,
1、安裝mailx
[root@localhost ~]#yum install malix -y #yum安裝malix
[root@localhost ~]# vi /etc/malix.rc #配置郵箱,配置第三方軟體發送郵件,

2、在組態檔的最后添加第三方郵件的登錄方式
set bsdcompat
set [email protected] #第三方郵箱賬號
set smtp=smtp.163.com #設定SMTP服務器地址
set smtp-auth-user=xxxxxxxxx.com #郵箱賬號
set smtp-auth-password=xxxxx #授權登錄密碼【注:這個密碼需要去郵箱后臺設定SMTP授權,下圖為163郵箱后臺設定為例,其它郵箱同樣方法】
set smtp-auth=login #系統日志

3、配置發腳本及新建log檔案夾
[root@localhost ~]# cd /usr/lib/zabbix/alertscripts 【zabbix報警器腳本路徑】
[root@localhost alertscripts]# vi 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
[root@localhost ~]# touch /tmp/mailx.log #新建log檔案
[root@localhost ~]# chown -R zabbix.zabbix /tmp/mailx.log #授權log屬主屬組
[root@localhost ~]# chmod +x /usr/lib/zabbix/alertscripts/mailx.sh #授權腳本檔案可執行
[root@localhost ~]# chown -R zabbix.zabbix /usr/lib/zabbix/ # 授權/usr/lib/zabbix/下的檔案所有屬主屬組為zabbix
4、測驗腳本發郵件是否成功
[root@localhost alertscripts]# ./mailx.sh [email protected]
測驗發送給自己的163郵箱,能收到郵件,則說明腳本沒問題,如果沒收到,需要檢查腳本是否權限沒給夠或者里面的欄位沒寫對,

5、WEB后臺設定
5.1管理->報警媒體型別->創建媒體型別->

名稱:Mail-Test
型別:腳本
腳本名稱:mailx.sh
腳本引數:【新增以下三個引數】
{ALERT.SENDTO} 【三個內容為定義的收件人、主體、內容】
{ALERT.SUBJECT}
{ALERT.MESSAGE}

5.2管理-用戶-點擊Admin-報警媒介:

型別:Mail-Test //呼叫上面的腳本
收件人:[email protected] #自己指定需要接收告警郵件的郵箱賬號
其它默認-保存

5.3配置->動作->創建動作->洗掉默認標簽,修改觸發條件
名稱:Mailx
條件 A 主機群組=Linux servers

5.4配置->動作->創建動作->洗掉默認標簽,修改觸發條件
名稱:Mailx
條件 A 主機群組=Linux servers


操作->如下配置
默認操作步驟持續時間 60
默認接收人 : {TRIGGER.STATUS}:{TRIGGER.NAME}
默認資訊:
告警主機:{HOST.NAME}
告警 IP:{HOST.IP}
告警時間:{EVENT.DATE}-{EVENT.TIME}
告警等級:{TRIGGER.SEVERITY}
告警資訊:{TRIGGER.NAME}:{ITEM.VALUE}
事件 ID:{EVENT.ID}
操作細節:->
操作型別:發送訊息
發送到用戶:Admin (Zabbix Administrator)
僅送到:Mail-Test #一定要配置否則郵件發送不成功

恢復操作:{TRIGGER.STATUS}:{TRIGGER.NAME}
恢復資訊:
恢復主機:{HOST.NAME}
恢復 IP:{HOST.IP}
恢復時間:{EVENT.DATE}-{EVENT.TIME}
恢復等級:{TRIGGER.SEVERITY}
恢復資訊:{TRIGGER.NAME}:{ITEM.VALUE}
恢復 ID:{EVENT.ID}
操作細節:->
操作型別:發送訊息
發送到用戶:Admin (Zabbix Administrator)
僅送到:Mail-Test #一定要配置否則郵件發送不成功
6、重啟zabbix服務器和agent服務器
[root@localhost ~]# systemctl restart zabbix-server
[root@localhost ~]# systemctl restart zabbix-agent.service
7、測驗報警
我這里測驗的是客戶機192.168.200.200,執行命令 ifconfig ens33 down 【關閉網卡】

啟動網卡后則提示恢復

補充:
主機可添加圈起來的模板,自己也可以制定模板,后續再弄,

本次分享的為zabbix郵箱報警配置,后續再更新其它媒介報警,
轉載請註明出處,本文鏈接:https://www.uj5u.com/caozuo/158247.html
標籤:Linux
