Cómo instalar Tomcat en Fedora 32

En este artículo veremos cómo instalar Tomcat en Fedora 32 paso a paso, de modo que puedas desplegar aplicaciones de servidor basadas en Java, los conocidos servlets, desde tu servidor o VPS Fedora.

Antes de instalar Tomcat en Fedora 32

Para completar esta guía de instalación de Tomcat en Fedora 32 sólo necesitas partir de la siguiente base:

  • Un sistema Fedora 32 actualizado.
  • Un usuario con permisos de sudo o el mismo root.
  • Acceso a Internet.

Tomcat requiere la presencia en Fedora 32 del entorno de ejecución de Java por lo que si no está instalado, descargará e instalará la versión OpenJDK 8.

Cómo instalar Tomcat en Fedora 32

Vamos a instalar Tomcat en Fedora 32 desde los repositorios de la distribución, por lo que el paso inicial será actualizar la información de dichos repositorios y los paquetes disponibles:

~$ sudo yum update

E instalamos los paquetes necesarios:

~$ sudo yum install -y tomcat tomcat-admin-webapps tomcat-docs-webapp tomcat-webapps

Una vez descargados e instalados Tomcat y sus dependencias se crea en Fedora 32 un nuevo servicio, el servicio tomcat.service o tomcat (si prefieres el nombre corto), que no queda en ejecución ni habilitado para su inicio automático.

Para iniciar por primera vez Tomcat en Fedora 32 usaremos el comando systemctl:

~$ sudo systemctl start tomcat

Podremos comprobar el estado del servicio Tomcat con el comando systemctl status tomcat:

como instalar tomcat en fedora 32

Comprobaremos que el servicio está en ejecución. Para que Tomcat inicie automáticamente con cada arranque de Fedora 32, será necesario también habilitar el servicio:

~$ sudo systemctl enable tomcat

Cómo configurar Tomcat en Fedora 32

A continuación veremos cómo configurar Tomcat en Fedora 32 a través de los ajustes más habituales a la hora de instalar este servicio.

Cómo cambiar el puerto por defecto de Tomcat en Fedora 32

Por defecto Tomcat atiende peticiones en el puerto 8080, que es un puerto bastante usado por otras aplicaciones, como servicios proxy, por ejemplo. Podría ocurrir que ya existiese un servicio en Fedora 32 utilizando el puerto 8080, así que puede ser interesante modificar el puerto de escucha de Tomcat, para lo que editaremos el archivo server.xml:

~$ sudo nano /etc/tomcat/server.xml

Buscaremos el siguiente bloque de configuración:

<Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

Bastará con sustituir el valor 8080 por el número de un puerto libre que queramos utilizar:

<Connector port="XXXX" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />

Guardados los cambios, habrá que reiniciar el servicio para aplicarlos:

~$ sudo systemctl restart tomcat

En este tutorial asumiremos el valor por defecto de Tomcat para el puerto de conexión.

Cómo acceder a las aplicaciones administrativas en red

Si deseas administrar Tomcat de forma remota a través de las aplicaciones administrativas será necesario configurarlas para permitir el acceso, ya que por defecto estas aplicaciones sólo permiten acceso local.

La configuración de acceso es propia de cada aplicación, por lo que debemos editar los archivos correspondientes de cada una de ellas.

Para la aplicación manager, o gestor de aplicaciones, editaremos su archivo context.xml:

~$ sudo nano /usr/share/tomcat/webapps/manager/META-INF/context.xml

Buscaremos el siguiente bloque:

...
 <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
...

Y lo desactivaremos encerrándolo entre comentarios XML:

...
<!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->
...

Terminados los cambios, guardamos y cerramos el archivo.

Para la aplicación host-manager, o gestor de servidores virtuales, habrá que hacer lo propio con su respectivo archivo context.xml:

~$ sudo nano /usr/share/tomcat/webapps/host-manager/META-INF/context.xml

El cambio será el mismo.

Cómo crear usuarios en Tomcat

Algunas aplicaciones, como es el caso de las aplicaciones administrativas, requieren autenticación de usuarios. Por defecto Tomcat no incluye usuarios para sus aplicaciones administrativas, así que los crearemos editando el archivo tomcat-users.xml:

~$ sudo nano /etc/tomcat/tomcat-users.xml

Necesitamos un usuario con el rol admin-gui para la aplicación host-manager y otro usuario con el rol manager-gui para la aplicación manager. Como un usuario puede ostentar varios roles, lo que haremos será crear un único usuario con ambos roles para acceder a ambas aplicaciones.

Al final del archivo, antes de la etiqueta de cierre, añadiremos una línea similar a esta:

...
        <user name="chacho" password="XXXXXXXX" roles="admin-gui,manager-gui"/>
</tomcat-users>

Hay que indicar una contraseña, y es buena idea usar algún nombre de usuario distinto de admin.

Cómo configurar el firewall de Fedora 32 para Tomcat

