IdM Healthcheck を使用した IdM 環境の監視

Red Hat Enterprise Linux 8

ステータスチェックとヘルスチェックの実行

Red Hat Customer Content Services

概要

ipa-healthcheck ユーティリティーは、管理者が Red Hat Identity Management (IdM) 環境の問題を検出するのに役立ちます。これには、IdM サービスのステータスチェック、設定ファイルのアクセス許可、レプリケーションステータス、証明書の問題が含まれます。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。まずは、マスター (master)、スレーブ (slave)、ブラックリスト (blacklist)、ホワイトリスト (whitelist) の 4 つの用語の置き換えから始めます。この取り組みは膨大な作業を要するため、今後の複数のリリースで段階的に用語の置き換えを実施して参ります。詳細は、Red Hat CTO である Chris Wright のメッセージ を参照してください。

Identity Management では、以下のような用語の置き換えが含まれます。

  • ブラックリストからブロックリスト
  • ホワイトリストから許可リスト
  • スレーブからセカンダリー
  • 単語 マスター は、コンテキストに応じて、より正確な言語に置き換えられます。

    • マスターからIdM サーバー
    • CA 更新マスター から CA 更新サーバー
    • CRL マスターからCRL パブリッシャーサーバー
    • マルチマスターからマルチサプライヤー

Red Hat ドキュメントへのフィードバック (英語のみ)

Red Hat ドキュメントに関するご意見やご感想をお寄せください。また、改善点があればお知らせください。

特定の文章に関するコメントの送信

  1. Multi-page HTML 形式でドキュメントを表示し、ページが完全にロードされてから右上隅に Feedback ボタンが表示されていることを確認します。
  2. カーソルを使用して、コメントを追加するテキスト部分を強調表示します。
  3. 強調表示されたテキストの近くに表示される Add Feedback ボタンをクリックします。
  4. フィードバックを追加し、Submit をクリックします。

Bugzilla からのフィードバック送信 (アカウントが必要)

  1. Bugzilla の Web サイトにログインします。
  2. Version メニューから正しいバージョンを選択します。
  3. Summary フィールドにわかりやすいタイトルを入力します。
  4. Description フィールドに、ドキュメントの改善に関するご意見を記入してください。ドキュメントの該当部分へのリンクも追加してください。
  5. Submit Bug をクリックします。

第1章 IdM Healthcheck ツールのインストールおよび実行

IdM Healthcheck ツールの詳細と、そのツールのインストールおよび実行方法を確認してください。

注記
  • Healthcheck ツールは、RHEL 8.1 以降でのみ利用できます。

1.1. IdM の Healthcheck

IdM (Identity Management) の Healthcheck ツールは、IdM 環境の健全性に影響を与える可能性がある問題を見つけるのに役立ちます。

注記

Healthcheck ツールは、Kerberos 認証なしで使用できるコマンドラインツールです。

モジュールは独立しています

Healthcheck は、以下をテストする独立したモジュールで設定されています。

  • レプリケーションの問題
  • 証明書の有効性
  • 認証局インフラストラクチャーの問題
  • IdM および Active Directory の信頼の問題
  • 正しいファイル許可と所有権設定

2 つの出力形式

ヘルスチェックでは、以下の出力が生成されます。これは、output-type オプションを使用して設定できます。

  • JSON: マシンが判読できる出力 (デフォルト)
  • human: 人間が判読できる出力

--output-file オプションで別の出力先ファイルを指定できます。

結果

Healthcheck の各モジュールは、次のいずれかの結果を返します。

SUCCESS
想定どおりに設定されています。
WARNING
エラーではありませんが、注目または評価すると良いでしょう。
ERROR
想定どおりに設定されていません。
CRITICAL
期待どおりに設定されておらず、影響を受ける可能性が高くなっています。

1.2. IdM Healthcheck のインストール

以下の手順に従って、IdM Healthcheck ツールをインストールします。

手順

  • ipa-healthcheck パッケージをインストールします。

    [root@server ~]# yum install ipa-healthcheck
    注記

    RHEL 8.1 および 8.2 システムでは、代わりに yum install /usr/bin/ipa-healthcheck コマンドを使用します。

検証手順

  • --failures-only オプションを使用して、ipa-healthcheck にエラーのみを報告させます。IdM インストールを完全に使用しても、空の結果 [] が返されます。

    [root@server ~]# ipa-healthcheck --failures-only
    []

関連情報

  • ipa-healthcheck --help を使用して、サポートされるすべての引数を表示します。

1.3. IdM Healthcheck の実行

Healthcheck は、ログローテーション を使用して手動で実行することも、また自動でも実行できます。

前提条件

手順

  • Healthcheck を手動で実行するには、ipa-healthcheck コマンドを実行します。

    [root@server ~]# ipa-healthcheck

関連情報

すべてのオプションは、man ipa-healthcheck の man ページを参照してください。

1.4. ログローテーション

