zabbix之 qq郵件報警


一、安裝sendmail或postfix
[root@zabbix ~]# yum install sendmail –y                     #在線yum安裝sendmail
[root@zabbix ~]# service sendmail start                       #啟動sendmail服務
[root@zabbix ~]# chkconfig sendmail on                        #設置開機啟動
CentOS 5.x 默認已經安裝好sendmail   (這個可以查一下)
CentOS 6.x 默認已經安裝好postfix      (這個可以查一下)
sendmail和postfix只需要安裝一個即可並開啟服務即可。
[root@zabbix ~]# /etc/init.d/sendmail status                  #查看sendmail啟動情況
sendmail 已死,但是 subsys 被鎖          
sm-client (pid  2113) 正在運行...                                                     #sendmail進程鎖住,原因是postfix服務啟動導致sendmail服務進程鎖住,需要關閉postfix服務
[root@zabbix ~]# /etc/init.d/postfix stop                     #暫停postfix服務
[root@zabbix ~]# chkconfig postfix off                        #設置postfix開機不啟動
[root@zabbix ~]# /etc/init.d/sendmail stop                    #暫停sendmail服務
[root@zabbix ~]# /etc/init.d/sendmail start                   #啟動sendmail服務
[root@zabbix ~]# /etc/init.d/sendmail status                  #查看sendmail啟動情況
sendmail (pid  2475) 正在運行...
sm-client (pid  2485) 正在運行...
 
二、安裝郵件發送工具mailx
[root@zabbix ~]# yum remove mailx                            #卸載系統自帶的舊版mailx
[root@zabbix ~]# yum install mailx –y                       #安裝
[root@zabbix ~]#mailx -V                                     #查看版本信息
[root@zabbix ~]# whereis mailx                               #查看安裝路徑
 
利用外部的smpt服務器
而通過修改配置文件可以使用外部SMTP服務器,可以達到不使用sendmail而用外部的smtp服務器發送郵件的目的:
[root@zabbix ~]# vim /etc/mail.rc  修改/etc/mail.rc
set from=709885674@qq.com smtp=smtp.qq.com
set smtp-auth-user=709885674@qq.com smtp-auth-password=********
set smtp-auth=login
說明:
from是發送的郵件地址
smtp是發生的外部smtp服務器的地址
smtp-auth-user是外部smtp服務器認證的用戶名
smtp-auth-password是外部smtp服務器認證的用戶密碼,在qq郵箱中設置生成  (郵箱密碼使用SMTP授權碼)
smtp-auth是郵件認證的方式
配置成功后,就可以使用了
可以發送一封郵件測試一下:
[root@zabbix ~]# mailx -s "mail from linux" 709885674@qq.com < zabbixtest.txt 其中-s后面的是郵件標題,709885674@qq.com是收件人地址,zabbixtest.txt里面是郵件正文(先創建zabbixtest.txt寫入內容)
收到郵件如下:

Zabbix監控系統郵件報警設置方法

編寫郵件發送腳本sendmail.sh

[root@zabbix ~]#cd /usr/local/zabbix/share/zabbix/alertscripts/  #進入zabbix默認存放腳本路徑

[root@zabbix alertscripts]# 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

 

[root@zabbix ~]# chown zabbix.zabbix /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh

#sendmail.sh腳本修改所屬用戶和用戶組

[root@zabbix ~]# chmod 755 /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh

#sendmail腳本賦予執行權限

[root@zabbix ~]# ls -l /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh

 -rwxr-xr-x. 1 zabbix zabbix 153 10月 25 15:09 /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh  

#查看sendmail.sh腳本權限相關信息

[root@zabbix ~]# vim /usr/local/zabbix/etc/zabbix_server.conf    #配置zabbix_server.conf配置文件

AlertScriptsPath=/usr/local/zabbix/share/zabbix/alertscripts

#加入一行sendmail.sh腳本存放路徑

