Deep Security Manager SSL証明書の置き換え

Deep Security Managerは、Agent、Appliance、Relay、およびユーザのWebブラウザとの接続用に、10年間有効な自己署名証明書を作成します。ただし、この証明書は、セキュリティを強化するために信頼できる認証局 (CA) の証明書に置き換えることができます (これらの証明書はDeep Security Managerのアップグレード後も維持されます)。

次の2つのDeep Security Manager Keystoreファイルを使用します。

  • <DSM_installation_folder>/jre/lib/security/cacerts

    このcacertsファイルには、CAサーバ、中間CAサーバ、Deep SecurityアプリケーションサーバのためのDeep Security Manager信頼済みの公開鍵が含まれます。

  • <DSM_installation_folder>/.keystore

    .keystoreファイルには、Deep Securityアプリケーションサーバのための証明書と秘密鍵が含まれます。独自の証明書を使用するには、証明書を.keystoreファイルにインポートする必要があります。

Windows環境でSSL証明書を置き換えるには、次の手順を実行する必要があります。

  1. 新しい.keystoreファイルを作成し、証明書をcacertsファイルに追加する
  2. PKCS12キーチェーンファイルを作成し、新しい.keystoreファイルにインポートする
  3. 新しい.keystoreファイルを使用するようにDeep Security Managerを設定する

Linux環境でSSL証明書を置き換えるには、次の手順を実行する必要があります。

  1. 新しい.keystoreファイルを作成し、証明書をcacertsファイルに追加する
  2. PKCS12キーチェーンファイルを作成し、新しい.keystoreファイルにインポートする
  3. 新しい.keystoreファイルを使用するようにDeep Security Managerを設定する

FIPSモードを有効にしている場合は (FIPS 140-2のサポートを参照)、証明書を置き換える前にFIPSモードを無効にして、完了したらFIPSモードを再度有効にする必要があります。

信頼された証明書を確認する

[管理]→[システム設定]→[セキュリティ]→[証明書リストの表示] をクリックすると、Deep Security Managerで受け入れられたすべてのセキュリティ証明書のリストが表示されます。

Windows環境でSSL証明書を置き換える

新しい.keystoreファイルを作成し、証明書をcacertsファイルに追加する

  1. 次のファイルのバックアップを作成します。

    • <DSM_installation_folder>/jre/lib/security/cacerts
    • <DSM_installation_folder>/.keystore
    • <DSM_installation_folder>/configuration.properties
  2. 新しい.keystoreファイルを作成します。

    “%ProgramFiles%\Trend Micro\Deep Security Manager\jre\bin\keytool.exe” -genkey -alias tomcat -keyalg RSA -dname cn=<Deep Security Managerサーバのホスト名またはFQDN> -storepass <キーストアのパスワード>

  3. 次のコマンドを使用して、新しい.keystoreファイルから証明書署名要求ファイルを生成します。

    cd "%ProgramFiles%\Trend Micro\Deep Security Manager\jre\bin\"

    keytool.exe -certreq -keyalg RSA -alias tomcat -keystore %userprofile%\.keystore -storepass <キーストアのパスワード> -file certrequest.csr

  4. certrequest.csrファイルを認証局に送り、署名してもらいます。認証局により、次の証明書が提供されます。

    ルートCA証明書: rootCA.cer

    中間CA証明書: intermediateCA.cer

    アプリケーションサーバ証明書: dsm.cer

  5. 証明書と新しい.keystoreファイルを%userprofile%\certs\ディレクトリに移動します。

  6. 次のコマンドを使用して証明書をcacertsファイルにインポートします。

    cacertsファイルには各証明書に一意のエイリアスが必要です。中間CA証明書が複数ある場合は、それぞれに一意のエイリアスが必要です (たとえば、intermd1intermd2intermd3)。証明書は認証局で確認されたのと同じ順序でインポートする必要があります。

    cd "%ProgramFiles%\Trend Micro\Deep Security Manager\jre\bin\"

    keytool.exe -import -alias root -trustcacerts -file %userprofile%\certs\rootCA.cer -keystore "%ProgramFiles%\Trend Micro\Deep Security Manager\jre\lib\security\cacerts" -storepass changeit

    keytool.exe -import -alias intermd1 -trustcacerts -file %userprofile%\certs\intermediateCA.cer -keystore "%ProgramFiles%\Trend Micro\Deep Security Manager\jre\lib\security\cacerts" -storepass changeit

    keytool.exe -import -alias tomcat -trustcacerts -file %userprofile%\certs\dsm.cer -keystore "%ProgramFiles%\Trend Micro\Deep Security Manager\jre\lib\security\cacerts" -storepass changeit

