1.2.15. JVM が FIPS モードで実行されているときに管理対象ドメインを起動する

各ホストコントローラーとマスタードメインコントローラーを更新して、通信に SSL/TLS を使用します。

前提条件

開始する前に、以下の前提条件を完了していることを確認してください。

  • 管理対象ドメインを実装している。

    管理対象ドメインの設定に関する詳細は、JBoss EAP『 設定ガイド』の「 ドメイン管理 」を参照してください

  • FIPS を設定している。

    FIPS の設定の詳細は、「Red Hat Enterprise Linux 7 以降での SSL/TLS の FIPS 140-2 暗号化の有効化」を参照してください。

  • 必要な証明書をすべて作成し、ドメインコントローラーの証明書を各コントローラーのトラストストアにインポートしている。
警告

Red Hat では、影響するすべてのパッケージで TLSv1.1 を利用するために SSLv2、SSLv3、および TLSv1.0 を明示的に無効化することを推奨しています。

  1. マスタードメインコントローラーで、NSS データベースを PKCS11 プロバイダーとして使用するように設定された SSL/TLS セキュリティーレルムを作成します。

    例: マスタードメインコントローラーのセキュリティーレルム

    <security-realm name="HTTPSRealm">
        <server-identities>
            <ssl>
                <engine enabled-protocols="TLSv1.1"/>
                <keystore provider="PKCS11" keystore-password="strongP@ssword1"/>
            </ssl>
        </server-identities>
        <authentication>
            <local default-user="\$local"/>
            <properties path="https-users.properties" relative-to="jboss.domain.config.dir"/>
        </authentication>
    </security-realm>

  2. 各ホストコントローラーで、認証に SSL/TLS トラストストアを使用してセキュリティーレルムを作成します。

    例: 各ホストコントローラーのセキュリティーレルム

    <security-realm name="HTTPSRealm">
      <authentication>
        <truststore provider="PKCS11" keystore-password="strongP@ssword1"/>
      </authentication>
    </security-realm>

    注記

    各ホストでこのプロセスを繰り返します。

  3. 作成したセキュリティーレルムを使用して、マスタードメインコントローラーの HTTP インターフェースを保護します。

    例: HTTP インターフェース

    <management-interfaces>
        <http-interface security-realm="HTTPSRealm">
            <http-upgrade enabled="true"/>
            <socket interface="management" port="${jboss.management.http.port:9990}"/>
        </http-interface>
    </management-interfaces>

  4. 各ホストコントローラーで SSL/TLS レルムを使用して、マスタードメインコントローラーに接続します。

    マスタードメインコントローラーへの接続に使用されるセキュリティーレルムを更新します。サーバーが動作していない場合に、ホストコントローラーの設定ファイル (host.xmlhost-slave.xml など) を変更します。

    例: ホストコントローラー設定ファイル

    <domain-controller>
      <remote security-realm="HTTPSRealm">
        <discovery-options>
          <static-discovery name="primary" protocol="${jboss.domain.master.protocol:remote}" host="${jboss.domain.master.address}" port="${jboss.domain.master.port:9990}"/>
        </discovery-options>
      </remote>
    </domain-controller>

  5. 各サーバーがホストコントローラーに接続する方法を更新します。

    例: サーバー設定

    <server name="my-server" group="my-server-group">
      <ssl ssl-protocol="TLS" trust-manager-algorithm="SunX509" truststore-type="PKCS11" truststore-password="strongP@ssword1"/>
    </server>

  6. 管理対象ドメインで双方向 SSL/TLS を設定します。

    双方向 SSL/TLS を有効にするには、マスタードメインコントローラーの SSL/TLS セキュリティーレルムにトラストストア認証メソッドを追加します。以下の管理 CLI コマンドを実行します。

    /host=master/core-service=management/security-realm=HTTPSRealm/authentication=truststore:add(keystore-provider="PKCS11",keystore-password="strongP@ssword1")
    
    reload --host=master

    SSL サーバーアイデンティティーを持つように各ホストコントローラーのセキュリティーレルムを更新する必要もあります。以下の管理 CLI コマンドを実行します。

    /host=host1/core-service=management/security-realm=HTTPSRealm/server-identity=ssl:add(keystore-provider=PKCS11, keystore-password="strongP@ssword1",enabled-protocols=["TLSv1.1"])
    
    reload --host=host1
    重要

    また、各ホストの証明書がドメインコントローラーのトラストストアにインポートされることを確認する必要があります。