MID Server 統一キーストア

  • リリースバージョン: Washingtondc
  • 更新日 2024年02月01日
  • 読む13読むのに数分
  • MID Server の統一キーストアでは、MID Server 上のすべての製品で共通の証明書とキーペアを使用できます。この機能により、アプリケーションは、MID Server がインスタンスに接続するために使用するのと同じ、MID Server への安全な通信チャネルを使用できます。

    セキュリティフェーズのインジケーターを設定するMID Server がネットワークの内部と外部の要素に接続できることを確認するMID Server を Linux または Windows ホストにダウンロードしてインストールするMID Server を構成MID Server セキュリティを設定MID Server がネットワークの内部と外部の要素に接続できることを確認するMID Server を Linux または Windows ホストにダウンロードしてインストールするMID Server を構成MID Server セキュリティを設定

    MID Server が起動すると、証明書の共通名 (CN) が検査され、カスタム証明書がインストールされているかどうかが識別されます。カスタム証明書が検出された場合、証明書/キーペアの作成はスキップされ、カスタム証明書の使用を示す属性が ecc_agent レコードに設定されます。

    カスタム証明書を使用すると、MID Server のインスタンスで [リキー] UI アクションが無効になります。新しい UI アクション [カスタムキーペアを削除 (Remove custom keypair)] を使用して、自己署名証明書を使用するように戻すことができます。このアクションを使用すると、リキーオプションと同様に、MID Server でカスタム証明書が削除され、新しい自己署名証明書が生成されます。

    MID がアップグレードされると、インストールされたカスタム証明書はすべて保持されます。

    PEM バンドルのサポート

    MID Server 統一キーストアは、PEM バンドル証明書とキーのペアをサポートしています。

    PEM バンドルのサンプル

    -----BEGIN PRIVATE KEY----- 
    
    MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQC0pj5O8QKFpHy9 
    
    ... 
    
    oPdU+h0grs9SJp6rFx0PzDY= 
    
    -----END PRIVATE KEY----- 
    
    Bag Attributes 
    
        friendlyName: <myCustomCert>
    
        localKeyID: 54 69 6D 65 20 31 35 39 35 33 35 34 32 30 38 30 35 31  
    
    subject=/C=US/ST=CA/L=Santa Clara/CN=epic1016883 
    
    issuer=/C=US/ST=CA/L=Santa Clara/CN=epic1016883 
    
    -----BEGIN CERTIFICATE----- 
    
    MIIDKzCCAhOgAwIBAgIEPqMQqDANBgkqhkiG9w0BAQsFADBGMQswCQYDVQQGEwJV 
    
    ... 
    
    4g53RN+LqtJVeeQkZvIbZOfuSqypdVfudkS8dqxQALb8IuHUV7JOcBvOT79mSTs= 
    
    -----END CERTIFICATE----- 

    MID Server 統一キーストアにカスタム証明書をインストールする

    カスタム証明書をインストールして、さまざまなアプリケーションのセキュリティチャネルを統一します。

    始める前に

    必要なロール:admin

    Linux でホストされている MID Server に証明書をインストールするときに、Linux エントロピープール数が数百個未満の場合、install-certificate.sh が応答しなくなることがあります。次のコマンドを使用して、Linux 疑似ランダム数ジェネレーター (PRNG) のエントロピー数を確認します。
    cat /proc/sys/kernel/random/entropy_avail
    エントロピー数が少なすぎる場合は、RNGD や Haveged などのエントロピージェネレーターをインストールできます。CentOS および Ubuntu 用の Haveged のインストールの詳細については、「Haveged を使用してクラウドサーバーの追加エントロピーをセットアップする方法 (How to Setup Additional Entropy for Cloud Servers Using Haveged)」を参照してください。

    手順

    1. MID Server が実行されている場合は、MID Server を停止します。
      注:

      エイリアス DefaultSecurityKeyPairHandle のエントリが変更されている場合は、MID Server を無効化してから停止する必要があります。

    2. MID Server インストールフォルダーで次のいずれかのコマンドを実行して、PEM バンドル証明書とキーペアを作成します。
      • 次のコマンドを使用して、非 MTLS ユースケースの自己署名証明書を生成します。
        openssl req -newkey rsa:2048 -nodes -keyout key.pem -x509 -days 365 -out certificate.pem
      • 次のコマンドを使用して、キーストアを PEM バンドルにエクスポートします。
        openssl pkcs12 -in <myCustomCert>.p12 -nodes -out <myCustomCert>.pem
      • 次のコマンドを使用して、PEM 形式の証明書のみを取得します。
        openssl pkcs12 -in <myCustomCert>.p12 -out <myCustomCert>.pem -clcerts -nokeys
      • 次のコマンドを使用して、PKCS#8 形式のキーのみを取得します。
        openssl pkcs12 -in <myCustomKey>.p12 -out <myPrivateKey>.key -nocerts -nodes
      • 次のコマンドを使用して、Windows ホストの証明書、または証明書チェーン、および秘密鍵をインストールします。
        bin/scripts/manage-certificate.bat <alias> <file path to PEM bundle>
      • 次のコマンドを使用して、Linux ホストの証明書、または証明書チェーン、および秘密鍵をインストールします。
        bin/scripts/manage-certificate.sh <alias> <file path to PEM bundle>
      注:

      PEM 構文のヘッダーとフッターは次のとおりです。

       -----BEGIN CERTIFICATE----- 
       -----END CERTIFICATE----- 

      PKCS#8 構文のヘッダーとフッターは次のとおりです。

       -----BEGIN PRIVATE KEY----- 
       -----END PRIVATE KEY----- 
    3. MID Server を起動します。
    4. インスタンスを使用して MID Server を検証します。
    5. オプション: 自己生成された証明書を使用するように MID Server を元に戻すには、インスタンスで MID Server を選択し、UI アクション [カスタム証明書を削除 (Remove custom certificate)] を使用します。
      注:
      MID Server は、[無効化 (Invalidate)] UI アクションを使用して元に戻すこともできます。MID Server を無効にすると、インストールされているカスタム証明書がすべて削除され、MID Server 用の新しい自己署名証明書が作成されます。

    次のタスク

    には manage-certificates 以下の機能があり、スクリプトはエージェントフォルダーから実行する必要があります。
    相互認証の有効化

    Windows の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.bat -m

    Linux の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.sh -m

    相互認証を削除し、基本認証を復元

    Windows の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.bat -b <myUserName myPassword>

    Linux の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.sh -b <myUserName myPassword>

    指定したエイリアスを使用して、新しい証明書と証明書チェーンを追加

    Windows の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.bat -a <alias> <fileName>

    Linux の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.sh -a <alias> <fileName>

    alias は、インポートされる証明書に指定した一意の名前です。MID Server では、相互認証用のカスタム証明書 (デフォルトのエイリアス名 defaultsecuritykeypairhandle を使用) が必要です。MID Server とインスタンス間の MTLS 通信を構成するには、エイリアス名 defaultsecuritykeypairhandle を使用して証明書エントリをキーストアに追加する必要があります。

    fileName は、PEM 証明書、証明書チェーン、および PCKS#8 秘密鍵を含めることができるファイルパスです。PEM バンドルへのファイルパスには、複数の証明書と単一の秘密鍵を含めることができます。各 PEM 証明書のヘッダーとフッターは次のとおりです。

     -----BEGIN CERTIFICATE----- 
     -----END CERTIFICATE----- 

    PKCS#8 構文のヘッダーとフッターは次のとおりです。

     -----BEGIN PRIVATE KEY----- 
     -----END PRIVATE KEY----- 

    証明書チェーンの検証に失敗した場合は、例外がスローされます。ファイルに複数の証明書が含まれている場合は、リーフ証明書、中間証明書、ルート証明書の順に並べる必要があります。

    指定したエイリアスの証明書の詳細を表示

    Windows の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.bat -g <alias> ​

    Linux の場合は、次のコマンドを使用します:./bin/scripts/manage-certificates.sh -g <alias> ​

    このコマンドは、サブジェクトの識別名、発行者名、証明書の有効期限などの情報を表示します。

    既存のすべてのエイリアスをリスト

    Windows の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.bat -l

    Linux の場合は、次のコマンドを使用します:./bin/scripts/manage-certificates.sh -l

    このコマンドは、agent_keystore で使用可能なすべてのエイリアス名をリストします。

    エイリアスを使用して証明書を削除

    Windows の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.bat -d <alias>

    Linux の場合は、次のコマンドを使用します:./bin/scripts/manage-certificates.sh -d <alias>

    このコマンドは、エイリアスとレコードをキーストアから削除します。エイリアス DefaultSecurityKeyPairHandle のエントリは、このコマンドを使用して削除できます。

    キーストアからすべてのエントリを削除

    Windows の場合は、次のコマンドを使用します:bin/scripts/manage-certificates.bat -r​

    Linux の場合は、次のコマンドを使用します:./bin/scripts/manage-certificates.sh -r ​

    このコマンドは、エイリアス DefaultSecurityKeyPairHandle を除く既存のエントリをキーストアから削除します。

    バックアップを使用した MID Server キーストアの復元

    キーストアが破損した場合、または誤って削除された場合は、MID Server キーストアのバックアップを復元できます。これは、カスタムキーペアを使用するキーストアの場合に特に便利です。そうしないと、カスタムキーペアデータの再作成が困難になったり、時間がかかったりする可能性があります。

    始める前に

    必要なロール:エージェント管理者

    このタスクについて

    Tokyo リリース以降は、変更が行われると、MID Server は agent_keystore ファイルのバックアップを自動的に作成します。バックアップは、agent フォルダーの下の security_backup に保存されます。セキュリティフォルダーの誤った削除や破損を防ぐために、バックアップはセキュリティフォルダーの外に保存されます。

    バックアップフォルダーには、専用のバックアップログファイル keystore_backup_audit_tail.log があります。このログは、バックアップファイルとバックアップアクティビティを追跡します。各バックアップログエントリには、タイムスタンプ付きのバックアップファイル名、一致する keypairs.mid_id、およびバックアップ内のキーペアのエイリアスのリストがあります。

    注:
    セキュリティ上の理由により、バックアップのキーストアには、所有者、グループ、権限など、元のキーストアと同じ属性が必要です。これらの属性により、MID Server に対してファイルシステムレベルで同様の保護が確保されます。

    キーストアのバックアップは、MID Server プロパティ mid.keystore.max_backupsmid.keystore.max_live_backups、および mid.keystore.backup_overwrite_timespan を使用して変更できます。詳細については、「MID Server プロパティ」を参照してください。

    手順

    1. MID Server を停止します。
    2. security_backup に移動し、keystore_backup_audit_tail.log を表示して、復元するバックアップを選択します。
    3. そのバックアップをセキュリティフォルダーの agent_keystore ファイルにコピーします。
      ファイルの権限を調べて、元のファイルと同じ所有者と権限であることを確認してください。その場所に agent_keystore が既に存在する場合は、バックアップで上書きします。
    4. config.xml を調べて、keypairs.mid_id が監査ログファイルのものと一致していることを確認してください。
    5. オプション: keypairs.mid_id が一致しない場合は、一致するように config.xml を更新します。
    6. インスタンスに移動し、MID Server を無効にします。
      これにより、ecc_queuedelete_mid_keypair システムコマンドが作成されます。
    7. MID Server のすべての delete_mid_keypair 出力メッセージを見つけ、処理済みとしてマークします。
      目標は、キーペアの削除をトリガーせずに MID Server を無効としてマークすることです。システムコマンドが処理済みとしてマークされない限り、MID Server は、カスタムなのか自動生成なのかに関係なく、defaultsecuritykeypairhandle キーペアを削除します。
    8. MID Server を再起動します。
    9. インスタンスに移動し、MID Server を検証します。