20.2. KRA の移行


単純な KRA 移行には、次の手順が必要です。

alpha.example.com にある KRA にはデータが含まれていますが、omega.example.com にある KRA はまだ存在しません。

HostnamePKI KRA バージョン

alpha.example.com

PKI KRA 10.5 on RHCS 9.7

omega.example.com

PKI KRA 10.13 on RHCS 10.4

20.2.1. 新しいホストでの KRA の設定

omega.example.comroot ユーザーとして、以下のように設定します。

  1. omega.example.com に新しい PKI 10.13 KRA をインストールして設定します。
  2. KRA インスタンスを停止します。

    Copy to Clipboard Toggle word wrap
    # systemctl stop pki-tomcatd@<pki-kra>
  3. 必要なファイルをすべてエクスポートするディレクトリーを作成します。

    Copy to Clipboard Toggle word wrap
    # mkdir -p /export/pki
  4. KRA ストレージ証明書をファイルにエクスポートします。アルファ上の KRA から復号化された古いデータを再暗号化するには、後で KRA ストレージ証明書が必要になります。以下の例では、ファイルの名前は omega.crt です。

    Copy to Clipboard Toggle word wrap
    # cd /var/lib/pki/<pki-kra>/alias/
    # pki-server cert-export kra_storage -i <pki-kra> --cert-file <omega.crt>
    Certificate:
        Data:
            Version: 3 (0x2)
            Serial Number: 8 (0x8)
            Signature Algorithm: sha256WithRSAEncryption
            Issuer: O = example.com Security Domain, OU = topology-02-CA, CN = CA Signing Certificate
            Validity
                Not Before: Dec 19 10:58:02 2019 GMT
                Not After : Dec  8 10:58:02 2021 GMT
            Subject: O = example.com Security Domain, OU = topology-02-KRA, CN = DRM Storage Certificate
            Subject Public Key Info:
                Public Key Algorithm: rsaEncryption
                    RSA Public-Key: (2048 bit)
                    Modulus:
                        00:99:c1:f6:f4:0d:75:67:ff:58:3a:28:ee:34:f1:
                        40:0a:e1:5b:f3:9d:f4:c2:5a:1e:d0:d5:0c:62:c1:
  5. omega.crt ファイルを /export/pki ディレクトリーに移動します。
  6. Directory Server を停止します。

    Copy to Clipboard Toggle word wrap
    # systemctl stop dirsrv@omega
    注記

    db2ldif が見つからない場合、389-ds-base-legacy-tools パッケージをインストールします。

  7. KRA LDAP データベース設定を抽出します。古いデータを新しいデータに変換するには、新しい KRA LDAP データベース設定が必要になります。

    Copy to Clipboard Toggle word wrap
    # /usr/lib64/dirsrv/slapd-omega/db2ldif -n <pki-kra-KRA> -a /tmp/omega.ldif
  8. /tmp/omega.ldif ファイルを /export/pki ディレクトリーに移動します。

    Copy to Clipboard Toggle word wrap
    # mv /tmp/omega.ldif /export/pki/

20.2.2. 以前のシステムからのコンテンツのエクスポート

