JBoss Application Server に対する SSL の設定

JBoss Application Server で SSL を設定するには、認証時に SSL 秘密鍵証明書が必要です。秘密鍵証明書は、Java keytool を使用して作成するか、認証局(CA)から要求して読み込むことができます。その後、JBoss で SSL を有効にする必要があります。

1 つのコマンドでキーストアの作成に必要なすべての情報を指定することによって、keytool を実行できます。

ここでの手順では次のように指定します。

  • [appserver root] は、AEM forms を実行するアプリケーションサーバーのホームディレクトリです。
  • [type] は、実行したインストールの種類に応じて異なるフォルダ名です。

SSL 秘密鍵証明書の作成

  1. コマンドプロンプトで、に移動します。 [JAVA ホーム]/bin を開き、次のコマンドを入力して秘密鍵証明書とキーストアを作成します。

    keytool -genkey -dname "CN=ホスト名 , OU=グループ名 , O=会社名 ,L=市区町村名 , S=都道府県 , C=国コード» -alias "AEMForms Cert" -keyalg RSA -keypasskey_password -keystorekeystorename .keystore

    メモ

    置換 [JAVA_HOME] を JDK がインストールされているディレクトリに置き換え、斜体のテキストを環境に対応する値に置き換えます。 「Host Name」は、アプリケーションサーバーの完全修飾ドメイン名です。

  2. 次を入力します。 keystore_password パスワードの入力を求められた場合。 キーストアおよびキーのパスワードは、同じである必要があります。

    メモ

    この keystore_password このステップで入力するパスワードは、ステップ 1 で入力したものと同じか、異なる場合があります。

  3. keystorename.keystore を [appserver root]/server/[type]/conf 次のいずれかのコマンドを入力してディレクトリに追加します。

    • (Windows シングルサーバ) copy keystorename.keystore[appserver root]\standalone\configuration
    • (Windows Server クラスタ)コピー keystorename.keystore[appserver root]\domain\configuration
    • (Linux シングルサーバ) cp keystorename.keystore [appserver root]/standalone/configuration
    • (Linux サーバクラスタ) cp <em>keystorename</em>.keystore<em>[appserver root]</em>/domain/configuration
  4. 次のコマンドを入力して、証明書ファイルを書き出します。

    • (シングルサーバー) keytool -export -alias "AEMForms Cert" -file AEMForms_cert.cer -keystore [appserver root]/standalone/configuration/keystorename.keystore
    • (サーバークラスター) keytool -export -alias "AEMForms Cert" -file AEMForms_cert.cer -keystore [appserver root]/domain/configuration/keystorename.keystore
  5. パスワードの入力を求められたら、keystore_password​を入力します。

  6. AEMForms_cert.cer ファイルを [appserver root] \conf 次のコマンドを入力してディレクトリに追加します。

    • (Windows シングルサーバ) copy AEMForms_cert.cer [appserver root]\standalone\configuration
    • (Windows Server クラスタ) copy AEMForms_cert.cer [appserver root]\domain\configuration
    • (Linux シングルサーバ) cp AEMForms _cert.cer [appserver root]\standalone\configuration
    • (Linux サーバクラスタ) cp AEMForms _cert.cer [appserver root]\domain\configuration
  7. 次のコマンドを入力して、証明書の内容を表示します。

    • keytool -printcert -v -file [appserver root]\standalone\configuration\AEMForms_cert.cer
    • keytool -printcert -v -file [appserver root]\domain\configuration\AEMForms_cert.cer
  8. の cacerts ファイルへの書き込みアクセス権を提供するには [JAVA_HOME]\jre\lib\security必要に応じて、次のタスクを実行します。

    • (Windows)cacerts ファイルを右クリックして「プロパティ」を選択し、「読み取り専用」属性の選択を解除します。
    • (Linux) タイプ chmod 777 cacerts
  9. 次のコマンドを入力して、証明書ファイルを読み込みます。

    keytool -import -alias “AEMForms Cert” -fileAEMForms_cert .cer -keystoreJAVA_HOME \jre\lib\security\cacerts

  10. タイプ changeit をパスワードとして設定します。 Java インストールではこれがデフォルトのパスワードですが、システム管理者によって変更されている場合があります。

  11. 次を求められた場合: Trust this certificate? [no]:、型 yes. 「Certificate was added to keystore」という確認メッセージが表示されます。

  12. Workbench から SSL 経由で接続している場合は、Workbench コンピューターに証明書をインストールします。

  13. テキストエディターで、次のファイルを編集用に開きます。

    • シングルサーバ — [appserver root]/standalone/configuration/lc_<dbname turnkey="">.xml

    • サーバークラスタ — [appserver root]/domain/configuration/host.xml

    • サーバークラスタ — [appserver root]/domain/configuration/domain_<dbname>.xml

    • シングルサーバーの場合、 lc_<dbaname/tunkey>.xml ファイルの <security-realms> セクションに次のテキストを追加します。
    <security-realm name="SSLRealm">
    <server-identities>
    <ssl>
    <keystore path="C:/Adobe/Adobe_Experience_Manager_Forms/jboss/standalone/configuration/aemformses.keystore" keystore-password="changeit" alias="AEMformsCert" key-password="changeit"/>
    </ssl>
    </server-identities>
    </security-realm>
    

    <server> セクションが次のコードの後に存在します。

    <http-listener name="default" socket-binding="http" redirect-socket="https" max-post-size="104857600"/>

    上記のコードの後の <server> セクションに次のテキストを追加します。

    <https-listener name="default-secure" socket-binding="https" security-realm="SSLRealm"/>
    
    • サーバークラスタの場合、 内 [appserver root]\domain\configuration\host.xmlをすべてのノードで、の後に次を追加します。 <security-realms> セクション:
    <security-realm name="SSLRealm">
    <server-identities>
    <ssl>
    <keystore path="C:/Adobe/Adobe_Experience_Manager_Forms/jboss/standalone/configuration/aemformses.keystore" keystore-password="changeit" alias="AEMForms Cert" key-password="changeit"/>
    </ssl>
    </server-identities>
    </security-realm>
    

    サーバークラスタのプライマリノード上の [appserver root]\domain\configuration\domain_<dbname>.xml、 <server> セクションが次のコードの後に存在します。

    <http-listener name="default" socket-binding="http" redirect-socket="https" max-post-size="104857600"/>

    上記のコードの後の <server> セクションに次のテキストを追加します。

    <https-listener name="default-secure" socket-binding="https" security-realm="SSLRealm"/>
    
  14. keystoreFile 属性および keystorePass 属性の値を、キーストアの作成時に指定したキーストアパスワードに変更します。

  15. アプリケーションサーバーを再起動します。

    • 自動インストールの場合:

      • Windows のコントロールパネルで、「管理ツール」をクリックして「サービス」をクリックします。
      • JBoss for Adobe Experience Manager forms を選択します。
      • 操作/停止を選択します。
      • サービスのステータスが停止になるまで待機します。
      • 操作/開始を選択します。
    • Adobe により事前設定された、または手動で設定した JBoss インストールの場合:

      • コマンドプロンプトで、に移動します。 [appserver root]/bin.

      • 次のコマンドを入力して、サーバーを停止します。

        • (Windows) shutdown.bat -S
        • (Linux) ./shutdown.sh -S
      • JBoss プロセスが完全にシャットダウンする(JBoss プロセスが、起動された端末にコントロールを返す)まで待機します。

      • 次のコマンドを入力して、サーバーを起動します。

        • (Windows) run.bat -c <profile>
        • (Linux) ./run.sh -c <profile>
  16. SSL を使用して管理コンソールにアクセスするには、「 https://[host name]:[port]/adminui web ブラウザーの場合:

    JBoss のデフォルト SSL ポートは 8443 です。以降 AEM Forms にアクセスするときはこのポートを指定します。

