Apache Tomcat (anteriormente conocido como Apache Jakarta Tomcat) es una implementación de código abierto de las tecnologías Java Servlet y JavaServer Pages.
Aquí veremos cómo instalar Apache Tomcat en Debian 11.
Instalar Java
Tomcat requiere Java JRE en el sistema. Puede instalar Oracle JDK u OpenJDK.
Para esta demostración, utilizaremos OpenJDK.
sudo apt install -y openjdk-11-jdk-jre
Una vez que Java esté instalado, puede verificar la versión de Java usando el siguiente comando.
java -version
Salida:
openjdk version "11.0.7" 2020-04-14 OpenJDK Runtime Environment (build 11.0.7+10-post-Ubuntu-3ubuntu1) OpenJDK 64-Bit Server VM (build 11.0.7+10-post-Ubuntu-3ubuntu1, mixed mode)
Crear cuenta de servicio de Tomcat
Como práctica recomendada, nunca se debe ejecutar Tomcat como un usuario privilegiado (raíz). Por lo tanto, cree un usuario normal para ejecutar el servicio Tomcat.
sudo groupadd tomcat sudo mkdir /opt/tomcat sudo useradd -g tomcat -d /opt/tomcat -s /usr/sbin/nologin tomcat
Descarga Apache Tomcat
Puede descargar el paquete Apache Tomcat desde el sitio web oficial.
O
En la terminal, usa el wget
Comando para descargar Apache Tomcat.
### Apache Tomcat 10.x wget https://downloads.apache.org/tomcat/tomcat-10/v10.0.10/bin/apache-tomcat-10.0.10.tar.gz ### Apache Tomcat 9.x wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.52/bin/apache-tomcat-9.0.52.tar.gz ### Apache Tomcat 8.5.x wget https://dlcdn.apache.org/tomcat/tomcat-8/v8.5.70/bin/apache-tomcat-8.5.70.tar.gz
Extraiga el tomcat en el directorio deseado (/opt/tomcat).
sudo tar -zxvf apache-tomcat-*.tar.gz sudo mv apache-tomcat-*/* /opt/tomcat/
Cambie la propiedad del directorio para permitir que el usuario de tomcat escriba archivos en él.
sudo chown -R tomcat:tomcat /opt/tomcat/
Configurar Apache Tomcat
Aquí, usamos systemd para iniciar el servicio Tomcat. El archivo de servicio systemd de Tomcat requiere la ubicación de Java. Por lo tanto, ejecute el siguiente comando para enumerar las versiones de Java disponibles en su sistema.
sudo update-java-alternatives -l
Salida:
java-1.11.0-openjdk-amd64 1111 /usr/lib/jvm/java-1.11.0-openjdk-amd64
En este momento, tengo Java 11 en mi sistema.
Cree un archivo de servicio systemd de tomcat. Los verdes dependen del entorno, así que cámbielos en consecuencia.
sudo nano /etc/systemd/system/tomcat.service
Agregue la siguiente información al archivo de servicio systemd de Tomcat.
[Unit] Description=Apache Tomcat 9.x Web Application Container Wants=network.target 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_OPTS=-Xms512M -Xmx1G -Djava.net.preferIPv4Stack=true' Environment='JAVA_OPTS=-Djava.awt.headless=true' ExecStart=/opt/tomcat/bin/startup.sh ExecStop=/opt/tomcat/bin/shutdown.sh SuccessExitStatus=143 User=tomcat Group=tomcat UMask=0007 RestartSec=10 Restart=always [Install] WantedBy=multi-user.target
Vuelva a cargar el demonio systemd.
sudo systemctl daemon-reload
Administrar el servicio Apache Tomcat
Para iniciar el servicio Tomcat; ejecutar:
sudo systemctl start tomcat
Compruebe el estado de Tomcat, ejecute:
sudo systemctl status tomcat
Habilite el inicio automático del servicio Tomcat en el arranque del sistema:
sudo systemctl enable tomcat
De forma predeterminada, Apache Tomcat se ejecuta en el puerto 8080. Utilice el comando netstat para verificar el estado de escucha del servicio Tomcat.
sudo netstat -antup | grep 8080
Salida:
tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 1611/java
LEER: Comando netstat no encontrado en Ubuntu – Solución rápida
Configurar la interfaz de usuario web de Apache Tomcat
Tomcat viene con el administrador web y el administrador de host para administrar Tomcat. Tanto Host Manager como Web Manager están protegidos con contraseña.
Para acceder al administrador de aplicaciones web y al administrador de host, crearemos un usuario con las funciones de administrador-gui y administrador-gui.
Edite el archivo tomcat-users.xml para agregar los roles.
sudo nano /opt/tomcat/conf/tomcat-users.xml
Agregue las siguientes líneas (función y definición de usuario) justo antes de la última línea.
rolename="admin-gui,manager-gui"/> <user username="admin" password="password" roles="manager-gui,admin-gui"/>
Por razones de seguridad, solo se puede acceder a Web Manager y Host Manager desde el host local, es decir, desde el propio servidor.
Para acceder a administradores web y host desde sistemas externos, debe agregar la red de origen a la lista de permitidos.
Para ello, edite los dos archivos siguientes.
sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml
Actualice la siguiente línea en ambos archivos con la IP/red de origen desde la que accede a la web y al Administrador de host.
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|.*" />
.* permitirá que todas las redes tengan acceso a ambos administradores.
O
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.0.*" />
También puede permitir solo parte de su red. Por ejemplo:para permitir solo la red 192.168.0.0/24, puede usar la anterior.
Reinicie el servicio Tomcat.
sudo systemctl restart tomcat
Acceder a Apache Tomcat
Abra un navegador y vaya a la siguiente URL.
http://ip.add.re.ss:8080Obtendrá la página predeterminada de Apache Tomcat, y esto confirma que Apache Tomcat se instaló correctamente.

Administrador de aplicaciones web
Haga clic en la aplicación de administrador para acceder a Web Manager (se requiere inicio de sesión):Nombre de usuario :administrador , Contraseña :contraseña.
Con el administrador web, puede implementar una nueva aplicación, implementar una aplicación en un contexto específico, iniciar, detener, recargar y anular la implementación de una aplicación.

Estado del servidor
Además, puede comprobar el estado del servidor Tomcat.

Administrador de alojamiento virtual
Haga clic en Administrador de host para acceder al administrador de host de Tomcat (se requiere inicio de sesión):Nombre de usuario :administrador , Contraseña :contraseña.
Aquí puede administrar hosts virtuales.

Conclusión
Eso es todo. Espero que haya aprendido a instalar Apache Tomcat en Debian 11. El sistema ahora está listo para implementar su primera aplicación web. Como recomendación de seguridad, considere implementar SSL/TLS para Tomcat