PKCS12キーチェーンファイルを作成し、新しい.keystoreファイルにインポートする

証明書間の関係を維持するには、PKCS12キーチェーンファイルを作成し、opensslを使用してルートCA、中間CA、アプリケーションサーバ証明書をこのファイルにインポートする必要があります。

  1. 次のコマンドを使用して、新しい.keystoreファイルから秘密鍵を生成します。

    cd %ProgramFiles%\Trend Micro\Deep Security Manager\jre\bin\

    keytool.exe -importkeystore -srckeystore %userprofile%\certs\.keystore -srcstorepass <キーストアのパスワード> -deststoretype PKCS12 -destkeystore %userprofile%\certs\keystore.p12 -storepass <p12キーストアのパスワード>

    cd %ProgramFiles(x86)%\GnuWin32\bin\

    openssl pkcs12 -in %userprofile%\certs\keystore.p12 -passin pass:<上で指定したp12キーストアのパスワード> -nocerts -out %userprofile%\certs\private.pem -passout pass:<秘密のPEMパスワード>

    openssl rsa -in %userprofile%\certs\private.pem -passin pass:<上記の秘密のPEMパスワード> -out %userprofile%\certs\private.key

  2. ルートおよび中間CA証明書からキーチェーンファイルの証明書を作成します。

    認証局に提供された順番で証明書を組み合わせます。

    copy %userprofile%\certs\intermediateCA.cer+%userprofile%\certs\rootCA.cer %userprofile%\certs\CAcertchain.cer

  3. PKCS12キーチェーンを作成します。

    PKCS12キーチェーンはLinux環境で作成する必要があります。この記事の公開時点で、Windowsには-nameオプションを使用する場合にopensslがクラッシュする問題が見つかっています。Javaでは各キーにエイリアスがある必要があるため、PKCS12キーチェーンをこのオプションを使用せずに新しい.keystoreファイルにインポートすることはできません。次のコマンドを使用して、Linux環境でPKCS12キーチェーンファイルを作成してください。

    openssl pkcs12 -export -in ~/certs/dsm.cer -inkey ~/certs/private.key -certfile ~/certs/CAcertchain.cer -out dsm.p12 -name tomcat -passout pass:<キーチェーンのパスワード>

  4. PKCS12キーチェーンを新しい.keystoreファイルにインポートします。

    cd %ProgramFiles%\Trend Micro\Deep Security Manager\jre\bin\

    keytool.exe -importkeystore -srckeystore %userprofile%\certs\dsm.p12 -srcstoretype pkcs12 -srcalias tomcat -srcstorepass <キーチェーンのパスワード> -destkeystore %userprofile%\certs\.keystore -storepass <キーストアのパスワード> -destalias tomcat

新しい.keystoreファイルを使用するようにDeep Security Managerを設定する

  1. Deep Security Managerのインストールディレクトリにある.keystoreファイルを新しい.keystoreファイルで上書きします。

    Deep Security Managerのアップグレード時は初期設定の.keystoreファイルだけが保持されます。既存の.keystoreファイルと置き換えることを推奨します。
  2. configuration.propertiesファイルを開き、keystorekeystorePass=パラメータを探します。この値を、新しい.keystoreファイルを作成し、証明書をcacertsファイルに追加するの手順2で<キーストアのパスワード>に指定した値に置き換えます。

  3. Deep Security Managerサービスを再起動します。
  4. Deep Security Managerコンソールを開いてhttps://<Deep Security Managerサーバのホスト名またはFQDN>:4119にアクセスし、証明書に関するエラーメッセージが表示されないことを確認します。<Deep Security Managerサーバのホスト名またはFQDN> は、新しい.keystoreファイルを作成し、証明書をcacertsファイルに追加するの手順2で使用したものと同じにする必要があります。

Linux環境でSSL証明書を置き換える