ログローテーションは新しいログファイルを毎日作成し、ファイルが日付別に編成されます。ログファイルは同じディレクトリーに保存されるため、日付に応じて特定のログファイルを選択できます。

ローテーションは、ログファイルの最大数が設定されていて、その数を超えると、最新のファイルが最も古いファイルを書き直し、名前を変更することを意味します。たとえば、ローテーションの数が 30 の場合は、31 番目のファイル (最も古いファイル) が新しいファイルにより置き換えられます。

ログローテーションは、膨大なログファイルを減らして整理するため、ログの分析に役立ちます。

1.5. IdM Healthcheck でログローテーションの設定

次の手順に従って、ログローテーションを設定します。

  • systemd タイマー
  • crond サービス

systemd タイマーは、Healthcheck ツールを定期的に実行して、ログを生成します。デフォルト値は毎日午前 4 時に設定されています。

crond サービスは、ログローテーションに使用されます。

デフォルトのログ名は healthcheck.log で、ローテーションされるログは healthcheck.log-YYYYMMDD 形式を使用します。

前提条件

  • root でコマンドを実行できる。

手順

  1. systemd タイマーを有効にします。

    # systemctl enable ipa-healthcheck.timer
    Created symlink /etc/systemd/system/multi-user.target.wants/ipa-healthcheck.timer -> /usr/lib/systemd/system/ipa-healthcheck.timer.
  2. systemd タイマーを起動します。

    # systemctl start ipa-healthcheck.timer
  3. /etc/logrotate.d/ipahealthcheck ファイルを開いて、保存すべきログの数を設定します。

    デフォルトでは、ログローテーションは 30 日間設定されます。

  4. /etc/logrotate.d/ipahealthcheck ファイルで、ログへのパスを設定します。

    デフォルトでは、ログは /var/log/ipa/healthcheck/ ディレクトリーに保存されます。

  5. /etc/logrotate.d/ipahealthcheck ファイルで、ログ生成の時間を設定します。

    デフォルトでは、ログは毎日 午前 4 時に作成されます。

  6. ログローテーションを使用するには、crond サービスが有効になっており、実行していることを確認します。

    # systemctl enable crond
    # systemctl start crond

ログの生成を開始するには、IPA healthcheck サービスを起動します。

# systemctl start ipa-healthcheck

結果を確認するには、/var/log/ipa/healthcheck/ に移動して、ログが正しく作成されていることを確認します。

1.6. IdM Healthcheck 設定の変更

Healthcheck の設定を変更するには、目的のコマンドラインオプションを /etc/ipahealthcheck/ipahealthcheck.conf ファイルに追加します。これは、たとえばログローテーションを設定し、自動分析に適した形式でログが新しいタイマーを設定したくない場合に便利です。

注記

この Healthcheck 機能は、RHEL 8.7 以降でのみ利用できます。

変更後、Healthcheck が作成するすべてのログは、新しい設定に従います。この設定は、Healthcheck の手動実行にも適用されます。

注記

Healthcheck を手動で実行する場合は、設定ファイルの設定は、コマンドラインで指定されたオプションよりも優先されます。たとえば、設定ファイルで output_typehuman に設定されている場合、コマンドラインで json を指定しても効果はありません。設定ファイルで指定されていない、使用するコマンドラインオプションは通常に適用されます。

1.7. 出力ログの形式を変更するための Healthcheck の設定

すでに設定されているタイマーを使用して Healthcheck を設定するには、次の手順に従ってください。この例では、ヘルスチェックを設定して、人間が判読できる形式でログを生成し、エラーだけでなく正常な結果も含めるようにします。

前提条件

  • システムで RHEL 8.7 以降を実行している。
  • root 権限があります。
  • 以前にタイマーにログローテーションを設定している。

手順

  1. テキストエディターで /etc/ipahealthcheck/ipahealthcheck.conf ファイルを開きます。
  2. [default] セクションに、オプション output_type=humanall=True を追加します。
  3. ファイルを保存してから閉じます。

検証

  1. Healthcheck を手動で実行します。

    # ipa-healthcheck
  2. /var/log/ipa/healthcheck/ に移動し、ログの形式が正しいことを確認します。

1.8. 関連情報

第2章 IdM Healthcheck でサービスの確認

Healthcheck ツールを使用して、Identity Management (IdM) サーバーによって使用されるサービスを監視できます。

詳細は IdM のヘルスチェック を参照してください。

前提条件

  • Healthcheck ツールは、RHEL 8.1 以降でのみ利用できます。

2.1. サービスの Healthcheck テスト

Healthcheck ツールには、IdM サービスが稼働していないかどうかを確認するテストが含まれます。このテストは、実行中ではないサービスが他のテストで不具合を引き起こす可能性があるため、重要です。したがって、全サービスが最初に実行されていることを確認します。次に、その他のテスト結果をすべて確認できます。

すべてのサービステストを表示するには、--list-sources オプションを指定して、ipa-healthcheck を実行します。

# ipa-healthcheck --list-sources

