ksaitoの日記

日々試したことの覚え書き

Webサーバのサーバ証明書の有効期限を監視する

Webサーバでhttpsを使う場合、サーバ証明書をセットアップします。
自己署名するか商用の証明書を購入しますが、いずれも有効期限があり期限が切れると予期せぬトラブルの元になります。
nagios3で、この証明書の有効期限を監視することができます。

プラグインの動作確認

nagios-pluginでインストールされるcheck_httpを使います。
まずは、手動で動作確認してみます。

$ /usr/lib/nagios/plugins/check_http -H localhost -C 180 --ssl
OK - Certificate will expire on 11/10/2019 15:20.
$

nagiosへの組み込み

commands.cfgに手動で確認したコマンドを定義します。

define command {
       command_name    check_https_cert
       command_line    $USER1$/check_http -H $HOSTADDRESS$ -C $ARG1$ --ssl
}

次にserviceを定義します。

define service {
       hostgroup_name           https-servers
       service_description      HTTPS
       check_command            check_https_cert!180
       use                      generic-service
}

これで証明書が切れる半年前に通知されます。