CA からの秘密鍵証明書の要求

  1. コマンドプロンプトで、に移動します。 [JAVA ホーム]/bin を開き、次のコマンドを入力してキーストアとキーを作成します。

    keytool -genkey -dname "CN=ホスト名 , OU=グループ名 , O=会社名 , L=市区町村名 , S=都道府県 , C=国コード" -alias "AEMForms Cert" -keyalg RSA -keypass-key_password -keystorekeystorename .keystore

    メモ

    置換 [JAVA_HOME] を JDK がインストールされているディレクトリに置き換え、斜体のテキストを環境に対応する値に置き換えます。

  2. 次のコマンドを入力して証明書要求を生成し、認証局に送信します

    keytool -certreq -alias "AEM Forms 証明書" -keystorekeystorename .keystore -fileAEMormscertRequest.csr

  3. 証明書ファイルの要求が完了したら、次の手順を実行します。

CA から取得した秘密鍵証明書の SSL を有効にするための使用

  1. コマンドプロンプトで、に移動します。 [JAVA HOME]/bin と次のコマンドを入力して、CSR が署名されている CA のルート証明書をインポートします。

    keytool -import -trustcacerts -file rootcert.pem -keystore keystorename.keystore -alias root

    ルート証明書がブラウザーにない場合は、ブラウザーにも読み込みます。

    メモ

    置換 [JAVA_HOME]を JDK がインストールされているディレクトリに置き換え、斜体のテキストを環境に対応する値に置き換えます。

  2. コマンドプロンプトで、に移動します。 [JAVA HOME]/bin と次のコマンドを入力して、秘密鍵証明書をキーストアに読み込みます。

    keytool -import -trustcacerts -fileCACertificateName .crt -keystorekeystorename .keystore

    メモ
    • 置換 [JAVA_HOME] を JDK がインストールされているディレクトリに置き換え、斜体のテキストを環境に対応する値に置き換えます。
    • 自己署名の公開証明書が存在する場合は、読み込んだ CA 署名付き証明書に置き換えられます。
  3. SSL 秘密鍵証明書の作成の手順 13~18 を実行します。

このページ