ipahealthcheck.meta.services ソースの下に、Healthcheck でテストしたサービスをすべて確認できます。

  • certmonger
  • dirsrv
  • gssproxy
  • httpd
  • ipa_custodia
  • ipa_dnskeysyncd
  • ipa_otpd
  • kadmin
  • krb5kdc
  • named
  • pki_tomcatd
  • sssd
注記

問題を検出するには、すべての IdM サーバーで上記のテストを実行します。

2.2. Healthcheck でサービスのスクリーニング

Healthcheck ツールを使用して、Identity Management (IdM) サーバー上で実行されているサービスのスタンドアロン手動テストを実行するには、次の手順に従います。

Healthcheck ツールには多くのテストが含まれており、その結果は次の方法で短くすることができます。

  • 成功したテストをすべて除外する - --failures-only
  • サービステストのみを含める - --source=ipahealthcheck.meta.services

手順

  • サービスに関する警告、エラー、および重大な問題で Healthcheck を実行するには、次のコマンドを実行します。

    # ipa-healthcheck --source=ipahealthcheck.meta.services --failures-only

テストに成功すると、空の括弧が表示されます。

[ ]

サービスのいずれかが失敗した場合は、以下のような結果になります。

{
  "source": "ipahealthcheck.meta.services",
  "check": "httpd",
  "result": "ERROR",
  "kw": {
    "status": false,
    "msg": "httpd: not running"
  }
}

関連情報

  • man ipa-healthcheck を参照してください。

第3章 IdM Healthcheck でディスク領域の確認

Healthcheck ツールを使用して、Identity Management サーバーの空きディスク容量を監視できます。

詳細は IdM のヘルスチェック を参照してください。

前提条件

  • Healthcheck ツールは、RHEL 8.1 以降でのみ利用できます。

3.1. ディスク領域のヘルスチェックのテスト

Healthcheck ツールには、利用可能なディスク領域を確認するテストが含まれます。空きディスク容量が十分にないと、以下で問題が発生する可能性があります。

  • ロギング
  • 実行
  • バックアップ

テストでは、以下のパスを確認します。

表3.1 テスト済みのパス

テストで確認されるパス最小ディスク領域 (MB)

/var/lib/dirsrv/

1024

/var/lib/ipa/backup/

512

/var/log/

1024

var/log/audit/

512

/var/tmp/

512

/tmp/

512

テストの一覧を表示するには、--list-sources オプションを指定して、ipa-healthcheck を実行します。

# ipa-healthcheck --list-sources

ファイルシステムスペースチェックテストは、ipahealthcheck.system.filesystemspace ソースの下にあります。

FileSystemSpaceCheck

このテストでは、次の方法で使用可能なディスク容量を確認します。

  • 最低限必要な生の空きバイト。
  • パーセント - 空きディスクの最小容量は 20% にハードコーディングされています。

3.2. Healthcheck ツールでディスク領域のスクリーニング

Healthcheck ツールを使用して、Identity Management (IdM) サーバー上の利用可能なディスク容量のスタンドアロン手動テストを実行するには、次の手順に従います。

Healthcheck には多くのテストが含まれるため、次の方法で結果を絞り込むことができます。

  • 成功したテストをすべて除外する - --failures-only
  • 容量の確認テストのみを含める - --source=ipahealthcheck.system.filesystemspace

手順

  • ディスク領域に関する警告、エラー、および重大な問題で Healthcheck を実行するには、次のコマンドを実行します。

    # ipa-healthcheck --source=ipahealthcheck.system.filesystemspace --failures-only

テストに成功すると、空の括弧が表示されます。

[]

テストに失敗すると、たとえば、以下のような結果が表示されます。

{
  "source": "ipahealthcheck.system.filesystemspace",
  "check": "FileSystemSpaceCheck",
  "result": "ERROR",
  "kw": {
    "msg": "/var/lib/dirsrv: free space under threshold: 0 MiB < 1024 MiB",
    "store": "/var/lib/dirsrv",
    "free_space": 0,
    "threshold": 1024
  }
}

ここでは、/var/lib/dirsrv ディレクトリーの容量が不足しているためにテストに失敗したことが通知されます。

関連情報

  • man ipa-healthcheck を参照してください。

第4章 Healthcheck で IdM 設定ファイルの権限の確認

Healthcheck ツールを使用して Identity Management (IdM) 設定ファイルをテストする方法について詳しく説明します。

詳細は IdM のヘルスチェック を参照してください。

前提条件

  • Healthcheck ツールは、RHEL 8.1 以降でのみ利用できます。

4.1. ファイルパーミッションの Healthcheck テスト

Healthcheck ツールは、Identity Management (IdM) によりインストールまたは設定される重要なファイルの所有権とパーミッションをテストします。

テストされたファイルの所有権またはパーミッションを変更すると、テストにより 結果 セクションに警告が返ります。必ずしも設定が機能しないことを意味するわけではありませんが、ファイルがデフォルト設定と異なることを意味します。

すべてのテストを表示するには、--list-sources オプションを指定して ipa-healthcheck を実行します。

