9 Zabbixエージェント2(パッシブ)でWebサイトの証明書を監視する

はじめに

このガイドでは、Zabbix agent 2のweb.certificate.getキーを使用してSSL/TLS証明書を設定および監視する方法について、包括的な概要を提供します。単一または複数のWebサイトの証明書監視を簡素化し、管理者が期限切れや無効な証明書などの潜在的な問題を迅速に特定できるように設計されています。

このガイドの対象者

このガイドはZabbixの新規ユーザー向けに作成されており、ウェブサイト証明書の基本的な監視を有効にするために必要な最小限の手順が含まれています。高度なカスタマイズやより詳細な設定が必要な場合は、Zabbixマニュアルの設定セクションを参照してください。

前提条件

このガイドを進める前に、ダウンロードとインストールの手順に従って、Zabbixサーバー、Zabbixフロントエンド、およびZabbixエージェント2をお使いのOSにインストールする必要があります。このチュートリアルでは、Zabbixサーバーとエージェントの両方が同じマシンにインストールされていることを前提としています。そのため、設定では127.0.0.1が使用されています。

Zabbix agent 2の設定

1. Zabbix agentの設定ファイル(デフォルトパス: /etc/zabbix/zabbix_agent2.conf)を開きます。

sudo vi /etc/zabbix/zabbix_agent2.conf

2. エージェントとサーバーが同じマシンで動作しているため、Serverパラメータを127.0.0.1に設定します。

Server=127.0.0.1

3. ファイルを保存し、Zabbix agent 2サービスを再起動します。

sudo systemctl restart zabbix-agent2

4. Zabbix agent 2のセットアップと設定後、次のコマンドでエージェントの稼働をテストします。

zabbix_get -s 127.0.0.1 -k web.certificate.get[<website_DNS_name>]

Zabbix agent 2にはデフォルトでWebCertificateプラグインが含まれているため、別途インストールや設定は不要です。

Zabbix Webインターフェースの設定

1. Zabbix Webインターフェースにログインします。

2. Monitoring > Hosts に移動します。

3. Webサイト証明書を監視したい既存のホストをクリックするか、必要に応じて ホストを作成 します。

  • Host name フィールドに、ホスト名を入力します(例: "Certificate Monitoring")。
  • Templates フィールドで、ホストに リンク するテンプレート "Website certificate by Zabbix agent 2" を入力または選択します。
  • Host groups フィールドで、ホストグループを入力または選択します(例: "SSL/TLS Monitoring")。
  • Interfaces フィールドで、"Agent" タイプのインターフェースを追加し、IPアドレスを指定します。 この例では "127.0.0.1" を使用します。

  • Macros タブで Inherited and host macros に切り替え、次のマクロを探して、値の横にある Change をクリックして更新します。
    • {$CERT.WEBSITE.HOSTNAME} - 値として、指定したいWebサイトのDNS名を入力します。

4. Add をクリックしてホストを追加します。

複数のWebサイトを監視するには、{$CERT.WEBSITE.HOSTNAME} マクロに、ホスト名をカンマ区切りで指定できます。必要に応じて、{$CERT.WEBSITE.PORT} マクロにポート番号のカンマ区切りリストも指定できます。この場合、各ポートは順番に対応するホスト名に対応します。たとえば、example.com と example.org をポート 8443 で監視するには、次のように指定します。

  • {$CERT.WEBSITE.HOSTNAME}: example.com,example.org
  • {$CERT.WEBSITE.PORT}: 443,8443

{$CERT.WEBSITE.HOSTNAME} マクロで指定した各Webサイトごとに、Zabbix は対応するアイテムとトリガーのセットを作成します。これにより、各Webサイトの SSL 証明書を個別に監視し、アラートを発報できます。

収集されたメトリクスを表示する

おめでとうございます。ここまでで、Zabbix は目的の Web 証明書をすでに監視しています。

収集されたメトリクスを表示するには、Monitoring > Hosts メニューセクションに移動し、ホストの横にある Latest data をクリックして、期限切れ日、発行者、サブジェクトなど、収集された最新のメトリクスを一覧で表示します。

問題アラートの設定

Zabbixはインフラストラクチャの問題について通知できます。 このガイドでは、メールアラートを送信するための基本的な設定手順を説明します。

1. ユーザー設定 > プロファイルに移動し、メディアタブに切り替えてメールアドレスを追加します。

2. 問題通知の受信のガイドに従います。

次回、Zabbixが問題を検出したときに、メールでアラートを受信できるはずです。

設定をテストする

設定をテストするには、Zabbix Webインターフェースでホスト設定を更新し、実際の問題をシミュレートできます。

1. Zabbixで「Certificate Monitoring」ホストの設定を開きます。

2. Macros タブに切り替え、Inherited and host macros を選択します。

3. 以前に設定した {$CERT.EXPIRY.WARN} マクロ値の横にある Change をクリックし、非常に大きい日数を設定します(証明書の有効期限前に警告を受け取るには、365日を超える値で十分です)。

4. Update をクリックしてホスト設定を更新します。

5. しばらくすると、Zabbix は有効期限までの日数を含む「SSL certificate expires soon」問題を検出します。 この問題は Monitoring > Problems に表示されます。

アラートが 設定されている 場合は、問題通知も受信します。

6. 問題を解決して証明書の値の監視を続けるには、マクロ値を元の値に戻します。

参考