alpha.example.com で root ユーザーとして以下を行います。

  1. 共通のディレクトリーを作成します。

    Copy to Clipboard Toggle word wrap
    # mkdir -p /export/pki
  2. Directory Server を停止します。以下の例では、サーバーの名前は alpha です。

    Copy to Clipboard Toggle word wrap
    # systemctl stop dirsrv@alpha
  3. KRA LDAP データベースから LDIF を生成します。

    Copy to Clipboard Toggle word wrap
    # /usr/lib64/dirsrv/slapd-alpha/db2ldif -n <pki-kra-KRA> -a /tmp/alpha.ldif
  4. /tmp/alpha.ldif ファイルを /export/pki ディレクトリーに移動します。

    Copy to Clipboard Toggle word wrap
    # mv /tmp/alpha.ldif /export/pki/
  5. KRA NSS セキュリティーデータベースをデータ領域にコピーします。

    Copy to Clipboard Toggle word wrap
    # cp -p /var/lib/pki/<pki-kra>/alias/* /export/pki/
  6. /export/pki ディレクトリーに移動します。

    Copy to Clipboard Toggle word wrap
    # cd /export/pki
  7. omega.example.com から、新しい KRA のストレージ証明書が含まれるフラットファイを取得します。

    Copy to Clipboard Toggle word wrap
    sftp root@omega.example.com
    sftp> cd /export/pki
    sftp> get omega.crt
    sftp> quit
  8. 内部パスワードを取得します。

    Copy to Clipboard Toggle word wrap
    # cat /var/lib/<instance_name>/conf/password.conf
  9. alpha.example.comKRATool を実行します。

    Copy to Clipboard Toggle word wrap
    # KRATool \
        -kratool_config_file /usr/share/pki/java-tools/KRATool.cfg \
        -source_ldif_file /export/pki/alpha.ldif \
        -target_ldif_file /export/pki/alpha2omega.ldif \
        -log_file /tmp/KRATool_26_05_2023.log \
        -source_pki_security_database_path /export/pki/ \
        -source_storage_token_name "Internal Key Storage Token" \
        -source_storage_certificate_nickname "<storageCert cert-pki-tomcat KRA>" \
        -target_storage_certificate_file /export/pki/omega.crt \
        -source_kra_naming_context alpha.example.com \
        -target_kra_naming_context omega.example.com \
        -unwrap_algorithm AES \
        -process_requests_and_key_records_only
    
    PROCESSING KRATOOL CONFIG FILE: ................................... FINISHED.
    SUCCESSFULLY processed kratool config file!
    Initializing source PKI security databases in '/export/pki/'.
    Retrieving token from CryptoManager.
    Retrieving source storage token called 'Internal Key Storage Token'.
    Retrieving source storage cert with nickname of 'storageCert cert-pki-tomcat KRA'.
    
    BEGIN: Obtaining the private key from the source storage token . . .
    Enter password for Internal Key Storage Token
    **
    
    FINISHED: Obtaining the private key from the source storage token.
    BEGIN: Obtaining the public key from the target storage certificate . . .
    FINISHED: Obtaining the public key from the target storage certificate.
    PROCESSING: xxxxxxxxxxxxxxxxxxxxxxxxx......
    SUCCESSFULLY converted source LDIF file --> target LDIF file!
    
    FINISHED "KRATool -kratool_config_file /usr/share/pki/java-tools/KRATool.cfg -source_ldif_file /export/pki/alpha.ldif -target_ldif_file /export/pki/alpha2omega.ldif -log_file /tmp/DRMTool_20_05_2021.log -source_pki_security_database_path /export/pki/ -source_storage_token_name 'Internal Key Storage Token' -source_storage_certificate_nickname 'storageCert cert-pki-tomcat KRA' -target_storage_certificate_file /export/pki/omega.crt -source_pki_security_database_pwdfile '/export/pki/password.cfg' -source_kra_naming_context 'alpha.example.com' -target_kra_naming_context 'omega.example.com' -process_requests_and_key_records_only"
    注記

    あるいは、証明書または証明書データベースによって自動的にアクセスされる唯一のパスワードを含む、不正アクセスから保護されたプレーンテキストファイルを作成することもできます。-source_pki_security_database_pwdfile <path_to_PKI_password_file> コマンドラインオプションを使用して、このファイルを KRATool に追加します。

  10. alpha2omega.ldif ファイルを omega.example.com にコピーします。

    Copy to Clipboard Toggle word wrap
    sftp root@omega.example.com
    sftp> cd /export/pki
    sftp> put alpha2omega.ldif
    sftp> quit

20.2.3. 新規 KRA へのデータのインポート

