Ayúdanos a seguir proporcionándote tutoriales gratuitos y de calidad desactivando tu bloqueador de anuncios. suscriptores a nuestro sitio.
Tabla de contenidos

Cómo instalar Apache Tomcat 9 en Debian 10

27 feb 2021 6 min di lettura
Cómo instalar Apache Tomcat 9 en Debian 10

Introducción

Apache Tomcat es un "contenedor" web que le permite servir aplicaciones web Java Servlets y Java Server Pages (JSP).

Si su intención es instalar Apache Tomcat en un servidor Debian 10 de forma remota, siga leyendo; de lo contrario, si desea instalar Apache Tomcat en su computadora local, omita el primer párrafo "Conexión al servidor" y lea el siguiente.

Conexión al servidor

Para acceder al servidor, necesita conocer la dirección IP. También necesitará su nombre de usuario y contraseña para la autenticación. Para conectarse al servidor como root, escriba el siguiente comando:

ssh [email protected]_DEL_SERVER

A continuación, deberá ingresar la contraseña del usuario root.

Si no está utilizando el usuario root, puede iniciar sesión con otro nombre de usuario utilizando el mismo comando, luego cambie root a su nombre de usuario:

ssh [email protected]_DEL_SERVER

Luego se le pedirá que ingrese su contraseña de usuario.

El puerto estándar para conectarse a través de ssh es 22, si su servidor usa un puerto diferente, deberá especificarlo usando el parámetro -p, luego escriba el siguiente comando:

ssh [email protected]_DEL_SERVER -p PORTA

Instalar Java

Tomcat requiere que Java esté instalado en el servidor. Podemos instalar OpenJDK con apt-get.

Primero, actualice el índice del paquete apt-get:

sudo apt-get update

Luego instale el paquete del kit de desarrollo de Java con apt-get:

sudo apt-get install default-jdk

Ahora que Java está instalado, podemos crear un usuario de Tomcat, que se utilizará para ejecutar Tomcat.

Crear usuario de Tomcat

Por razones de seguridad, Tomcat debe ejecutarse como un usuario sin privilegios (es decir, no root). Crearemos un nuevo usuario y grupo que ejecutará el servicio Tomcat.

Primero, cree un nuevo grupo de tomcat:

sudo groupadd tomcat

Creemos un nuevo usuario miembro del grupo tomcat, con un directorio de inicio de /opt /tomcat (donde instalaremos Tomcat) y con shell /bin /false (para que nadie pueda acceder a la cuenta):

sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat

Ahora que nuestro usuario de Tomcat está configurado, descarguemos e instalemos Tomcat.

Instalar Tomcat

La mejor forma de instalar Tomcat 9 es descargar la última versión binaria y configurarla manualmente.

Encuentre la última versión de Tomcat 9 en la página de descarga de Tomcat 9. Actualmente, la última versión es 9.0.7. En la sección Distribuciones binarias, luego en la lista Núcleo, copie el enlace a tar.gz.

Luego, cambie al directorio /tmp en su servidor. Este es un buen directorio para descargar elementos temporales, como el tarball de Tomcat, que no necesitaremos después de extraer el contenido de Tomcat:

cd /tmp

Usamos curl para descargar Tomcat desde el enlace copiado del sitio web de Tomcat:

Si curl no está instalado, ejecute este comando de terminal:

sudo apt-get install curl

Entonces para descargar Tomcat:

curl -O http://apache.panu.it/tomcat/tomcat-9/v9.0.22/bin/apache-tomcat-9.0.22.tar.gz

Instalaremos Tomcat en el directorio /opt /tomcat. Cree el directorio y extraiga el archivo con estos comandos:

sudo mkdir /opt/tomcat
sudo tar xzvf apache-tomcat-9.0.22.tar.gz -C /opt/tomcat --strip-components=1

A continuación, podemos establecer los permisos de usuario adecuados para nuestra instalación.

Establecer permisos

El usuario de Tomcat que hemos configurado debe tener acceso a la instalación de Tomcat.

Vayamos al directorio donde descomprimimos la instalación de Tomcat:

cd /opt/tomcat

Asignamos la propiedad del grupo tomcat a todo el directorio de instalación:

sudo chgrp -R tomcat /opt/tomcat

A continuación, le damos al grupo tomcat acceso de lectura al directorio conf y todo su contenido, y accedemos al directorio en sí:

sudo chmod -R g+r conf
sudo chmod g+x conf

Hagamos que el usuario de tomcat sea el propietario de los directorios webapps, work, temp y logs:

sudo chown -R tomcat webapps/work/temp/logs/

A continuación, puede utilizar el usuario root para cargar archivos .war a la carpeta de aplicaciones web de tomact. O asigne su usuario con privilegios sudo al grupo tomcat, de la siguiente manera:

sudo usermod -a -G tomcat nome_utente

Cambie los permisos de la carpeta webapps para cargar el archivo.war con su usuario:

sudo chmod 770 /opt/tomcat/webapps

Ahora puede cargar los archivos afectados a la carpeta de aplicaciones web.

En producción, se recomienda restaurar los permisos de la carpeta:

sudo chmod 750 /opt/tomcat/webapps

Ahora que se han establecido los permisos adecuados, podemos crear un archivo de servicio systemd para administrar el proceso de Tomcat.

Servicio Systemd