# ipa-healthcheck --list-sources

ファイル権限テストは、ipahealthcheck.ipa.files ソースの下にあります。

IPAFileNSSDBCheck
このテストは、389-ds NSS データベースと認証局 (CA) データベースを確認します。389-ds データベースは、/etc/dirsrv/slapd-<dashed-REALM> にあり、CA データベースは /etc/pki/pki-tomcat/alias/ にあります。
IPAFileCheck

このテストは以下のファイルを確認します。

  • /var/lib/ipa/ra-agent.{key|pem}
  • /var/lib/ipa/certs/httpd.pem
  • /var/lib/ipa/private/httpd.key
  • /etc/httpd/alias/ipasession.key
  • /etc/dirsrv/ds.keytab
  • /etc/ipa/ca.crt
  • /etc/ipa/custodia/server.keys

    PKINIT が有効になっている場合は、以下のファイルを確認します。

  • /var/lib/ipa/certs/kdc.pem
  • /var/lib/ipa/private/kdc.key

    DNS が設定されている場合は、以下のファイルを確認します。

  • /etc/named.keytab
  • /etc/ipa/dnssec/ipa-dnskeysyncd.keytab
TomcatFileCheck

このテストは、CA が設定されている場合に、いくつかの tomcat 固有のファイルを確認します。

  • /etc/pki/pki-tomcat/password.conf
  • /var/lib/pki/pki-tomcat/conf/ca/CS.cfg
  • /etc/pki/pki-tomcat/server.xml
注記

問題を確認するには、すべての IdM サーバーで上記のテストを実行します。

4.2. Healthcheck で設定ファイルのスクリーニング

Healthcheck ツールを使用して Identity Management (IdM) サーバーの設定ファイルのスタンドアロン手動テストを実行するには、次の手順に従います。

Healthcheck ツールには、多くのテストが含まれます。結果を絞り込むには、以下を行います。

  • 成功したテストをすべて除外する - --failures-only
  • 所有者テストとパーミッションテストのみを含める - --source=ipahealthcheck.ipa.files

手順

  1. 警告、エラー、重大な問題のみを表示しながら、IdM 設定ファイルの所有権とパーミッションで Healthcheck テストを実行するには、次のように入力します。

    # ipa-healthcheck --source=ipahealthcheck.ipa.files --failures-only

テストに成功すると、空の括弧が表示されます。

# ipa-healthcheck --source=ipahealthcheck.ipa.files --failures-only
[]

テストに失敗すると、以下の WARNING のような結果が表示されます。

{
  "source": "ipahealthcheck.ipa.files",
  "check": "IPAFileNSSDBCheck",
  "result": "WARNING",
  "kw": {
    "key": "_etc_dirsrv_slapd-EXAMPLE-TEST_pkcs11.txt_mode",
    "path": "/etc/dirsrv/slapd-EXAMPLE-TEST/pkcs11.txt",
    "type": "mode",
    "expected": "0640",
    "got": "0666",
    "msg": "Permissions of /etc/dirsrv/slapd-EXAMPLE-TEST/pkcs11.txt are 0666 and should be 0640"
  }
}

関連情報

  • man ipa-healthcheck を参照してください。

第5章 IdM Healthcheck で DNS レコードの確認

Healthcheck ツールを使用して、Identity Management (IdM) の DNS レコードの問題を特定できます。

前提条件

  • Healthcheck ツールは、RHEL 8.2 以降でのみ利用できます。

5.1. DNS レコードのヘルスチェックテスト

Healthcheck ツールには、自動検出に必要な DNS レコードが解決可能であることを確認するテストが含まれます。

テストの一覧を表示するには、--list-sources オプションを指定して、ipa-healthcheck を実行します。

# ipa-healthcheck --list-sources

DNS レコードの確認テストは、ipahealthcheck.ipa.idns ソースの下にあります。

IPADNSSystemRecordsCheck
このテストは、/etc/resolv.conf ファイルで指定された最初のリゾルバーを使用して、ipa dns-update-system-records --dry-run コマンドで得られる DNS レコードを確認します。このレコードは IPA サーバーでテストされます。

5.2. Healthcheck ツールを使用した DNS レコードのスクリーニング

Healthcheck ツールを使用して Identity Management (IdM) サーバー上で DNS レコードのスタンドアロン手動テストを実行するには、次の手順に従います。

Healthcheck ツールには、多くのテストが含まれます。--source ipahealthcheck.ipa.idns オプションを追加して、DNS レコードテストだけを含めて結果を絞り込むことができます。

前提条件

  • root ユーザーとして Healthcheck テストを実行する必要があります。

