Applications administration Tomcat

De EjnTricks

Cet article présente les deux applications officielles manager et host-manager de Tomcat.


Icon File Owner.png Paquet Ubuntu tomcat-admin

System-Install-icon.png Installation

L'installation du package tomcat-admin permet d'installer les deux application manager et host-manager. C'est application sont accessibles respectivement avec les URLS:

  • /manager/html
  • /host-manager/html

Les fichiers sont installés dans le répertoire /usr/share/tomcat6-admin, pour les applications, et sous /etc/tomcat6/Catalina/localhost pour leur référencement dans le serveur.

Dans le cadre de l'application manager, le fichier web.xml contient la description des restrictions suivantes, entraînant la nécessité de créer le rôle manager:

  <security-constraint>
    <web-resource-collection>
      <web-resource-name>HTMLManager and Manager command</web-resource-name>
      <url-pattern>/jmxproxy/*</url-pattern>
      <url-pattern>/html/*</url-pattern>
      <url-pattern>/list</url-pattern>
      <url-pattern>/expire</url-pattern>
      <url-pattern>/sessions</url-pattern>
      <url-pattern>/start</url-pattern>
      <url-pattern>/stop</url-pattern>
      <url-pattern>/install</url-pattern>
      <url-pattern>/remove</url-pattern>
      <url-pattern>/deploy</url-pattern>
      <url-pattern>/undeploy</url-pattern>
      <url-pattern>/reload</url-pattern>
      <url-pattern>/save</url-pattern>
      <url-pattern>/serverinfo</url-pattern>
      <url-pattern>/status/*</url-pattern>
      <url-pattern>/roles</url-pattern>
      <url-pattern>/resources</url-pattern>
      <url-pattern>/findleaks</url-pattern>
    </web-resource-collection>
    <auth-constraint>
       <!-- NOTE:  This role is not present in the default users file -->
       <role-name>manager</role-name>
    </auth-constraint>
  </security-constraint>

  <!-- Define the Login Configuration for this Application -->
  <login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>Tomcat Manager Application</realm-name>
  </login-config>

  <!-- Security roles referenced by this web application -->
  <security-role>
    <description>
      The role that is required to log in to the Manager Application
    </description>
    <role-name>manager</role-name>
  </security-role>


Dans le cadre de l'application host-manager, le fichier web.xml contient la description des restrictions suivantes, entraînant la nécessité de créer le rôle admin:

  <!-- Define a Security Constraint on this Application -->
  <security-constraint>
    <web-resource-collection>
      <web-resource-name>HTMLHostManager and HostManager commands</web-resource-name>
      <url-pattern>/html/*</url-pattern>
      <url-pattern>/list</url-pattern>
      <url-pattern>/add</url-pattern>
      <url-pattern>/remove</url-pattern>
      <url-pattern>/start</url-pattern>
      <url-pattern>/stop</url-pattern>
    </web-resource-collection>
    <auth-constraint>
       <!-- NOTE:  This role is not present in the default users file -->
       <role-name>admin</role-name>
    </auth-constraint>
  </security-constraint>

  <!-- Define the Login Configuration for this Application -->
  <login-config>
    <auth-method>BASIC</auth-method>
    <realm-name>Tomcat Host Manager Application</realm-name>
  </login-config>

  <!-- Security roles referenced by this web application -->
  <security-role>
    <description>
      The role that is required to log in to the Manager Application
    </description>
    <role-name>admin</role-name>
  </security-role>

User-group-icon.png Création des rôles

La création de ces rôles s'effectuent dans le fichier tomcat-users.xml, dans le répertoire /usr/share/tomcat6, dans lequel il faut déclarer les deux rôles et créer un ou plusieurs comptes avec les rôles adéquats. Dans cet exemple, l'utilisateur manager est créé avec les deux rôles affectés:

<!--
  <role rolename="tomcat"/>
  <role rolename="role1"/>
  <user username="tomcat" password="tomcat" roles="tomcat"/>
  <user username="both" password="tomcat" roles="tomcat,role1"/>
  <user username="role1" password="tomcat" roles="role1"/>
-->
  <role rolename="manager"/>
  <role rolename="admin"/>
  <user username="manager" password="Manager Password" roles="manager,admin"/>

Où il faut remplacer Manager Password par le mot de passe du compte manager.