Zabbix のメールスクリプトを設置

参考 : http://www.zabbix.jp/node/1441

# cd /usr/local/src/
# git clone git://github.com/zabbix-jp/plugins.git
# mv plugins zabbix-jp-plugins
# cp -a /usr/local/src/zabbix-jp-plugins/notification/sendmessage-smtp-php /etc/zabbix/alertscripts/
# chmod 755 /etc/zabbix/alertscripts/sendmessage-smtp-php/sendmessage_smtp_php.sh

メールスクリプトの設定

メールスクリプトの SMTP 認証の設定をします。

AWS コンソールから各項目の値を取得できます。HOST のポート番号は 465 です。

また動作しない場合は $mailer->SMTPDebug = 1; と追加することで、

デバッグモードを有効にしてエラーを知ることもできます。

# emacs /var/lib/zabbix/sendmessage-smtp-php/sendmessage_smtp_php.sh

$MAILSMTPHOST = ‘email-smtp.us-east-1.amazonaws.com:465’;

$MAILSMTPUSER = ‘SMTP-USERNAME’;

$MAILSMTPPASS = ‘SMTP-USERPASS’;

$mailer->SMTPDebug = 1;

Zabbix の設定ファイルにメールスクリプトのパスを記します。

# emacs /var/lib/zabbix/zabbix_server.conf

AlertScriptsPath=/etc/zabbix/alertscripts

コマンドで確認

php sendmessage-smtp-php/sendmessage_smtp_php.sh mail@sample.com title body

success が返れば成功

php の OpenSSL が有効になっていないと怒られたので、

-with-openssl 追加し再コンパイルし直し。その後受信確認できました。

スクリプトを登録

あとは通常通り Zabbix の管理画面からスクリプトを登録します、

管理 -> メディアタイプ -> メディアタイプの作成をクリックし、

  • 説明 : sendmessagesmtpphp.sh
  • タイプ : スクリプト
  • 名前 : sendmessagesmtpphp/sendmessagesmtpphp.sh

と入力し登録。ユーザーとアクションを設定すれば完了です。