JMP LiveのSSL証明書要件
SSL証明書は、ブラウザとWebサーバー間の安全な通信を可能にする暗号鍵を含むテキストファイルです。機密情報を暗号化することで、意図した受信者のみがアクセスできるようにします。鍵は組織固有のものであり、DigiCert、Symantec、Network Solutionsなどのサードパーティベンダー、または社内認証局( CA )から取得する必要があります。JMP Liveは、これらの証明書がないと動作しません。
おすすめ:
- 証明書の種類
- 公的認証局(CA)によって発行された、一般に信頼されているサーバー証明書
- ブラウザが発行元の認証局を信頼している限り、SAN証明書またはワイルドカード証明書がサポートされます。
- ホスト名
- 証明書の共通名(CN)またはサブジェクト代替名(SAN)は、JMP Live にアクセスするために使用する完全修飾ドメイン名(FQDN)と一致している必要があります。例: jmplive.yourcompany.com
- キーの種類とサイズ
- RSA 2048ビット(またはそれ以上)
- SHA-256(またはそれ以上の)署名アルゴリズム
- 鎖
- 完全な認証局チェーン(中間証明書とルート証明書)をPEM形式で提供する必要があります。
社内企業認証局
JMP Liveは、社内認証局(CA)が発行した証明書を使用することもできます。その場合、クライアントブラウザは社内CAを信頼する必要があります。CA証明書がユーザーのマシンに展開されていることを確認するため、IT/セキュリティチームと連携してください。
自己署名証明書
自己署名証明書は、クライアントブラウザにセキュリティ警告が表示されるため、本番環境での使用は推奨されません。可能な限り、認証局(CA)が署名した証明書を使用してください。
JMP Liveは4つの証明書ファイルを使用します。
- 公開(サーバー)証明書を含むファイル。
- 証明書の秘密鍵を含むファイル。
- CA証明書チェーン(認証局(CA)証明書チェーンとも呼ばれる)を含むファイルで、中間証明書とルート証明書が含まれます。
- 公開証明書と証明書チェーンを組み合わせたファイル。
すべてのファイルは、プライバシー強化メール(PEM)形式である必要があります。
認証局(CA)に証明書を要求する
証明書と秘密鍵はお客様の組織向けに設定されています。ルート証明書はサードパーティベンダーから提供されます。
証明書を購入する際は、ベンダーのドキュメントに従って必要なファイルを入手してください。
証明書登録サービスを見つけたら、以下の手順に従ってください。
- 証明書を取得する:ベンダーのCAサービスWebページから申請してください。指示に従って申請を送信してください。発行後、ダウンロードしてインストールマシンに保存してください。Base64エンコードを選択してください。ダウンロードしたファイルは通常、次の文字列で始まります。
-----証明書開始-----
これはファイル番号1(サーバー証明書)になります。
2.証明書の秘密鍵を取得する:秘密鍵は、証明書署名要求(CSR)を作成する際に生成されます。通常、サーバーのファイルシステムまたはキーストアに保存されます。
秘密鍵の保存場所がわからない場合は、このブログ記事の最後にある「役立つリンク」を参照するか、お使いのウェブサーバーに特化した手順をオンラインで検索してください。
JMP Liveでは、暗号化されていないPEM形式の秘密鍵が必要です。鍵の形式が異なる場合、またはパスワードで保護されている場合は、以下のいずれかの方法で変換してください。
方法A : OpenSSLを使用してPKCS#12(PFX/P12)から変換する
IISなどのツールからサーバー証明書と秘密鍵をエクスポートすると、通常はパスワードで保護された.pfx(PKCS#12)ファイルが生成されます。JMP Liveはパスワードで保護されたファイルを使用できません。
- OpenSSLを使用して.pfxファイルをPEMに変換します(このブログ記事の最後にある「役立つリンク」を参照するか、Googleでオプションを検索してください)。
openssl pkcs12 -in cert.pfx -nodes -out cert.pem
このコマンドが失敗した場合は、以下を試してください。
openssl pkcs7 -print_certs -in cert.pfx -out cert.pem
2.生成されたcert.pemファイルには、保護されていない秘密鍵とすべての証明書が含まれています。メモ帳で開いて、以下の操作を行ってください。
- -----BEGIN RSA PRIVATE KEY----- または -----BEGIN PRIVATE KEY----- で始まるブロックを見つけます。
- そのブロック全体を新しいファイルにコピーしてください。
この新しいファイルはファイル番号2(秘密鍵)です。
方法B : Apacheスタイルのエクスポート
一部のユーティリティは、証明書と鍵をパスワードなしでApache(PEM)形式でエクスポートし、2つの別々のファイルを生成します。これらは、OpenSSLによる変換を行わずに、ファイル1とファイル2として使用できます。
- ルート証明書を取得します。ベンダーのCAサイトには通常、「CA証明書、証明書チェーン、またはCRLをダウンロード」というメニュー項目があります。JMP LiveはCA証明書チェーンを必要とし、これによりファイル#3がダウンロードされます。Base64エンコーディングを選択します。ファイルがパスワードで保護されている場合は、上記の説明に従ってパスワードを削除します。PKCS#7またはP7B形式の場合は、次のコマンドでPEM形式に変換します。
openssl pkcs7 -in certnew.p7b -nodes -out root.pem
証明書の検証(任意)
PEMファイルを確認するには、以下を使用してください。
openssl x509 -in root.pem -text
これは、証明書の発行者、件名、有効期限などの詳細情報を表示し、確認できるようにします。
JMP Live 用の証明書のフォーマット
更新時に容易に識別できるよう、証明書には以下の名前を付けてください。
- 公開鍵(サーバー証明書) – cert.pem
- 秘密鍵 – key.pem
- 中間およびルート(CAチェーン) – root.pem
- パブリック、中間、ルートを組み合わせたもの – combined.pem
既存のファイルからcombined.pemを作成するには、サーバー証明書とCAチェーンを連結します。順序は次のとおりです。
- サーバー証明書
- 中級資格
- ルート証明書
JMP Liveで証明書を使用する
- 証明書ファイルを保存する
証明書を取得したら、JMP Liveで使用を開始してください。
ファイルをJMP Liveのインストールパス外の中央の安全な場所に保存してください。例:
C:\certificates
- JMP LiveとJMP Poolの.envファイルを更新します。
JMPLiveとJMPプールの.envファイルを編集して、証明書、秘密鍵、ルート証明書へのパスを反映させてください。
- JMP Liveの.envファイルを編集します。
SSL_CERT_FILE='C:\certificates\cert.pem'
SSL_KEY_FILE='C:\certificates\key.pem'
SSL_CA_FILE='C:\certificates\root.pem'
b. JMP Poolの.envファイルを編集します(ルート証明書のみ):
SSL_CA_FILE='C:\certificates\root.pem
2.Keycloakの設定を更新します
keycloak.conf ファイルを編集して、正しいパスを反映させてください。
https-certificate-file=C:/certificates/combined.pem
https-certificate-key-file=C:/certificates/key.pem
3.JMP Liveサービスを再起動してください。
タスク マネージャー (または services.msc) の「サービス」タブを使用して、以下のサービスを開始または再起動します。
- JMP Live Webアプリケーション(websjmpsvc.exe)
- JMPプールマネージャー(jmpppolsvc.exe)
- Keycloak (jmplivekeycloak)
セキュリティのベストプラクティス
秘密鍵ファイル(key.pem)を保護してください。
- ファイルシステムのアクセス許可を制限し、JMP Liveサービスアカウントと管理者のみが読み取りできるようにします。
- 秘密鍵は、メールや安全性の低い通信手段で決して共有しないでください。
- 秘密鍵が漏洩した場合は、認証局(CA)で証明書を失効させ、新しい証明書を発行してください。
役立つリンク
SSL証明書の設定時に参考になるリンクを以下に示します。