Nagios で SSL 証明書の有効期限を監視する
こんにちは nakamura です。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 をリロードすると・・・
監視が追加されました。バッチリですね!
終わりに
Zabbix も便利だけど Nagios もまだまだいけるよな~というお話しでした。
- Nagios統合監視[実践]リファレンス (Software Design plus)
- 株式会社エクストランス 佐藤 省吾 Team-Nagios
- 技術評論社 2011-03-25
by G-Tools , 2011/08/10