Tomcat > TomcatのManagerアプリへのアクセス
更新日
2021-01-13
広告
TomcatはデフォルトでManagerアプリが用意されています。 Managerアプリを使うと、ブラウザからTomcatの状態を確認できます。
Tomcat 8.5
Tomcat8.5からは、Managerアプリは、ローカルホスト(Tomcatが動いているサーバと同じホスト)からのアクセスしか受け付けない設定になっています。 セキュリティの観点では、この設定がいいのですが、開発/試験中だと、別のホストからアクセスできたほうが便利だったりします。 以下、別ホストからアクセスする方法を説明します。
tomcat/webapps/manager/META-INF/context.xmlを修正しています。 最初は以下のようになっています。
<Context antiResourceLocking="false" privileged="true" > <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/> </Context>RemoteAddrValueの部分をコメントアウトします。
<Context antiResourceLocking="false" privileged="true" > <!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> --> <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/> </Context>そして、tomcat/conf/tomcat-users.xmlに、以下の設定を追記する。
<role rolename="manager-gui"/> <user username="hoge" password="hoge" roles="manager-gui"/>
これで、Tomcatを再起動すれば、リモートホストからmanagerアプリにアクセスできるようになります。
たとえば、「http://TomcatサーバのIPアドレス:8080/manager/text/sslConnectorCiphers」にアクセスすれば、Tomcatがサポートしているcipher suite (暗号化と署名アルゴリズム)の情報を表示してくれたりします。開発・テスト時に便利です。
広告
お問い合わせは sweng.tips@gmail.com まで。