サーバー専門のフリーランスエンジニアです。クラウドサービスを利用してWebサイト、ITシステムのサーバー構成設計とサーバー構築を行います。TechNagiosでSSLサーバー証明書の有効期限を監視0010監視ツールNagiosは、サーバーのリソース監視やHTTPの死活監視に便利なツールですが、それ以外にも幅広い監視が可能です。その中でも僕が気に入ってよく使っているのが、SSLサーバー証明書の有効期限の監視です。以下のように、check_httpコマンドで-Cオプションを使用すると、SSLサーバー証明書の有効期限をチェックできます。Pluginhttps://www.monitoring-plugins.org/doc/man/check_http.html-Iで、チェック対象サーバーのIPアドレスもしくはネットワーク的に到達できるホスト名を指定。-Hで、チェック時のHostヘッダ、つまりチェック対象のSSLサーバー証明書のCommonNameを指定。-Cで、有効期限まで○日以内のときWARNING.CRITICALとみなす日数を指定。–sniで、1サーバーに複数のSSLサーバー証明書を設置、運用する場合のSNIモードでの監視に対応。※-Iオプション、-Hオプションは、証明書の有効期限のチェックに限らず、HTTP/HTTPS死活監視でも同様の意味を持ちます。commands.cfg(2016.4.28追記)–sniオプションが抜けていたので追記しました。$ARG2$,$ARG3$}サービス定義。-Cオプションを使う例はよく見かけますが、-Iオプションと–sniオプションもつけるとよいと思います。-Iオプションは、例えば、同じCommonNameの証明書を複数のサーバーに設置した場合、明示的に監視するサーバーを指定できます。証明書を設置してそれぞれ監視したい場合は、以下のようにします。30,10サービス定義はこんな感じ。VirtualHostで1サーバーに複数のSSLサーバー証明書を設置している場合は、必ず–sniオプションをつけましょう。VirtualHostでは、最初に定義したVirtualHost)でHTTPSアクセスするので、-Hで指定したホスト名の証明書の監視をしてくれないことがあります。2枚の証明書の監視を行う場合は、以下のようにします。30,10サービス定義はこんな感じ。check_sslcert_expire!test2.example.com!30,10}通常、証明書の有効期限は1年もしくは3年に一度しかやってこないと思いますが、正しく設定できていないと肝心なときにアラート通知されません。複数サーバーで同じホスト名を使用する場合や、1サーバーに複数のSSLサーバー証明書を設置している場合にNagiosで監視する場合は、chekc_httpコマンドを使って、意図したとおりの監視を行うことを確認するとよいでしょう。DesignInaba【お問い合わせ】お名前または法人名・団体名、メールアドレスと、簡潔な内容で構いませんので、お問い合わせ内容をご記入ください。折り返しご連絡いたします。※いただいた情報は他の目的には使用いたしません(個人情報の取り扱いについてはこちらのプライバシーポリシーをご参照ください)。(必須)↑お問い合わせ内容をご確認のうえ、チェックを入れてから「送信」してください。