omega.example.comroot ユーザーとして、以下のように設定します。

  1. /export/pki ディレクトリーに移動します。

    Copy to Clipboard Toggle word wrap
    # cd /export/pki
  2. ldif ファイルを連結します。

    Copy to Clipboard Toggle word wrap
    # cat omega.ldif alpha2omega.ldif > omega_alpha.ldif
  3. omega_alpha.ldif ファイルを、PKI KRA に関連付けられた LDAP データベースにインポートします。

    Copy to Clipboard Toggle word wrap
    # /usr/lib64/dirsrv/slapd-omega/ldif2db -n <pki-kra-KRA> -i /export/pki/omega_alpha.ldif
  4. Directory Server を起動します。

    Copy to Clipboard Toggle word wrap
    # systemctl start dirsrv@omega
  5. KRA インスタンスを起動します。

    Copy to Clipboard Toggle word wrap
    # systemctl start pki-tomcatd@<pki-kra>

20.2.4. KRA エージェントページから移行したキーの存在の検証

最後に、KRA エージェントページから移行した鍵のキーリカバリーを実行します。

Copy to Clipboard Toggle word wrap
[root@pki1 pki]# pki -d /root/nssdb/ -p 21080 -n '<PKI Administrator - example.com Security Domain>' kra-key-find
Enter password for Internal Key Storage Token

----------------
3 key(s) matched
----------------
  Key ID: 0x1
  Algorithm: 1.2.840.113549.1.1.1
  Size: 1024
  Owner: UID=alpha1

  Key ID: 0x2
  Algorithm: 1.2.840.113549.1.1.1
  Size: 1024
  Owner: UID=alpha2

  Key ID: 0x3
  Algorithm: 1.2.840.113549.1.1.1
  Size: 1024
  Owner: UID=alpha3
----------------------------
Number of entries returned 3
----------------------------

20.2.5. アップグレード後のテスト

アップグレード前にアーカイブされたユーザーキーのキーリカバリー操作を実行します。

手順 21.1. キーリカバリーテスト

  1. アップグレード前に作成された base64 ユーザー証明書を表示します。

    Copy to Clipboard Toggle word wrap
    # <pki -n 'PKI Administrator - example.com>' -c <Secret.123> ca-cert-export <0xd>
      Serial Number: 0xd
      Subject DN: UID=alpha
      Issuer DN: CN=CA Signing Certificate,OU=pki-tomcat,O=example.com Security Domain
      Status: VALID
      Not Valid Before: Wed Jun 07 01:49:07 EDT 2023
      Not Valid After: Mon Dec 04 01:49:
    
    ----BEGIN CERTIFICATE----
    MIIDODCCAiCgAwIBAgIBDTANBgkqhkiG9w0BAQsFADBtMTUwMwYDVQQKDCxpZG1xZS5sYWIuZW5n
    LmJvcy5yZWRoYXQuY29tIFNlY3VyaXR5IERvbWFpbjETMBEGA1UECwwKcGtpLXRvbWNhdDEfMB0G
    A1UEAwwWQ0EgU2lnbmluZyBDZXJ0aWZpY2F0ZTAeFw0yMzA2MDcwNTQ5MDdaFw0yMzEyMDQwNjQ5
    
                [...output truncated...]
    
    EJyoMFM+RaAcTh+C3S0JZEoKlAS3UlJOMxk3BFZdWpv7ia+1faV6LFPZSCZ/m8i2c3KZNxFW2xv1
    DTIIVc7a1uEDApVDHf5aFcm0nGpEVeK+yvP4r1eD
    ----END CERTIFICATE----
  2. この証明書を使用して、KRA エージェント UI を通じてキーリカバリー要求を生成します。
  3. リカバリー要求を承認します。

    Copy to Clipboard Toggle word wrap
    # pki -c <Secret.123> -n '<PKI Administrator - example.com Security Domain>' -p 8443 -P https kra-key-request-review <0x2> --action approve
    -----
    Result
    ------
    Request ID: 0x2
    Type: recovery
    Status: approved
  4. KRA UI からキーをダウンロードします。
トップに戻る
Red Hat logoGithubredditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

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

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

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

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

会社概要

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

Theme

© 2025 Red Hat, Inc.