Nagios で SSL 証明書の有効期限を監視する

Nagios で SSL 証明書の有効期限を監視する

こんにちは nakamura です。minami のアイコン minami が変わっている事にみなさんお気付きでしょうか?そりゃ暑いよね~。ヘルメットかぶるとサザエさんみたいになるらしいですよ。

まぁそんなことはどうでもよくって、SSL 証明書の管理ってなかなか面倒じゃないですか?CA から事前にメール通知されるはずですが、なぜか昔の担当者が個人のアドレスで登録していて、気が付いたら有効期限を 1 ヶ月以上過ぎてた!なんてのは人間生きていれば一度はあるはず。

てなわけで CA に頼らず自分でも SSL 証明書の有効期限を監視してメール通知するような仕組みを作りたいな~なんて思ってたら、Nagios でいとも簡単にできてしまったので今日はその方法をご紹介します。

設定方法

とはいうものの記事にするほどのボリュームもないぐらい簡単なんですけどね・・・。check_http というデフォルトで用意されているプラグインを使います。主に HTTP の監視をするためのものですが、-C オプションを付けることで SSL 証明書の有効期限が監視できるんですね~。いやぁ便利。

check_http のオプションは上記の URL か、CentOS であれば /usr/lib/nagios/plugins/check_http --help と実行する事でコマンドラインでも閲覧できます。

ということで設定ファイルにはこんな感じで書きました。

/etc/nagios/objects/commands.cfg

# 'check_ssl_expires' command definition
define command {
  command_name  check_ssl_expires
  command_line  $USER1$/check_http -I $HOSTADDRESS$ -H $ARG1$ -C $ARG2$
}

第一引数がドメイン名、第二引数が有効期限の何日前からアラートを飛ばすか、です。

実際に service を定義するのは以下のような感じでいけます。

define service {
  host_name             http_c-brains
  service_description   SSL EXPIRES ssl.c-brains.jp
  check_command         check_ssl_expires!ssl.c-brains.jp!30
}

記述を追加した上で nagios をリロードすると・・・

20110810_nakamura_01.png

監視が追加されました。バッチリですね!

終わりに

Zabbix も便利だけど Nagios もまだまだいけるよな~というお話しでした。

photo
Nagios統合監視[実践]リファレンス (Software Design plus)
株式会社エクストランス 佐藤 省吾 Team-Nagios
技術評論社 2011-03-25

by G-Tools , 2011/08/10

  • このエントリーをはてなブックマークに追加

この記事を読んだ人にオススメ