手順

  • DNS レコードの確認を実行するには、以下を入力します。

    # ipa-healthcheck --source ipahealthcheck.ipa.idns

    レコードが解決可能である場合には、テストの結果として SUCCESS が返されます。

    {
        "source": "ipahealthcheck.ipa.idns",
        "check": "IPADNSSystemRecordsCheck",
        "result": "SUCCESS",
        "uuid": "eb7a3b68-f6b2-4631-af01-798cac0eb018",
        "when": "20200415143339Z",
        "duration": "0.210471",
        "kw": {
          "key": "_ldap._tcp.idm.example.com.:server1.idm.example.com."
        }
    }

    たとえば、レコードの数が想定数と一致しないなどの場合には、テストは WARNING を返します。

    {
        "source": "ipahealthcheck.ipa.idns",
        "check": "IPADNSSystemRecordsCheck",
        "result": "WARNING",
        "uuid": "972b7782-1616-48e0-bd5c-49a80c257895",
        "when": "20200409100614Z",
        "duration": "0.203049",
        "kw": {
          "msg": "Got {count} ipa-ca A records, expected {expected}",
          "count": 2,
          "expected": 1
        }
    }

関連情報

  • man ipa-healthcheck を参照してください。

第6章 IdM Healthcheck を使用して KDC ワーカープロセスの最適数を検証する

Identity Management (IdM) の Healthcheck ツールを使用して、最適な数の krb5kdc ワーカープロセスを使用するように Kerberos Key Distribution Center (KDC) が設定されていることを確認できます。これは、ホストの CPU コアの数と同じにする必要があります。

ipahealthcheck.ipa.kdc ソースの下で、正しい数の KDC ワーカープロセスのテストを見つけることができます。Healthcheck ツールには多くのテストが含まれているため、--source ipahealthcheck.ipa.kdc オプションを追加して KDC ワーカーテストのみを含めることで、結果を絞り込むことができます。

前提条件

  • KDC ワーカープロセスのヘルスチェックツールは、RHEL 8.7 以降でのみ使用できます。
  • root ユーザーとして Healthcheck テストを実行する必要があります。

手順

  • KDC ワーカープロセスの確認を実行するには、以下を入力します。

    # ipa-healthcheck --source ipahealthcheck.ipa.kdc

    KDC ワーカープロセスの数が CPU コアの数と一致する場合、テストは結果として SUCCESS を返します。

    {
    	"source": "ipahealthcheck.ipa.kdc",
    	"check": "KDCWorkersCheck",
    	"result": "SUCCESS",
    	"uuid": "68f6e20a-0aa9-427d-8fdc-fbb8196d56cd",
    	"when": "20230105162211Z",
    	"duration": "0.000157",
    	"kw": {
      	"key": "workers"
    	}
    }

    ワーカープロセスの数が CPU コアの数と一致しない場合、テストは WARNING を返します。次の例では、2 つのコアを持つホストが 1 つの KDC ワーカープロセスのみを持つように設定されています。

    {
        "source": "ipahealthcheck.ipa.kdc",
        "check": "KDCWorkersCheck",
        "result": "WARNING",
        "uuid": "972b7782-1616-48e0-bd5c-49a80c257895",
        "when": "20230105122236Z",
        "duration": "0.203049",
        "kw": {
          "key": ‘workers’,
          "cpus": 2,
          "workers": 1,
          "expected": "The number of CPUs {cpus} does not match the number of workers {workers} in {sysconfig}"
        }
    }

    設定されたワーカーがない場合、テストは WARNING も出力します。次の例では、KRB5KDC_ARGS 変数が /etc/sysconfig/krb5kdc 設定ファイルにありません。

      {
        "source": "ipahealthcheck.ipa.kdc",
        "check": "KDCWorkersCheck",
        "result": "WARNING",
        "uuid": "5d63ea86-67b9-4638-a41e-b71f4
    56efed7",
        "when": "20230105162526Z",
        "duration": "0.000135",
        "kw": {
          "key": "workers",
          "sysconfig": "/etc/sysconfig/krb5kdc",
          "msg": "KRB5KDC_ARGS is not set in {sysconfig}"
        }
      }

関連情報

  • man ipa-healthcheck

第7章 Healthcheck で IdM レプリケーションの確認

Healthcheck ツールを使用して、Identity Management (IdM) レプリケーションをテストできます。

詳細は IdM のヘルスチェック を参照してください。

前提条件

  • Healthcheck ツールは、RHEL 8.1 以降でのみ利用できます。

7.1. レプリケーションの Healthcheck テスト

Healthcheck ツールは、Identity Management (IdM) トポロジーの設定をテストして、レプリケーションの競合問題を検索します。

テストの一覧を表示するには、--list-sources オプションを指定して、ipa-healthcheck を実行します。

# ipa-healthcheck --list-sources

トポロジーのテストは、ipahealthcheck.ipa.topology ソースおよび ipahealthcheck.ds.replication ソースの下にあります。

IPATopologyDomainCheck

このテストでは、以下が検証されます。

  • トポロジーが切断されておらず、すべてのサーバー間にレプリケーションパスがあるかどうか。
  • サーバーに推奨される数以上のレプリカ合意がない場合。

    テストに失敗すると、テストは、接続エラーや、レプリカ合意が多すぎるなど、エラーを返します。

    テストに成功すると、テストにより設定済みのドメインが返されます。

    注記

    テストは、ドメインおよび ca 接尾辞の両方で ipa topologysuffix-verify コマンドを実行します (認証局がこのサーバーに設定されていることを前提とします)。

