Red Hat Training

A Red Hat training course is available for RHEL 8

第67章 IdM レプリカでまだ有効期限が切れていない場合の Web サーバーと LDAP サーバーの証明書の置き換え

Identity Management (IdM) システム管理者は、IdM サーバーで実行している Web (または httpd) サービスおよび LDAP (または Directory) サービスの証明書を手動で置き換えることができます。たとえば、証明書の有効期限が近づいていて、certmonger ユーティリティーが証明書を自動的に更新するように設定されていない場合、または証明書が外部の認証局 (CA) によって署名されている場合に、これが必要になることがあります。

この例では、server.idm.example.com IdM サーバーで実行しているサービスの証明書をインストールします。外部 CA から証明書を取得する。

注記

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

前提条件

  • IdM サーバーが複製合意を持つトポロジー内の少なくとも 1 つの他の IdM レプリカで、Web および LDAP 証明書は引き続き有効です。これは ipa-server-certinstall コマンドの前提条件です。このコマンドは、他の IdM レプリカと通信するために TLS 接続を必要とします。ただし、証明書が無効な場合、そのような接続は確立できず、ipa-server-certinstall コマンドは失敗します。その場合は、Web サーバーと LDAP サーバーの証明書が IdM デプロイメント全体で期限切れになった場合の置き換え を参照してください。
  • IdM サーバーへの root アクセス権限がある。
  • Directory Manager パスワードを把握している。
  • 外部 CA の CA 証明書チェーンを保存しているファイル (ca_certificate_chain_file.crt) にアクセスできる。

手順

  1. ca_certificate_chain_file.crt に含まれる証明書を、追加の CA 証明書として IdM にインストールします。

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

    # ipa-certupdate
  3. OpenSSL ユーティリティーを使用して、秘密鍵と証明書署名要求 (CSR) を生成します。

    $ openssl req -new -newkey rsa:2048 -days 365 -nodes -keyout new.key -out new.csr -addext "subjectAltName = DNS:ipa-ca.idm.example.test" -subj '/CN=server.idm.example.com,O=IDM.EXAMPLE.COM'

    CSR を外部 CA に送信します。このプロセスは、外部 CA として使用するサービスにより異なります。CA が証明書に署名したら、証明書を IdM サーバーにインポートします。

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

    # ipa-server-certinstall -w --pin=password new.key new.crt

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

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

    # ipa-server-certinstall -d --pin=password new.key new.cert

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

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

    # systemctl restart httpd.service
  9. Directory サービスを再起動します。

    # systemctl restart dirsrv@IDM.EXAMPLE.COM.service

関連情報