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. ユーザー設定 > プロファイル に移動し、Media タブに切り替えて、メールアドレスを追加します

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. 障害を解消して証明書の値の監視を続けるには、マクロ値を元の値に戻します。

関連項目