5.7. HTTPS 用の管理コンソールの設定
HTTPS 経由で のみ 通信するように JBoss EAP 管理コンソールを設定すると、セキュリティーが強化されます。クライアント(Web ブラウザー)と管理コンソール間のネットワークトラフィックはすべて暗号化されるため、中間者攻撃などのセキュリティー攻撃のリスクが軽減されます。JBoss EAP インスタンスを管理するユーザーは、そのインスタンスに対して非特権ユーザーよりも多くのパーミッションを持ち、HTTPS を使用すると、そのインスタンスの整合性と可用性の保護に役立ちます。
この手順では、JBoss EAP スタンドアロンインスタンスまたはドメインとの暗号化されていない通信を無効にします。これらの通信で使用されるパスワードは、JBoss EAP vault 機能を使用して暗号化され、設定ファイルで使用されるパスワードはマスクされます。
この手順は、
スタンドアロン モードと ドメイン モードの設定の両方に適用されます。ドメイン モードでは、管理 CLI コマンドの前にホストの名前(例: /host=master )を付けます。
手順5.2
キーストアを作成して管理コンソールをセキュアにします。
注記管理コンソールは JCEKS 形式のキーストアと互換性がないため、このキーストアは JKS 形式である必要があります。端末エミュレーターで以下のコマンドを入力します。パラメーターエイリアス、keypass、keystore、storepass、およびdnameの場合は、サンプル値を任意の値に置き換えます。パラメーターvalidityは、キーが有効な日数を指定します。730 の値は 2 年と等しくなります。keytool -genkeypair -alias appserver -storetype jks -keyalg RSA -keysize 2048 -keypass password1 -keystore EAP_HOME/standalone/configuration/identity.jks -storepass password1 -dname "CN=appserver,OU=Sales,O=Systems Inc,L=Raleigh,ST=NC,C=US" -validity 730 -v
keytool -genkeypair -alias appserver -storetype jks -keyalg RSA -keysize 2048 -keypass password1 -keystore EAP_HOME/standalone/configuration/identity.jks -storepass password1 -dname "CN=appserver,OU=Sales,O=Systems Inc,L=Raleigh,ST=NC,C=US" -validity 730 -vCopy to Clipboard Copied! Toggle word wrap Toggle overflow 管理コンソールが HTTPS にバインドされていることを確認します。
スタンドアロンモード
management-https設定を追加し、management-http設定を削除して、管理コンソールがインターフェースのHTTPSにバインドされていることを確認します。JBoss EAP インスタンスが稼働していることを確認してから、以下の管理 CLI コマンドを入力します。/core-service=management/management-interface=http-interface:write-attribute(name=secure-socket-binding, value=management-https)
/core-service=management/management-interface=http-interface:write-attribute(name=secure-socket-binding, value=management-https)Copy to Clipboard Copied! Toggle word wrap Toggle overflow /core-service=management/management-interface=http-interface:undefine-attribute(name=socket-binding)
/core-service=management/management-interface=http-interface:undefine-attribute(name=socket-binding)Copy to Clipboard Copied! Toggle word wrap Toggle overflow これらのコマンドの出力は以下のようになります。{"outcome" => "success"}{"outcome" => "success"}Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記この時点で、JBoss EAP ログに以下のエラーメッセージが表示されることがあります。SSL 設定が完了していないため、これは想定されています。JBAS015103: A secure port has been specified for the HTTP interface but no SSL configuration in the realm.
JBAS015103: A secure port has been specified for the HTTP interface but no SSL configuration in the realm.Copy to Clipboard Copied! Toggle word wrap Toggle overflow ドメインモード
secure-port を追加し、ポート設定を削除して、management-interface セクション内の socket 要素を変更します。JBoss EAP インスタンスが稼働していることを確認してから、以下の管理 CLI コマンドを入力します。/host=master/core-service=management/management-interface=http-interface:write-attribute(name=secure-port,value=9443) /host=master/core-service=management/management-interface=http-interface:undefine-attribute(name=port)
/host=master/core-service=management/management-interface=http-interface:write-attribute(name=secure-port,value=9443) /host=master/core-service=management/management-interface=http-interface:undefine-attribute(name=port)Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記この時点で、JBoss EAP ログに以下のエラーメッセージが表示されることがあります。SSL 設定が完了していないため、これは想定されています。JBAS015103: A secure port has been specified for the HTTP interface but no SSL configuration in the realm.
JBAS015103: A secure port has been specified for the HTTP interface but no SSL configuration in the realm.Copy to Clipboard Copied! Toggle word wrap Toggle overflow
オプション: カスタムの socket-binding グループ
カスタムのsocket-bindingグループを使用している場合は、management-httpsバインディングが定義されていることを確認します(デフォルトではポート9443にバインドされます)。マスター設定ファイル(例:standalone.xml)を編集して以下と一致させます。Copy to Clipboard Copied! Toggle word wrap Toggle overflow セキュリティーレルムを新たに作成します。
以下のコマンドを入力してManagementRealmHTTPSという名前の新規セキュリティーレルムを作成します。/host=master/core-service=management/security-realm=ManagementRealmHTTPS/:add /host=master/core-service=management/security-realm=ManagementRealmHTTPS/authentication=properties/:add(path=ManagementUsers.properties, relative-to=jboss.domain.config.dir)
/host=master/core-service=management/security-realm=ManagementRealmHTTPS/:add /host=master/core-service=management/security-realm=ManagementRealmHTTPS/authentication=properties/:add(path=ManagementUsers.properties, relative-to=jboss.domain.config.dir)Copy to Clipboard Copied! Toggle word wrap Toggle overflow 新しいセキュリティーレルムを使用するように管理インターフェースを設定
以下のコマンドを実行します。/host=master/core-service=management/management-interface=http-interface/:write-attribute(name=security-realm,value=ManagementRealmHTTPS)
/host=master/core-service=management/management-interface=http-interface/:write-attribute(name=security-realm,value=ManagementRealmHTTPS)Copy to Clipboard Copied! Toggle word wrap Toggle overflow キーストアを使用するように管理コンソールを設定します。
以下の管理 CLI コマンドを入力します。パラメーターファイルでは、パスワードとエイリアスの値を手順からコピーして 『管理コンソールをセキュアにする』 必要があります。/core-service=management/security-realm=ManagementRealmHTTPS/server-identity=ssl:add(keystore-path=identity.jks,keystore-relative-to=jboss.server.config.dir, keystore-password=password1, alias=appserver)
/core-service=management/security-realm=ManagementRealmHTTPS/server-identity=ssl:add(keystore-path=identity.jks,keystore-relative-to=jboss.server.config.dir, keystore-password=password1, alias=appserver)Copy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドからの出力は以下のようになります。Copy to Clipboard Copied! Toggle word wrap Toggle overflow JBoss EAP サーバーを再起動します。
サーバーの再起動時には、起動したサービスの数を示すテキストの直前にログが含まれるはずです。管理コンソールはポート 9443 でリッスンし、手順が成功したことを確認します。14:53:14,720 INFO [org.jboss.as] (Controller Boot Thread) JBAS015962: Http management interface listening on https://127.0.0.1:9443/management 14:53:14,721 INFO [org.jboss.as] (Controller Boot Thread) JBAS015952: Admin console listening on https://127.0.0.1:9443
14:53:14,720 INFO [org.jboss.as] (Controller Boot Thread) JBAS015962: Http management interface listening on https://127.0.0.1:9443/management 14:53:14,721 INFO [org.jboss.as] (Controller Boot Thread) JBAS015952: Admin console listening on https://127.0.0.1:9443Copy to Clipboard Copied! Toggle word wrap Toggle overflow
注記
セキュリティー上の理由から、キーストアパスワードをマスクすることが推奨されます。これを行う方法は、「パスワード vault システム」 を参照してください。