Si quieres que Tomcat pueda servir contenido a dispositivos y sistemas en red, será necesario configurar el firewall de Fedora 32, que suele estar activado por defecto. Para ello, añadiremos una nueva regla indicando el puerto de conexión de Tomcat:

~$ sudo firewall-cmd --permanent --add-port=8080/tcp

Habrá que recargar la configuración del firewall para aplicar los cambios:

~$ sudo firewall-cmd --reload

Cómo acceder a Tomcat en Fedora 32

Para acceder a Tomcat en Fedora 32 desde un navegador, junto a la dirección IP o nombre DNS del servidor indicaremos el puerto de conexión, el 8080 en el caso del puerto por defecto.

Por ejemplo, la máquina Fedora 32 sobre la que hemos realizado esta guía es accesible en el subdominio fedora32.local.lan, por lo que al no haber modificado el puerto de conexión podemos emplear http://fedora32.local.lan:8080 como URL de acceso:

instalar tomcat en fedora 32

La página de inicio de Tomcat nos mostrará enlaces a la aplicación de documentación local, la aplicación docs:

instalacion de tomcat en fedora 32

Este es un ejemplo de aplicación a la cual se puede acceder sin necesidad de autenticación ni de modificar su configuración de acceso.

En la página inicial de Tomcat disponemos también de enlaces a las aplicaciones administrativas, como la aplicación «Server Status» (que forma parte de la aplicación manager):

como instalar y configurar tomcat en fedora 32

En este caso se nos solicitará usuario y contraseña para poder autenticarnos. Debemos suministrar las credenciales del usuario que creamos en pasos anteriores.

instalar y configurar tomcat en fedora 32

Desde la página inicial también podemos acceder al gestor de aplicaciones, desde el enlace «Manager App«:

como configurar tomcat en fedora 32

En este caso no se nos ha solicitado contraseña porque el gestor de aplicaciones (manager/html) también forma parte de la aplicación manager.

Finalmente, otra aplicación a la que podremos acceder desde la página inicial es el gestor de máquinas virtuales, accesible en el enlace «Host Manager«, que al tratarse de una aplicación distinta (host-manager), requerirá autenticación.

configurar tomcat en fedora 32

Cómo desplegar aplicaciones en Tomcat

Para desplegar aplicaciones en Tomcat a partir de archivos WAR accederemos al gestor de aplicaciones web, nos desplazaremos a la sección «Desplegar» y en «Archivo WAR a desplegar» utilizaremos el botón de selección de archivo para localizar el archivo .war correspondiente:

Hecho esto, usaremos el botón «Desplegar«, con lo que se realizará la carga del archivo y en unos instantes regresaremos al gestor de aplicaciones, donde un mensaje nos informará del resultado de la operación y, si todo ha ido bien, se mostrará la aplicación en la lista:

La aplicación aparece en la lista con los controles de administración y un enlace desde el que la podemos visitar para comprobar su funcionamiento:

Cómo cambiar el tamaño límite de archivo

Es posible que el tamaño de archivo .war de alguna aplicación exceda el valor máximo por defecto del gestor de aplicaciones, fijado en 50 MB. Para ampliarlo editaremos el archivo web.xml de la aplicación manager:

~$ sudo nano /usr/share/tomcat/webapps/manager/WEB-INF/web.xml

Buscaremos este fragmento de la configuración:

...
    <multipart-config>
      <!-- 50MB max -->
      <max-file-size>52428800</max-file-size>
      <max-request-size>52428800</max-request-size>
      <file-size-threshold>0</file-size-threshold>
    </multipart-config>
...

El valor está expresado en bytes, así que si especificamos un nuevo valor, por ejemplo 200 MB, lo calcularemos también en bytes:

...
    <multipart-config>
      <!-- 200MB max -->
      <max-file-size>209715200</max-file-size>
      <max-request-size>209715200</max-request-size>
      <file-size-threshold>0</file-size-threshold>
    </multipart-config>
...

Guardados los cambios, la configuración hará efecto de inmediato.

Conclusión

Ahora que sabes cómo instalar y configurar Tomcat en Fedora 32 ya puedes desplegar aplicaciones Java de servidor, o servlets, desde tu sistema.

Si tienes preguntas, dudas, sugerencias de mejora del artículo, notificaciones de errores o crees que sería necesaria una actualización, puedes dejar un comentario.

¡Apoya en comoinstalar.me!

¿Ya puedes desplegar servlets gracias a nuestra guía de instalación y configuración de Tomcat en Fedora 32? Si es así y quieres agradecérnoslo, puedes contribuir al mantenimiento de este sitio y la creación de nuevos artículos sobre temas como Fedora 32 y Tomcat invitándonos a un café:

 

O también puedes dejar 1 $ de propina a través de PayPal:

¡Gracias!

Valora esta entrada

1 estrella2 estrellas3 estrellas4 estrellas5 estrellas (1 votos, promedio: 5,00 de 5)
Cargando...

Deja un comentario

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies.

ACEPTAR
Aviso de cookies