Nagios藉助yahoo.cn郵箱實現手機短信報警功能

Nagios 藉助yahoo.cn郵箱實現手機短信報警功能
做者:田逸([email]sery@163.com[/email]) from[url]http://server.it168.com/server/[/url] 2007-12-25 /200712251000517.shtml
 
在《Nagios遠程監控軟件的安裝與配置詳解》([url]http://netsecurity.51cto.com/[/url]
art/200706/48728.htm )一文中,曾經簡單的介紹在沒有短信網關或短信貓的狀況下使用短信報警的方法。前段時間,經不住yahoo郵件無限制容量的誘惑申請了一個拿來用用,還不錯,很來無心中發現還有來信短信提醒功能,乖乖,何不把報警郵件發送到這個yahoo郵箱,而後經過「來信短信提醒功能」把信息轉發到手機上。
 
下面介紹「如何定製電郵提醒」
A 若是您是中國移動用戶,定製過程包括:綁定手機(免費綁定)-定製服務(10/月)
具體操做請按照如下步驟進行:
1 用您的Yahoo! ID和密碼登陸 Yahoo! Mail 的頁面
2
點擊頁面左面的「
郵件到達短信提醒 」連接
3 若是您的手機尚未與您的Yahoo! ID進行綁定,操做步驟:
請先綁定您的手機號碼:
  1
)在彈出的對話框中的「請輸入您的手機號碼」後面填入您想綁定的手機號碼
  2
)點擊「肯定」按鈕
  3
)您的手機會收到系統給您發送的驗證碼
若是您確實想定製此項服務:
 4 )在接下來的頁面中,填入系統給您發送的驗證碼,點擊「肯定」按鈕
按照頁面的提示,用手機發送數字指令WXD3721,以完成定製過程.
4 若是您的手機已經綁定Yahoo! ID,點擊頁面左面的「 郵件到達短信提醒 」連接
按照頁面的提示, 用手機發送數字指令WXD3721,以完成定製過程.
5
徹底登出您的郵箱
  1
)單擊電郵頁面右上角的「登出」連接
  2
)單擊「徹底登出」連接。

 
B 若是您是中國聯通用戶,定製過程包括:發送指令,定製服務(10/月)-綁定手機
具體操做請按照如下步驟進行:
1 用您的Yahoo! ID和密碼登陸 Yahoo! Mail 的頁面
2
點擊頁面左面的「
郵件到達短信提醒 」連接
3 若是您的手機尚未與您的Yahoo! ID進行綁定,操做步驟:
  1 )在彈出對話框中的「請輸入您的手機號碼」後面填入您想綁定的手機號碼
  2 )點擊「肯定」按鈕
  3 )發送數字指令「YH」到9372,收到短信提示後,按照提示回覆短信,完成定製。
  4 )點擊頁面中的「繼續」按鈕,您會收到一個驗證碼信息,請將您收到的驗證碼填寫到下一頁中的「請輸入您
手機收到的驗證碼」後空白處,並點擊「確認」,完成綁定手機過程。
4
若是您的手機已經綁定Yahoo! ID,點擊頁面左面的「
郵件到達短信提醒 」連接
按照頁面的提示,用手機發送相應數字指令,以完成定製過程.
5 徹底登出您的郵箱
  1
)單擊電郵頁面右上角的「登出」連接
  2
)單擊「徹底登出」連接。

 
注意:電郵提醒服務暫不支持福建地區的中國移動用戶以及電郵聯盟用戶。

 按照上面的提示,很容易設置這個功能的。爲了使短信提醒符合咱們的實際要求,須要對某些項目進行設置。一個是「提示信息選擇」,另外一個是「提示時間設置」,其設置狀況如圖所示:

點左下方連接POP3+來信提醒」進行設置。 

提示信息選擇選第3個單選框「您收到[寄件人]發送的郵件:[郵件標題]」,這樣設置的目的是由於郵件標題能夠很明顯的知道故障發生在哪裏(標題信息來自Nagios的配置文件);服務器須要24小時監控,因此把「提醒時間設置」相里面的3個複選框全取消。設置完畢後,用一個別的郵箱發個郵件給你的yahoo信箱,片刻手機就會收到短信。
 
美中不足,yahoo短信不能支持稍長一點的郵件標題,這是我打yahoo客服電話知道的。登陸網站收郵件(不支持pop,我暈),發現來了很多Nagios服務報警郵件,能夠沒收到任何一個短信,打電話問才知道是標題過長。既然這樣,我把標題改短點吧。登陸Nagios系統,修改文件 commands.conf,個人文件位置是 /usr/local/nagios/etc/commands.conf,修改內容爲:
# 'notify-by-email' command definition
define command{
        command_name    notify-by-email
        command_line    /usr/bin/printf "%b" "***** Nagios 2.9 *****\n\nNotification Type: $NOTIFICATIONTYPE$\n\nService: $SERVICEDESC$\nHost: $HOSTALIAS$\nAddress: $HOSTADDRESS$\nState: $SERVICESTATE$\n\nDate/Time: $LONGDATETIME$\n\nAdditional Info:\n\n$SERVICEOUTPUT$" | /bin/mail -s "$HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ " $CONTACTEMAIL$
        }
默認的有點長,我把它縮短成上面那個樣子,即用紅色字體標識的是被減縮的。接着修改文件contacts.conf,把收信人地址改稱yahoo.cn郵箱。改完後須重啓nagios服務。如今來檢驗一下效果:把nagios監控的某個服務器的服務停掉幾分鐘,而後去yahoo郵箱收郵件,正常的話,只要郵件一到信箱短信就跟着來了。
 
爲了不諸如發件人的名稱爲root這樣的問題,啓用郵件別名彷佛更佳一些。
 
最後展現一下手機收到的短信的樣式:
你收到[ vmail @sery.com ]的郵件: [Host UP alert for apache_sery]
看這個標題我就知道服務器是怎麼一個狀態。
 
                    海淀福源門悟真閣
                          2007-12-18
相關文章
相關標籤/搜索