Apache Tomcat 用の JMX 接続の構成

Apache Tomcat アプリケーション・サーバー用のセキュア JMX 接続を構成する必要があります。

このタスクについて

Server Configuration Tool と Ant タスクは、デフォルトのセキュア JMX 接続を構成することができます。これには、JMX リモート・ポートの定義、および認証プロパティーの定義が含まれます。サーバー構成ツールと Ant タスクは、tomcat_install_dir/bin/setenv.bat および tomcat_install_dir/bin/setenv.sh を変更して、以下のオプションを CATALINA_OPTS に追加します。
-Djava.rmi.server.hostname=localhost
-Dcom.sun.management.jmxremote.port=8686
-Dcom.sun.management.jmxremote.authenticate=false
-Dcom.sun.management.jmxremote.ssl=false
注: 8686 はデフォルト値です。このポートの値は、ポートがコンピューターで使用可能でない場合、変更することができます。
  • tomcat_install_dir/bin/startup.bat または tomcat_install_dir/bin/catalina.bat を使用して Apache Tomcat を始動する場合は、setenv.bat ファイルが使用されます。
  • <tomcatInstallDir>/bin/startup.sh または tomcat_install_dir/bin/catalina.sh を使用して Apache Tomcat を始動する場合は、setenv.sh ファイルが使用されます。
別のコマンドを使用して Apache Tomcat を始動する場合は、このファイルが使用されない場合があります。Apache Tomcat Windows Service Installer をインストールした場合、サービス・ランチャーは setenv.batを使用しません。
重要: この構成は、デフォルトでは保護されていません。構成を保護するには、以下の手順のステップ 2 と 3 を手動で完了する必要があります。

手順

Apache Tomcat の手動構成

  1. 単純な構成の場合は、CATALINA_OPTS に以下のオプションを追加します
    -Djava.rmi.server.hostname=localhost
    -Dcom.sun.management.jmxremote.port=8686
    -Dcom.sun.management.jmxremote.authenticate=false
    -Dcom.sun.management.jmxremote.ssl=false
  2. 認証をアクティブにするには、Apache Tomcat ユーザー資料の SSL サポート - BIO および NIOSSL 構成方法を参照してください。
  3. SSL を有効にした JMX 構成の場合、以下のオプションを追加します。
    -Dcom.sun.management.jmxremote=true
    -Dcom.sun.management.jmxremote.port=8686
    -Dcom.sun.management.jmxremote.ssl=true 
    -Dcom.sun.management.jmxremote.authenticate=false 
    -Djava.rmi.server.hostname=localhost  
    -Djavax.net.ssl.trustStore=<key store location>
    -Djavax.net.ssl.trustStorePassword=<key store password>
    -Djavax.net.ssl.trustStoreType=<key store type>
    -Djavax.net.ssl.keyStore=<key store location>
    -Djavax.net.ssl.keyStorePassword=<key store password>
    -Djavax.net.ssl.keyStoreType=<key store type>
    注: ポート 8686 は変更することができます。
  4. Tomcat インスタンスがファイアウォールの背後で実行されている場合は、JMX リモート・ライフサイクル・リスナーを構成する必要があります。JMX リモート・ライフサイクル・リスナーについては、Apache Tomcat の資料を参照してください。

    また、以下の例に示すように、以下の環境プロパティーを server.xml ファイル内の管理サービス・アプリケーションの Context セクションに追加する必要があります。

    <Context docBase="mfpadmin" path="/mfpadmin ">
        <Environment name="mfp.admin.rmi.registryPort" value="registryPort" type="java.lang.String" override="false"/>
        <Environment name="mfp.admin.rmi.serverPort" value="serverPort" type="java.lang.String" override="false"/>
    </Context>

    上記の例について、以下に説明します。

    • registryPort の値は、JMX リモート・ライフサイクル・リスナーの rmiRegistryPortPlatform 属性と同じ値でなければなりません。
    • serverPort の値は、JMX リモート・ライフサイクル・リスナーの rmiServerPortPlatform 属性と同じ値でなければなりません。
  5. Apache Tomcat Windows Service Installer を使用して Apache Tomcat をインストールした場合は、CATALINA_OPTS にオプションを追加する代わりに、tomcat_install_dir/bin/Tomcat7w.exe を実行し、「プロパティー」ウィンドウの「Java」タブにオプションを追加してください。
    Apache Tomcat Windows Service Installer のプロパティー・ウィンドウの Java タブ