*

ZabbixからsSMTPを利用してエラー通知メール送信

公開日: : 投稿者:raru Linux, Raspbian, サーバ, メール

今回はsSMTPを利用してRaspbian上のZabbix Serverからアラートメールの送信を行います。
また、合わせてサーバ監視の設定も行いたいと思います。

ただしzabbix agentは利用していません。
今のところはhttp, httpsの監視だけで充分だと考えています。

監視対象ホストの追加

まずは監視対象ホストを追加します。
ホスト設定とメール設定の順番は前後しても問題ないのであまり気になさらず。

まずはzabbixのウェブ管理画面へアクセスして[Configuration] -> [Hosts]と選択してください。
その後create hostを選択して、ホストを追加していきます。

ホスト追加設定1

今回はこのブログサーバを対象に監視しているので、ホストにはドメインを指定。
表示用の名前も同じで充分なので同様に。
グループはデフォルトで用意されていたlinux serverを指定しました。
新しく作成しても、他を指定しても構いません。自分が管理するためのグルーピングですので監視動作自体に影響はないはずです。

またzabbix-gentを利用しなくても Agent interfaces設定は必要になってしまうのでDNSにしつつそれっぽく指定しています。指定しているだけで実際には利用されていません。

ここまで設定ができたら、テンプレートタブを選択して監視する内容を設定します。

ホスト追加設定2

Link new templateのフォーム右にあるselectを押すと、テンプレート一覧が開くのでそこからhttp, httpsを選択して、Addボタンを押した後の画面です。
あとはSaveを選択して保存すれば完了です。

ホスト追加設定3

これで監視対象のホスト設定が追加されました。

sSMTPアラートメール設定

続いてメール送信の設定を行います。
Zabbixのメール送信では送信用のsmtpを設定するものがあります。
しかしsSMTPでは通信の受付を行う用のsmtpを自分自身に持っていないため、この設定が使えません。

仕方がないので他に用意されているスクリプトの設定を行い、そのスクリプトからsSMTPを利用したいと思います。

まずは[Administration] -> [Media Type] -> Create media typeを選択と画面を遷移していきます。
そうすると以下のような画面が表示されるのでタイプがscriptとなる、メディアタイプを追加します。

メール用設定1

次はメールの宛先の設定を行います。
[Administration] -> [Users]と画面を移動して、以下の画面にある Admin (Zabbix Administrator)を選択していきます。

メール用設定2

そうすると画面が遷移しますので、その画面の中からメディアタブを選択して[追加]リンクを選択して設定を行います。

ホスト追加設定3

この設定ではhogehoge@gmail.com宛に、24時間、毎日時間関係なしでメールを送信するようになります。
曜日や時間を設定したい方は時間の設定を編集してください。
個人的には24時間365日しないのであれば、なんのための監視なんだと思いますが。

以上でzabbix上の設定は完了です。

shellスクリプト作成

先ほど設定したシェルを作成します。
また、合わせてもろもろ設定の確認や権限設定をしましょう。

root@raspberrypi:~# cat /etc/zabbix/zabbix_server.conf | grep AlertScriptsPath
### Option: AlertScriptsPath
# AlertScriptsPath=${datadir}/zabbix/alertscripts
// 設定したシェル配置用directory
AlertScriptsPath=/etc/zabbix/alert.d/

root@raspberrypi:~# vi /etc/zabbix/alert.d/zabbix-alert-mail.sh
root@raspberrypi:~# chown zabbix:zabbix /etc/zabbix/alert.d/zabbix-alert-mail.sh 
root@raspberrypi:~# chmod 744 /etc/zabbix/alert.d/zabbix-alert-mail.sh 
root@raspberrypi:~# ls -l /etc/zabbix/alert.d/zabbix-alert-mail.sh 
-rwxr--r-- 1 zabbix zabbix 240 11月  1 00:57 /etc/zabbix/alert.d/zabbix-alert-mail.sh
root@raspberrypi:~# cat /etc/zabbix/alert.d/zabbix-alert-mail.sh 
#!/bin/sh

export MAIL_TO="$1"
export SUBJECT="$2"
export CONTENT="$3"

echo "$CONTENT" > /tmp/mymailinput_$$

mail -E -s "$SUBJECT" $MAIL_TO < /tmp/mymailinput_$$
rm /tmp/mymailinput_$$

まずはシェルを配置する場所を確認します。
次にシェルを作成して、権限の設定です。

シェルの中身自体は、先ほど設定していた値がzabbixから渡されるのでそれを利用してmailコマンドを叩いているだけです。
mailコマンドを叩けばsSMTPが利用されるので無事メールが送信されるということですね。

また動作検証を行うときにはhttp通信を落とすためfirewallを閉じるかアプリケーションサーバのデーモンを停止するなどがあります。
私はそもそも起動させてないぜんぜん関係ないサービスを監視対象にして動作検証を行いました。
そもそもhttp, httpsを止めたくはありませんので。

以上で基本的な監視設定は完了かと思います。

あとがき

基本的な設定は完了したとか言いつつ、アラート通知後何分間状態に変化がないと再通知が来るのか気になっています。
そもそもzabbixがどんなことができて、どういう設定があるのか理解していないのであとは随時使いながら覚えていこうと思います。

参考サイト

今回ウェブの管理コンソールからの設定は以下の方のものが非常に参考になりました。
Zabbixを使ってエージェント無しで単純な Webサイト監視だけを行う最短の方法

関連記事

no image

Raspberry Pi/ラズベリーパイ にFedora(Pidora)をインストール

Raspberry PI2にFedoraをインストール 注文していたRaspberry P

記事を読む

no image

CentOS6 初期設定

自宅に置いてある安鯖にCentOS6を入れて初期設定を行ないました。 前提条件/設定項目

記事を読む

no image

CentOS7 初期設定

しばらく振りになりますが、ひっそりとWordpressの移設を行っていました。 お仕事が多忙を極め

記事を読む

no image

Raspbianでメール送信 ssmtp編

Raspbianで監視などをおこなっているとメールが送信したくなります。 とりあえず何かと管理用に

記事を読む

no image

ZabbixでSSL証明書期限チェック

zabbixは初期状態でhttps系の監視が微妙なため、証明書期限の監視設定などを行ってみたいと思い

記事を読む

no image

SPFの送受信設定

今回はSPFの設定を行います。 SPFとは何かということについてはここでは割愛しますが、メールの送

記事を読む

no image

OpenDKIMを利用したメール認証

今回はOpenDKIMを利用したメール認証設定を行います。 DKIMやらSPFやら、メールは何かと

記事を読む

no image

DDNS(No-IP)をcronで更新

DDNSを利用してzabbix agentを導入できないかと思い、ひとまずDDNSの設定を行いました

記事を読む

no image

RaspberryPi2のFedora22にOpenVPN構築

コツコツと以前購入してoverclockしたraspberry pi2にOpenVPNを構築していま

記事を読む

no image

apache2.4でBOTからのアクセスを排除

私は何か数字が動くものを見るのが好きでgoogle analyticsのリアルタイム情報をよく見てい

記事を読む

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

PAGE TOP ↑