如何使用Zabbix Alert Scripts

- 建立Jabber Script
- 從終端測試
- 配置Zabbix使用Jabber script
- 建立Email Script
- 從終端測試
- 配置Zabbix使用phpmailer script
- 告訴Zabbix通知
- 翻轉伺服器以驗證操作
jabber.sh是Zabbix內置的Jabber / XMPP功能的替代品。
安裝前可能需要安裝“sendxmpp”。 這在Ubuntu Xenial伺服器安裝時是有效的,但CentOS / RHEL部署的路徑可能會有所不同。
Contents of /usr/lib/zabbix/alertscripts/jabber.sh:
#!/bin/bash to=$1 body=$2 cat <<EOF | sendxmpp -u user@server -p password -j server $1 $2 EOF
相應地為您的特定設置調整“用戶”、“伺服器”和“密碼”。 該 script應由zabbix用戶擁有,並具有執行權限設置:
-rwxr-xr-x 1 zabbix root 288 Jun 16 05:11 jabber.sh
測試,只需像其他一樣執行script。 注意傳遞給它的參數:
# /usr/lib/zabbix/alertscripts/jabber.sh recipient@server message
如果無法發送,請嘗試在script之外使用sendxmpp,並確保它能夠發送,然後根據需求調試script。
讓Zabbix看起來像這樣:
注意:用戶的媒體類型對應到我們之前輸入的Script名稱。
電子郵件遵循類似的程序。 只需確保安裝必要的PHP模塊。 這是設置為使用Gmail帳戶:
Contents of /usr/lib/zabbix/alertscripts/phpmailer.php:
#!/usr/bin/php
<?php
require_once "Mail.php";
$from = "ZABBIX <user@domain>";
$to = $argv[1];
$subject = $argv[2];
$body = $argv[3];
$host = "ssl://smtp.gmail.com";
$port = "465";
$username = "username";
$password = "password";
$headers = array ('From' => $from,
'To' => $to,
'Subject' => $subject);
$smtp = Mail::factory('smtp',
array ('host' => $host,
'port' => $port,
'auth' => true,
'username' => $username,
'password' => $password));
$mail = $smtp->send($to, $headers, $body);
?>
相應地為您的特定設置調整“用戶”,“伺服器”和“密碼”。 該script應由zabbix用戶擁有並具有執行權限設置:
-rwxr-xr-x 1 zabbix root 572 Jun 16 12:26 phpmailer.php
測試,只需像其他任何一樣執行script。 注意傳遞給它的參數:
# /usr/lib/zabbix/alertscripts/phpmailer.php [email protected] subject body
讓Zabbix看起來像這樣:

請注意,用戶的媒體的“類型”對應於我們之前添加的script的名稱。
最重要的一步!
這告訴zabbix剛剛我們實際使用設置的一切。
一旦啟用,打開一個伺服器讓zabbix告訴你一些事情。
檢查Pidgin和您的電子郵件,看看它是否有效!:)




我要留言