Queremos ejecutar Tomcat como un servicio, por lo que configuraremos el archivo de servicio systemd.

Tomcat necesita saber dónde está instalado Java. Esta ruta se conoce comúnmente como JAVA_HOME. La forma más sencilla de buscar la ruta correcta es ejecutando este comando:

sudo update-java-alternatives -l
Output
 java-1.11.0-openjdk-amd64 1111 /usr/lib/jvm/java-1.11.0-openjdk-amd64

La variable JAVA_HOME correcta se puede construir tomando el resultado de la columna de la derecha y agregando /jre al final. Dado el ejemplo anterior, el JAVA_HOME correcto para este servidor sería:

JAVA_HOME
 /usr/lib/jvm/java-1.11.0-openjdk-amd64

Tu JAVA_HOME puede ser diferente.

Con esta información, podemos crear el archivo de servicio systemd. Abra un archivo llamado tomcat.service en el directorio /etc /systemd /system escribiendo:

sudo nano /etc/systemd/system/tomcat.service

Pegue el siguiente contenido en el archivo. Cambie el valor de JAVA_HOME si es necesario para que coincida con el valor encontrado en el sistema:

[Unit]
 Description=Apache Tomcat Web Application Container
 After=network.target

 [Service]
 Type=forking

 Environment=JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64
 Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
 Environment=CATALINA_HOME=/opt/tomcat
 Environment=CATALINA_BASE=/opt/tomcat
 Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC'
 Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom'

 ExecStart=/opt/tomcat/bin/startup.sh
 ExecStop=/opt/tomcat/bin/shutdown.sh

 User=tomcat
 Group=tomcat
 UMask=0007
 RestartSec=10
 Restart=always

 [Install]
 WantedBy=multi-user.target

Guardemos y cerremos el archivo.

Vuelva a cargar el demonio systemd:

sudo systemctl daemon-reload

Inicie el servicio Tomcat escribiendo:

sudo systemctl start tomcat

Compruebe si hay errores:

sudo systemctl status tomcat

Gato

Ahora que se inició el servicio Tomcat, asegurémonos de que la página predeterminada esté disponible.

Abrir en navegador web

http://TUO_IP:8080

Para iniciar Tomcat automáticamente cuando se inicia el servidor, proporcione este comando:

sudo systemctl enable tomcat

Verá la página de inicio predeterminada de Tomcat. Si intentamos ingresar en algunos enlaces de la aplicación de administración, se denegará el acceso. Configuramos los parámetros de acceso en el siguiente paso.

Gestión de Tomcat

Para utilizar la aplicación de administrador web que viene con Tomcat, debe agregar un inicio de sesión a nuestro servidor Tomcat. Haremos esto editando el archivo tomcat-users.xml:

sudo nano /opt/tomcat/conf/tomcat-users.xml

Deberá agregar un usuario que pueda acceder a manager-gui y admin-gui (aplicaciones web que vienen con Tomcat). Puede hacer esto definiendo un usuario, similar al siguiente ejemplo. Asegúrese de cambiar su nombre de usuario y contraseña por algo seguro:

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

Guarde y cierre el archivo.

De forma predeterminada, las versiones más recientes de Tomcat limitan el acceso a las aplicaciones Manager y Host Manager a las conexiones desde el propio servidor. Dado que estamos instalando en una máquina remota, probablemente querrá eliminar o cambiar esta restricción. Para cambiar las restricciones de la dirección IP, abra el archivo context.xml apropiado.

Para la aplicación Manager, escriba:

sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml

Para la aplicación Host Manager, escriba:

sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml

Dentro del archivo, comente la restricción de la dirección IP para permitir conexiones desde cualquier lugar. Alternativamente, si solo desea permitir el acceso a conexiones desde su propia dirección IP, puede agregar la dirección IP pública a la lista:

<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" />-->
 </Context>

Guarde y cierre el archivo.

Para que nuestros cambios surtan efecto, reinicie el servicio Tomcat:

sudo systemctl restart tomcat

interfaz web

Ahora que hemos creado un usuario, podemos acceder de nuevo a la interfaz de gestión web. Nuevamente, puede acceder a la interfaz ingresando el nombre de dominio o la dirección IP del servidor seguido del puerto 8080 en el navegador:

Abrir en el navegador web:

http://TUO_IP:8080

Se puede acceder a la aplicación Manager en la siguiente dirección:

http://TUO_IP:8080/manager/html

Deberá ingresar las credenciales de la cuenta que agregó anteriormente al archivo tomcat-users.xml.

El Administrador de aplicaciones web se utiliza para administrar sus aplicaciones Java.

Se puede acceder al Administrador de host en la siguiente dirección:

http://TUO_IP:8080/host-manager/html/

La instalación de Apache Tomcat 9 en Debian 10 ha finalizado.

Apóyenos si le gusta nuestro contenido. Gracias.

Buy me a coffeeBuy me a coffee

Únase a la conversación

Apóyenos con una donación.

Genial! A continuación, complete el pago para obtener acceso completo a Noviello.it.
Bienvenido de nuevo! Has iniciado sesión correctamente.
Te has suscrito correctamente a Noviello.it.
Éxito! Su cuenta está completamente activada, ahora tiene acceso a todo el contenido.
Éxito! Su información de facturación ha sido actualizada.
Su facturación no se actualizó.