キーと証明書の管理

Qlik NPrinting の暗号化には、PEM 形式の X.509 証明書ファイルが必要です。自己署名証明書を生成するか、証明機関 (CA) から署名入りの証明書を取得することができます。NewsStandQlik NPrinting web console のドメイン名は同じため、証明書は 1 つで十分です。

自己署名証明書の生成

自己署名証明書は、証明書を所要するエンティティによって署名されたアイデンティティ証明書です。このエンティティは、自身の秘密キーを使用してアイデンティティを証明します。自己署名証明書を使用することで、自分の証明書に自身で署名できます。

次の場合に、自己署名証明書を使用できます。

  • HTTPS (HTTP オーバー TLS) を使用してウェブ サーバーを保護するつもりである。
  • 自分の証明書に証明機関 (CA) が署名する必要がない。

たとえば、ウェブ サーバーがローカル ネットワーク内で使用される場合にのみ、自己署名証明書を使用できます。

以下を実行します。

  1. Windows コマンド ライン プロンプトを開きます。
  2. OpenSSL バイナリ フォルダーに移動します。既定のコマンドは cd C:\OpenSSL-Win64\bin です。ファイルはこのフォルダーに作成され、その後、最終的なフォルダーへ移動させることができます。
  3. 自己署名証明書を作成するには、次のコマンドを実行します。
    openssl req -newkey rsa:4096 -nodes -keyout NPrinting.key -x509 -days 365 -out NPrinting.crt

    ここでは以下の内容となっています。

    • req は PKCS#10 証明書リクエストで、ユーティリティを生成します。
    • -x509 オプションは、自己署名証明書を作成するよう req に伝えます。
    • -days 365 オプションは、365 日間有効な証明書を指定します。

    インタラクティブな質問をスキップするには、-subj の後に、引用符で囲んだ自分のドメイン情報を使用します。

    例:

    -subj "/C=US/ST=New York/L=Brooklyn/O=Example Brooklyn Company/CN=mywebsitedomain.com"

警告: 秘密キーは誰にも公開されてはならないもので、証明機関に送信されてはなりません。バックアップを作成して、安全な場所に保存してください。

公開キー ファイルのみを配布できます。

証明機関からの証明書の購入

お使いのウェブ サーバーにウェブ ブラウザーを介してパブリックにアクセス可能な場合に、セキュリティ警告が表示されるのを回避する必要がある場合は、証明機関 (CA) によって証明書に署名をしてもらう必要があります。証明機関は多数あります。選択する CA は、それぞれに固有の指示に従うよう求めます。CA 署名入り証明書の生成および実装の一部のステップは、すべての証明機関で共通しています。以下のセクションでは、これらの共通ステップの概要を説明します。

証明書署名リクエストの生成

CA 署名入り証明書を入手するには、証明書署名リクエスト (CSR) を生成する必要があります。CSR にはユーザーの公開キーと他の追加情報が含まれています。この情報は署名入り証明書に含まれることになります。CSR に秘密キーが含まれることはありません。

以下を実行します。

  1. CSR および秘密キーを生成するには、次のコマンドを実行します。

    openssl req -new -newkey rsa:4096 -nodes -keyout NPrinting.key -out NPrinting.csr

  2. プロンプトが表示され、インタラクティブな質問に回答するよう求められます。
    インタラクティブな質問をスキップするには、-subj の後に、引用符で囲んだ自分のドメイン情報を使用します。

    例:

    -subj "/C=US/ST=New York/L=Brooklyn/O=Example Brooklyn Company/CN=mywebsitedomain.com"

CSR の作成に必要なカスタム プロシージャについては、証明機関の指示を参照してください。

コモン ネーム フィールド

コモン ネーム フィールド (CN) 内の名前は、証明書を使用するホストの完全修飾ドメイン名 (FQDN) とする必要があります。

例:

  • お使いの NewsStand の URL が https://会社名.com:4994 の場合、FQND は 会社名.com です (ポートは FQDN の部分ではありません)。
  • URL https://www.会社名.com:4994https://会社名.com:4994 と異なると見なされます。両方の URL アドレスを有効なホスト名としたい場合は、証明書を 2 つ生成する必要があり、1 つには FQDN www.会社名.com を含め、もう 1 つには FQDN 会社名.com を含めます。

署名済み証明書とサーバー証明書の結合

証明機関 (CA) によって署名された証明書を使用している場合、サーバー証明書、中間証明書、および CA 署名入り証明書を含む PEM ファイル証明書バンドルを作成する必要があります。証明書バンドルを作成したら、秘密キーと併せて使用してプロキシを設定します。証明書、およびサーバーと一致する秘密キーが含まれているファイルが必要です。

以下を実行します。

  1. 証明書バンドル ファイルを作成するには、自分のドメインの CA 署名入り証明書、サーバー証明書、および中間証明書を連結します。ルート証明書を含むすべての証明書を連結する必要があります。
  2. 連結では必ず以下の順序を適用します。

    • ドメイン証明書
    • 中間証明書 (1 つまたは複数)
    • ルート証明書

    例:

    more < NPrinting.crt >> NPrinting.public.crt
    more < RSADomainValidationSecureServerCA.crt >> NPrinting.public.crt
    more < RSAAddTrustCA.crt >> NPrinting.public.crt
    more < AddTrustExternalCARoot.crt >> NPrinting.public.crt

    ここでは以下の内容となっています。

    • NPrinting.crt はドメイン証明書です。
    • NPrinting.public.crt はプロキシの設定に使用される証明書バンドルです。
    • RSADomainValidationSecureServerCA.crt および RSAAddTrustCA.crt は中間証明書です。
    • AddTrustExternalCARoot.crt はルート証明書です。
  3. NPrinting.public.crt を証明書ファイルとして使用し、秘密キーを使用してプロキシを設定します。