[root@zabbix ~]# su zabbix                                                            #切換zabbix用戶

[zabbix@zabbix root]$ /usr/local/zabbix/share/zabbix/alertscripts/sendmail.sh  709885674@qq.com "test linux"  "test"

#用zabbix用戶執行sendmail.sh腳本看是否有權限,發件成功,郵件如下:

 

進入Zabbix后台web介面配置

1、管理 ----報警媒介類型-----創建媒介類型。

Zabbix監控系統郵件報警設置方法

2、名稱可以隨便自己定義-----類型選擇“腳本”-----腳本名稱輸入上一步編寫的發送郵件的腳本名稱----

再添加以下3個參數,分別對應腳本需要的3個參數:收件人地址、主題、詳細內容:

{ALERT.SENDTO}    #收件人地址

{ALERT.SUBJECT}   #主題

{ALERT.MESSAGE}   #詳細內容

Zabbix監控系統郵件報警設置方法

3、管理----用戶-----選擇admin用戶(自己創建一個用戶也可以)。

Zabbix監控系統郵件報警設置方法

4、報警媒介----添加。

Zabbix監控系統郵件報警設置方法

5、類型輸入剛剛創建的報警媒介類型sendmail腳本---輸入個人郵箱用於接收報警郵件---啟動打勾----添加。

Zabbix監控系統郵件報警設置方法

6、選擇更新。

Zabbix監控系統郵件報警設置方法

7、權限設置(管理員用戶不用修改,權限默認所有服務器,如果要分類權限需要在用戶組進行控制)。

Zabbix監控系統郵件報警設置方法

8、管理---用戶群組,需要把剛剛添加的

Zabbix監控系統郵件報警設置方法

Zabbix監控系統郵件報警設置方法

9、配置----動作----創建動作。

Zabbix監控系統郵件報警設置方法

10、動作----名稱自定義---設置一條新的觸發條件----啟用----添加。(觸發條件根據實際情況設置) “觸發器名稱”、“ 似”、方框可填入“is unreachable for 5 minutes”#根據主機觸發器 Template App Zabbix Agent:Zabbix agent on {HOST.NAME} is unreachable for 5 minutes設置,主要監測zabbix_agentd客戶端連接情況。

Zabbix監控系統郵件報警設置方法

11、配置---動作---操作(自定義的,根據自己的需求定義)。

Zabbix監控系統郵件報警設置方法

默認接收人: fault {trigger.status}, server: {HOSTNAME1} occurs: {trigger.name} failure!

默認信息: alarm HOST IP address: {host.conn}

Alarm host: {HOSTNAME1}

Alarm TIME: {event.date} {event.time}

Alarm level: {trigger.severity}

Warning: {trigger.name}

Alarm project: {trigger.key1}

Details: {item.name} : {item.value}

Current STATUS: {trigger.status} : {item.value1}

12、配置---動作---恢復操作(自定義的,根據自己的需求定義)。

Zabbix監控系統郵件報警設置方法

默認接收人:: restore {trigger.status}, server: {HOSTNAME1}: {trigger.name} has been restored!

恢復信息: alarm HOST IP address: {host.conn}

Alarm host: {HOSTNAME1}

Alarm TIME: {event.date} {event.time}

Alarm level: {trigger.severity}

Warning: {trigger.name}

Alarm project: {trigger.key1}

Details: {item.name} : {item.value}

Current STATUS: {trigger.status} : {item.value1}

13、已經設置好了,我們測試一下。檢測中---儀表板,在 “系統狀態”可以看到,有一個一般嚴重的故障,把鼠標放在1的位置就能看到相關信息。

Zabbix監控系統郵件報警設置方法

14、報表---動作日志,可以看到發件的狀態:已發送及內容(我這亂碼了)。

Zabbix監控系統郵件報警設置方法

15、返回郵箱,可以看到郵件報警內容了。(我這亂碼了)。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM