廢話不多說,直接進入主題。 1、安裝mailx [root@localhost ~]#yum install malix -y #yum安裝malix [root@localhost ~]# vi /etc/malix.rc #配置郵箱,配置第三方軟體發送郵件。 2、在配置文件的最後添加第三方郵件的 ...
廢話不多說,直接進入主題。
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郵箱報警配置,後續再更新其它媒介報警。