第15章 IdM デプロイメント全体で期限切れになった Web サーバーと LDAP サーバーの証明書を置き換える


Identity Management (IdM) は、以下のサービス証明書を使用します。

  • LDAP (または Directory) サーバー証明書
  • Web (または httpd) サーバー証明書
  • PKINIT 証明書

CA を使用しない IdM デプロイメントでは、certmonger はデフォルトで IdM サービス証明書を追跡したり、その有効期限を通知したりしません。IdM システム管理者がこれらの証明書の通知を手動で設定しない場合、または証明書を追跡するように certmonger を設定しない場合、証明書は予告なしに期限切れになります。

以下の手順に従って、server.idm.example.com IdM サーバーで実行している httpd および LDAP サービスの期限切れの証明書を手動で置き換えます。

注記

HTTP および LDAP サービス証明書は、異なる IdM サーバーで異なるキーペアとサブジェクト名を持ちます。したがって、各 IdM サーバーで個別に証明書を更新する必要があります。

前提条件

手順

  1. オプション: /var/lib/ipa/private/var/lib/ipa/passwds のバックアップを実行します。
  2. 新しい証明書の署名に同じ CA を使用していない場合、またはすでにインストールされている CA 証明書が無効になっている場合は、ローカルデータベース内の外部 CA に関する情報を、外部 CA の有効な CA 証明書チェーンを含むファイルで更新します。.このファイルは、PEM および DER 証明書、PKCS#7 証明書チェーン、PKCS#8、生の秘密鍵、および PKCS#12 形式で受け入れられます。

    1. ca_certificate_chain_file.crt で利用可能な証明書を追加の CA 証明書として IdM にインストールします。

      # ipa-cacert-manage install ca_certificate_chain_file.crt
      Copy to Clipboard
    2. ca_certicate_chain_file.crt からの証明書を使用して、ローカルの IdM 証明書データベースを更新します。

      # ipa-certupdate
      Copy to Clipboard
  3. httpd および LDAP の証明書を要求します。

    1. OpenSSL ユーティリティーを使用して、IdM インスタンスで実行している Apache Web サーバーの証明書署名要求 (CSR) をサードパーティー CA に作成します。

      • 新しい秘密鍵の作成は任意です。元の秘密鍵がまだある場合は、openssl req コマンドで -in オプションを使用して、要求を読み取る入力ファイル名を指定できます。

        $ openssl req -new -nodes -in /var/lib/ipa/private/httpd.key -out /tmp/http.csr -addext 'subjectAltName = DNS:_server.idm.example.com_, otherName:1.3.6.1.4.1.311.20.2.3;UTF8:HTTP/server.idm.example.com@IDM.EXAMPLE.COM' -subj '/O=IDM.EXAMPLE.COM/CN=server.idm.example.com'
        Copy to Clipboard
      • 新しいキーを作成する場合:

        $ openssl req -new -newkey rsa:2048 -nodes -keyout /var/lib/ipa/private/httpd.key -out /tmp/http.csr -addext 'subjectAltName = DNS:server.idm.example.com, otherName:1.3.6.1.4.1.311.20.2.3;UTF8:HTTP/server.idm.example.com@IDM.EXAMPLE.COM' -subj '/O=IDM.EXAMPLE.COM/CN=server.idm.example.com'
        Copy to Clipboard
    2. OpenSSL ユーティリティーを使用して、IdM インスタンスで実行している LDAP サーバーの証明書署名要求 (CSR) をサードパーティー CA に作成します。

      $ openssl req -new -newkey rsa:2048 -nodes -keyout ~/ldap.key -out /tmp/ldap.csr -addext 'subjectAltName = DNS:server.idm.example.com, otherName:1.3.6.1.4.1.311.20.2.3;UTF8:ldap/server.idm.example.com@IDM.EXAMPLE.COM' -subj '/O=IDM.EXAMPLE.COM/CN=server.idm.example.com'
      Copy to Clipboard
    3. CSR、/tmp/http.csr および tmp/ldap.csr を外部 CA に送信し、httpd の証明書と LDAP の証明書を取得します。このプロセスは、外部 CA として使用するサービスにより異なります。
  4. httpd の証明書をインストールします。

    # cp /path/to/httpd.crt /var/lib/ipa/certs/
    Copy to Clipboard
  5. LDAP 証明書を NSS データベースにインストールします。

    1. オプション: 利用可能な証明書をリスト表示します。

      # certutil -d /etc/dirsrv/slapd-IDM-EXAMPLE-COM/ -L
      Certificate Nickname                                         Trust Attributes
                                                                   SSL,S/MIME,JAR/XPI
      
      Server-Cert                                                  u,u,u
      Copy to Clipboard

      デフォルトの証明書のニックネームは Server-Cert ですが、別の名前が適用された可能性があります。

    2. 前の手順の証明書のニックネームを使用して、古い無効な証明書を NSS データベース (NSSDB) から削除します。

      # certutil -D -d /etc/dirsrv/slapd-IDM-EXAMPLE-COM/ -n 'Server-Cert' -f /etc/dirsrv/slapd-IDM-EXAMPLE-COM/pwdfile.txt
      Copy to Clipboard
    3. NSSDB へのインポートプロセスを容易にするために、PKCS12 ファイルを作成します。

      # openssl pkcs12 -export -in ldap.crt -inkey ldap.key -out ldap.p12 -name Server-Cert
      Copy to Clipboard
    4. 作成した PKCS#12 ファイルを NSSDB にインストールします。

      # pk12util -i ldap.p12 -d /etc/dirsrv/slapd-IDM-EXAMPLE-COM/ -k /etc/dirsrv/slapd-IDM-EXAMPLE-COM/pwdfile.txt
      Copy to Clipboard
    5. 新しい証明書が正常にインポートされたことを確認します。

      # certutil -L -d /etc/dirsrv/slapd-IDM-EXAMPLE-COM/
      Copy to Clipboard
  6. httpd サービスを再起動します。

    # systemctl restart httpd.service
    Copy to Clipboard
  7. Directory サービスを再起動します。

    # systemctl restart dirsrv@IDM-EXAMPLE-COM.service
    Copy to Clipboard
  8. すべての IdM レプリカで前のすべての手順を実行します。これは、レプリカ間の TLS 接続を確立するための前提条件です。
  9. 新しい証明書を LDAP ストレージに登録します。

    1. Apache サーバーの古い秘密鍵および証明書を、新しい鍵と、新しく署名した証明書に置き換えます。

      # ipa-server-certinstall -w --pin=password /var/lib/ipa/private/httpd.key /var/lib/ipa/certs/httpd.crt
      Copy to Clipboard

      上記のコマンドでは、以下のようになります。

      • -w オプションは、Web サーバーに証明書をインストールすることを指定します。
      • --pin オプションは、秘密鍵を保護するパスワードを指定します。
    2. プロンプトが表示されたら、Directory Manager パスワードを入力します。
    3. LDAP サーバーの古い秘密鍵および証明書を、新しい鍵と、新しく署名した証明書に置き換えます。

      # ipa-server-certinstall -d --pin=password /etc/dirsrv/slapd-IDM-EXAMPLE-COM/ldap.key /path/to/ldap.crt
      Copy to Clipboard

      上記のコマンドでは、以下のようになります。

      • -d オプションは、LDAP サーバーに証明書をインストールすることを指定します。
      • --pin オプションは、秘密鍵を保護するパスワードを指定します。
    4. プロンプトが表示されたら、Directory Manager パスワードを入力します。
    5. httpd サービスを再起動します。

      # systemctl restart httpd.service
      Copy to Clipboard
    6. Directory サービスを再起動します。

      # systemctl restart dirsrv@IDM-EXAMPLE-COM.service
      Copy to Clipboard
  10. 影響を受ける他のすべてのレプリカで、前の手順のコマンドを実行します。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。 最新の更新を見る.

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

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

Theme

© 2025 Red Hat, Inc.