新しい.keystoreファイルを作成し、証明書をcacertsファイルに追加する

  1. 次のファイルのバックアップを作成します。

    <DSM_installation_folder>/jre/lib/security/cacerts

    <DSM_installation_folder>/.keystore

    <DSM_installation_folder>/configuration.properties

  2. 新しい.keystoreファイルを作成します。

    /opt/dsm/jre/lib/bin/keytool -genkey -alias tomcat -keyalg RSA -dname cn=<Deep Security Managerサーバのホスト名またはFQDN> -storepass <キーストアのパスワード>

  3. 新しい.keystoreファイルから証明書署名要求ファイルを生成します。

    /opt/dsm/jre/lib/bin/keytool -certreq -keyalg RSA -alias tomcat -keystore ~/.keystore -storepass <キーストアのパスワード> -file certrequest.csr

  4. certrequest.csrファイルを認証局に送り、署名してもらいます。認証局により、次の証明書が提供されます。

    ルートCA証明書: rootCA.cer

    中間CA証明書: intermediateCA.cer

    アプリケーションサーバ証明書: dsm.cer

  5. 証明書と新しい.keystoreファイルを~/certsディレクトリに移動します。

  6. 次のコマンドを使用して証明書をcacertsファイルにインポートします。

    cacertsファイルには各証明書に一意のエイリアスが必要です。中間CA証明書が複数ある場合は、それぞれに一意のエイリアスが必要です (たとえば、intermd1intermd2intermd3)。証明書は認証局で確認されたのと同じ順序でインポートする必要があります。

    keytool -import -alias root -trustcacerts -file ~/certs/rootCA.cer -keystore /opt/dsm/jre/lib/security/cacerts -storepass changeit

    keytool -import -alias intermd1 -trustcacerts -file ~/certs/intermediateCA.cer -keystore /opt/dsm/jre/lib/security/cacerts -storepass changeit

    keytool -import -alias tomcat -trustcacerts -file ~/certs/dsm.cer -keystore /opt/dsm/jre/lib/security/cacerts -storepass changeit

PKCS12キーチェーンファイルを作成し、新しい.keystoreファイルにインポートする

証明書間の関係を維持するには、PKCS12キーチェーンファイルを作成し、opensslを使用してルートCA、中間CA、アプリケーションサーバ証明書をこのファイルにインポートする必要があります。

  1. 次のコマンドを使用して、新しい.keystoreファイルから秘密鍵を生成します。

    /opt/dsm/jre/bin/keytool -importkeystore -srckeystore ~/certs/.keystore -srcstorepass <キーストアのパスワード> -deststoretype PKCS12 -destkeystore ~/certs/keystore.p12 -storepass <p12キーストアのパスワード>

    openssl rsa -in ~/certs/keystore.p12 -inform PKCS12 -passin pass:<上で指定したp12キーストアのパスワード> -out ~/certs/private.key

  2. ルートおよび中間CA証明書からキーチェーンファイルの証明書を作成します。

    cat ~/certs/intermediateCA.cer ~/certs/rootCA.cer > ~/certs/CAcertchain.cer

    認証局に提供された順番で証明書を組み合わせます。

  3. PKCS12キーチェーンを作成します。

    openssl pkcs12 -export -in ~/certs/dsm.cer -inkey ~/certs/private.key -certfile ~/certs/CAcertchain.cer -out dsm.p12 -name tomcat -passout pass:<キーチェーンのパスワード>

  4. PKCS12キーチェーンを新しい.keystoreファイルにインポートします。

    /opt/dsm/jre/bin/keytool -importkeystore -srckeystore ~/certs/dsm.p12 -srcstoretype pkcs12 -srcalias tomcat -srcstorepass <キーチェーンのパスワード> -destkeystore ~/certs/.keystore -storepass <キーストアのパスワード> -destalias tomcat

新しい.keystoreファイルを使用するようにDeep Security Managerを設定する

  1. Deep Security Managerのインストールディレクトリにある.keystoreファイルを新しい.keystoreファイルで上書きします。

    cp ~/certs/.keystore /opt/dsm/.keystore

    Deep Security Managerのアップグレード時は初期設定の.keystoreファイルだけが保持されます。既存の.keystoreファイルと置き換えることを推奨します。
  2. configuration.propertiesファイルを開き、keystorekeystorePass=パラメータを探します。この値を、新しい.keystoreファイルを作成し、証明書をcacertsファイルに追加するの手順2で<キーストアのパスワード>に指定した値に置き換えます。

  3. Deep Security Managerサービスを再起動します。
  4. Deep Security Managerコンソールを開いてhttps://<Deep Security Managerサーバのホスト名またはFQDN>:4119にアクセスし、証明書に関するエラーメッセージが表示されないことを確認します。<Deep Security Managerサーバのホスト名またはFQDN> は、新しい.keystoreファイルを作成し、証明書をcacertsファイルに追加するの手順2で使用したものと同じにする必要があります。