ReplicationConflictCheck
テストにより、(&(!(objectclass=nstombstone))(nsds5ReplConflict=*)) に一致する LDAP エントリーを検索します。
注記

問題を確認するには、すべての IdM サーバーで上記のテストを実行します。

7.2. Healthcheck でレプリケーションのスクリーニング

Healthcheck ツールを使用して Identity Management (IdM) レプリケーショントポロジーと設定のスタンドアロン手動テストを実行するには、次の手順に従います。

Healthcheck ツールには多くのテストが含まれるため、以下の方法で結果を短くすることができます。

  • レプリケーションの競合テスト - --source=ipahealthcheck.ds.replication
  • 正確なトポロジーテスト - --source=ipahealthcheck.ipa.topology

前提条件

  • root ユーザーとして Healthcheck テストを実行する必要があります。

手順

  • Healthcheck のレプリケーションの競合とトポロジーの確認を実行するには、次のコマンドを実行します。

    # ipa-healthcheck --source=ipahealthcheck.ds.replication --source=ipahealthcheck.ipa.topology

以下のような 4 つの結果が取得できます。

  • SUCCESS  - テストが成功

    {
      "source": "ipahealthcheck.ipa.topology",
      "check": "IPATopologyDomainCheck",
      "result": "SUCCESS",
      "kw": {
        "suffix": "domain"
      }
    }
  • WARNING - テストには合格したが、問題の可能性あり
  • ERROR - テストが失敗

    {
      "source": "ipahealthcheck.ipa.topology",
      "check": "IPATopologyDomainCheck",
      "result": "ERROR",
      "uuid": d6ce3332-92da-423d-9818-e79f49ed321f
      "when": 20191007115449Z
      "duration": 0.005943
      "kw": {
        "msg": "topologysuffix-verify domain failed, server2 is not connected (server2_139664377356472 in MainThread)"
      }
    }
  • CRITICAL - テストが失敗し、IdM サーバー機能に影響が及ぶ

関連情報

  • man ipa-healthcheck を参照してください。

第8章 IdM Healthcheck を使用した IdM および AD 信頼設定の検証

Healthcheck ツールを使用して、Identity Management (IdM) での IdM および Active Directory 信頼に関する問題を特定する方法について詳しく説明します。

前提条件

  • Healthcheck ツールは、RHEL 8.1 以降でのみ利用できます。

8.1. IdM および AD 信頼の Healthcheck のテスト

Healthcheck ツールには、Identity Management (IdM) および Active Directory (AD) 信頼のステータスをテストするためのテストが複数含まれています。

すべての信頼テストを表示するには、--list-sources オプションを指定して ipa-healthcheck を実行します。

# ipa-healthcheck --list-sources

ipahealthcheck.ipa.trust ソースでテストをすべて見つけることができます。

IPATrustAgentCheck
このテストは、マシンが信頼エージェントとして設定されている場合に、SSSD 設定を確認します。/etc/sssd/sssd.conf 内の各ドメインで、id_provider=ipa は、ipa_server_modeTrue であることを確認します。
IPATrustDomainsCheck
このテストでは、sssctl domain-list のドメインの一覧を、IPA ドメインを除く ipa trust-find のドメインの一覧と比較して、信頼ドメインが SSSD ドメインと一致するかどうかを確認します。
IPATrustCatalogCheck

このテストでは、AD ユーザー Administrator@REALM を解決します。これにより、sssctl domain-status の出力に、AD Global カタログと AD Domain Controller の値が追加されます。

各信頼ドメインに対して、SID + 500 (管理者) の ID でユーザーを検索し、sssctl domain-status <domain> --active-server の出力を確認して、ドメインがアクティブであることを確認します。

IPAsidgenpluginCheck
このテストは、IPA 389-ds インスタンスで sidgen プラグインが有効になっていることを確認します。このテストでは、cn=plugins,cn=configIPA SIDGEN プラグインおよび ipa-sidgen-task プラグインに、nsslapd-pluginEnabled オプションが含まれていることを検証しています。
IPATrustAgentMemberCheck
このテストでは、現在のホストが cn=adtrust agents,cn=sysaccounts,cn=etc,SUFFIX のメンバーであることを確認します。
IPATrustControllerPrincipalCheck
このテストでは、現在のホストが cn=adtrust agents,cn=sysaccounts,cn=etc,SUFFIX のメンバーであることを確認します。
IPATrustControllerServiceCheck
このテストは、現在のホストが ipactl で ADTRUST サービスを開始することを確認します。
IPATrustControllerConfCheck
このテストでは、ldapi は、net conf リストの出力で passdb バックエンドに対して有効になっていることを確認します。
IPATrustControllerGroupSIDCheck
このテストは、admins グループの SID が 512 (Domain Admins RID) で終わることを確認します。
IPATrustPackageCheck
このテストは、信頼コントローラーと AD 信頼が有効になっていない場合に、trust-ad パッケージがインストールされていることを確認します。
注記

問題を確認するには、すべての IdM サーバーで上記のテストを実行します。

8.2. Healthcheck ツールを使用した信頼のスクリーニング

Healthcheck ツールを使用して Identity Management (IdM) および Active Directory (AD) の信頼ヘルスチェックのスタンドアロン手動テストを実行するには、次の手順に従います。

Healthcheck ツールには多くのテストが含まれるため、以下の方法で結果を短くすることができます。

  • 成功したテストをすべて除外する - --failures-only
  • 信頼テストのみを含める - --source=ipahealthcheck.ipa.trust

手順

  • 信頼における警告、エラー、および重大な問題ついて Healthcheck を実行するには、次のコマンドを実行します。

    # ipa-healthcheck --source=ipahealthcheck.ipa.trust --failures-only

テストに成功すると、空の括弧が表示されます。

# ipa-healthcheck --source=ipahealthcheck.ipa.trust --failures-only
[]

関連情報

  • man ipa-healthcheck を参照してください。

第9章 IdM Healthcheck でシステム証明書の検証

Healthcheck ツールを使用して、Identity Management (IdM) でシステム証明書に関する問題の特定方法を確認してください。

詳細は IdM のヘルスチェック を参照してください。

前提条件

  • Healthcheck ツールは、RHEL 8.1 以降でのみ利用できます。

9.1. システム証明書の Healthcheck テスト

Healthcheck ツールには、システム (DogTag) 証明書を検証するさまざまなテストがあります。

すべてのテストを表示するには、--list-sources オプションを指定して ipa-healthcheck を実行します。

# ipa-healthcheck --list-sources

すべてのテストは、ipahealthcheck.dogtag.ca ソースの下にあります。

DogtagCertsConfigCheck

このテストは、その NSS データベースの CA (認証局) 証明書を、CS.cfg に保存されているものと同じ値と比較します。一致しないと、CA は起動できません。

具体的には、以下を確認します。

  • ca.audit_signing.cert の場合は auditSigningCert cert-pki-ca
  • ca.ocsp_signing.cert の場合は ocspSigningCert cert-pki-ca
  • ca.signing.cert の場合は caSigningCert cert-pki-ca
  • ca.subsystem.cert の場合は subsystemCert cert-pki-ca
  • ca.sslserver.cert の場合は Server-Cert cert-pki-ca

Key Recovery Authority (KRA) がインストールされている場合は、以下になります。

  • ca.connector.KRA.transportCert の場合は transportCert cert-pki-kra
DogtagCertsConnectivityCheck

このテストでは、接続性を検証します。このテストは、以下の確認を行う ipa cert-show 1 コマンドと同等です。

  • Apache の PKI プロキシー設定
  • CA を見つけることができる IdM
  • RA エージェントクライアント証明書
  • 要求に対する CA 返信の正確性

テストは、cert-show を実行し、CA から期待される結果 (証明書または not fount) を返すため、シリアル番号 #1 の証明書を確認します。

注記

問題を確認するには、すべての IdM サーバーで上記のテストを実行します。

9.2. Healthcheck を使用したシステム証明書のスクリーニング

以下の手順に従って、Healthcheck ツールを使用して Identity Management (IdM) 証明書のスタンドアロンの手動テストを実行します。

Healthcheck ツールには多くのテストが含まれるため、Dogtag テスト (--source=ipahealthcheck.dogtag.ca) のみを含めることで結果を絞り込むことができます。

手順

  • Healthcheck を Dogtag 証明書に制限して実行するには、次のコマンドを実行します。

    # ipa-healthcheck --source=ipahealthcheck.dogtag.ca

テストに成功すると、以下のようになります。

{
  "source: ipahealthcheck.dogtag.ca",
  "check: DogtagCertsConfigCheck",
  "result: SUCCESS",
  "uuid: 9b366200-9ec8-4bd9-bb5e-9a280c803a9c",
  "when: 20191008135826Z",
  "duration: 0.252280",
  "kw:" {
    "key": "Server-Cert cert-pki-ca",
    "configfile":  "/var/lib/pki/pki-tomcat/conf/ca/CS.cfg"
    }
}

テストに失敗すると、以下のようになります。

{
  "source: ipahealthcheck.dogtag.ca",
  "check: DogtagCertsConfigCheck",
  "result: CRITICAL",
  "uuid: 59d66200-1447-4b3b-be01-89810c803a98",
  "when: 20191008135912Z",
  "duration: 0.002022",
  "kw:" {
    "exception": "NSDB /etc/pki/pki-tomcat/alias not initialized",
    }
}

関連情報

  • man ipa-healthcheck を参照してください。

第10章 IdM Healthcheck で証明書の検証

Identity Management (IdM) で Healthcheck ツールを理解して、certmonger が維持する IPA 証明書の問題を特定する方法を詳しく説明します。

詳細は IdM のヘルスチェック を参照してください。

前提条件

  • Healthcheck ツールは、RHEL 8.1 以降でのみ利用できます。

10.1. IdM 証明書の Healthcheck テスト

Healthcheck ツールには、Identity Management (IdM) の certmonger が維持する証明書の状況を確認するさまざまなテストが含まれています。certmonger の詳細は、certmonger を使用してサービスの IdM 証明書の取得 を参照してください。

このテストスイートは、有効期限、検証、信頼、およびその他の問題を確認します。根本的な問題 1 つに対して、複数のエラーが発生する可能性があります。

すべての証明書テストを表示するには、--list-sources オプションを指定して ipa-healthcheck を実行します。

# ipa-healthcheck --list-sources

すべてのテストは、ipahealthcheck.ipa.certs ソースの下にあります。

IPACertmongerExpirationCheck

このテストは、certmonger の有効期限を確認します。

証明書の有効期限が切れている場合は、エラーが報告されます。

証明書の有効期限が間近な場合は、警告が表示されます。デフォルトでは、このテストは、証明書の有効期限が 28 日以内のものを対象としています。

/etc/ipahealthcheck/ipahealthcheck.conf ファイルで日数を設定できます。ファイルを開くと、デフォルトセクションにある cert_expiration_days オプションを変更します。

注記

certmonger は証明書の有効期限に関する独自のビューを読み込んで維持します。この確認では、ディスク上の証明書は検証されません。

IPACertfileExpirationCheck

このテストは、証明書ファイルまたは NSS データベースを開けないかを確認します。このテストでは、有効期限も確認します。したがって、エラー出力または警告の出力で、msg 属性を慎重に読み取ります。このメッセージは問題を指定します。

注記

このテストでは、ディスク上の証明書が確認されます。証明書がない、読み取りができないなどの問題が発生した場合は、別のエラーを出力することもできます。

IPACertNSSTrust
このテストは、NSS データベースに保存されている証明書の信頼を比較します。NSS データベースで期待される、追跡された証明書では、信頼が、期待される値と比較され、一致しないとエラーが発生します。
IPANSSChainValidation
このテストは、NSS 証明書の証明書チェーンを検証します。テストは、certutil -V -u V -e -d [dbdir] -n [nickname] を実行します。
IPAOpenSSLChainValidation

このテストは、OpenSSL 証明書の証明書チェーンを検証します。NSSChain 検証を比較するには、以下を実行する OpenSSL コマンドになります。

openssl verify -verbose -show_chain -CAfile /etc/ipa/ca.crt [cert file]
IPARAAgent
このテストは、ディスクの証明書を、uid=ipara,ou=People,o=ipaca の LDAP の同等のレコードと比較します。
IPACertRevocation
このテストは certmonger を使用して、証明書が取り消されていないことを確認します。したがって、テストでは certmonger でのみメンテナーンスされる証明書に接続している問題を見つけることができます。
IPACertmongerCA

このテストでは、certmonger の Certificate Authority (CA) の設定を検証します。IdM は、CA を使用しない証明書を発行できません。

certmonger は、CA ヘルパーのセットを維持します。IdM には、IdM を介して証明書を発行し、ホストまたはサービスの証明書に対して、ホストまたはユーザーのプリンシパルとして認証する IPA という名前の CA があります。

また、CA サブシステム証明書を更新する dogtag-ipa-ca-renew-agent および dogtag-ipa-ca-renew-agent-reuse があります。

注記

問題を確認するには、すべての IdM サーバーで上記のテストを実行します。

10.2. Healthcheck ツールで証明書のスクリーニング

以下の手順に従って、Healthcheck ツールを使用して、Identity Management (IdM) 証明書のヘルスチェックのスタンドアロンの手動テストを実行します。

Healthcheck ツールには多くのテストが含まれるため、以下の方法で結果を短くすることができます。

  • 成功したテストをすべて除外する - --failures-only
  • 証明書テストのみを含める - --source=ipahealthcheck.ipa.certs

前提条件

  • root ユーザーとして Healthcheck テストを実行する必要があります。

手順

  • 証明書に関する警告、エラー、および重大な問題で Healthcheck を実行するには、次のコマンドを実行します。

    # ipa-healthcheck --source=ipahealthcheck.ipa.certs --failures-only

テストに成功すると、空の括弧が表示されます。

[]

失敗したテストでは、以下の出力が表示されます。

{
  "source": "ipahealthcheck.ipa.certs",
  "check": "IPACertfileExpirationCheck",
  "result": "ERROR",
  "kw": {
    "key": 1234,
    "dbdir": "/path/to/nssdb",
    "error": [error],
    "msg": "Unable to open NSS database '/path/to/nssdb': [error]"
  }
}

この IPACertfileExpirationCheck テストは、NSS データベースを開く際に失敗します。

関連情報

  • man ipa-healthcheck を参照してください。

法律上の通知

Copyright © 2023 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.