Apache Tomcat (también conocido como Tomcat Server) es un contenedor de servlet Java de código abierto desarrollado por Apache Software Foundation.
Tomcat implementa Java Servlet, JavaServer Pages (JSP), Java EL y WebSocket, y proporciona un entorno de servidor web HTTP "Java puro" para ejecutar códigos Java.
Aquí está la publicación sobre cómo instalar Apache Tomcat en Ubuntu 20.04 / Ubuntu 18.04.
Requisitos
Actualice el índice del repositorio.
sudo apt update
Instalar Java
Tomcat requiere que Java JDK esté instalado en la máquina. Puede instalar Oracle JDK u OpenJDK.
Para esta demostración, usaré OpenJDK.
sudo apt install -y openjdk-11-jdk
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)
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 con privilegios bajos para ejecutar el servicio Tomcat.
sudo groupadd tomcat sudo mkdir /opt/tomcat sudo useradd -g tomcat -d /opt/tomcat -s /usr/sbin/nologin tomcat
Descargar Tomcat
Puede descargar el paquete Apache Tomcat desde el sitio web oficial.
O
En la terminal usa el curl
Comando para descargar Apache Tomcat.
### Apache Tomcat 10.x curl https://downloads.apache.org/tomcat/tomcat-10/v10.0.4/bin/apache-tomcat-10.0.4.tar.gz -o apache-tomcat-10.0.4.tar.gz ### Apache Tomcat 9.x curl https://downloads.apache.org/tomcat/tomcat-9/v9.0.44/bin/apache-tomcat-9.0.44.tar.gz -o apache-tomcat-9.0.44.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 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-amd6
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
Iniciar 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 el Host Manager como el Web Manager están protegidos con contraseña y se requiere un nombre de usuario y una contraseña para acceder.
Cree un usuario con los roles manager-gui y admin-gui para tener acceso al administrador de aplicaciones web y al administrador de host respectivamente. Estos dos roles se definen en el archivo tomcat-users.xml.
sudo nano /opt/tomcat/conf/tomcat-users.xml
Coloque las dos líneas siguientes (función y definición de usuario) justo encima 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 los administradores web y de host desde el sistema remoto, deberá agregar su red de origen en 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 los archivos anteriores con la IP de origen desde la que accede a la web y al Administrador de alojamiento.
.* permitirá que todas las redes tengan acceso a ambos administradores.
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|.*" />
O
También puede permitir solo parte de su red. Por ejemplo:para permitir solo la red 192.168.0.0/24, puede usar los valores a continuación.
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.0.*" />
Reinicie el servicio Tomcat.
sudo systemctl restart tomcat
Acceder a Tomcat
Abra un navegador y vaya a la siguiente URL.
http://ip.add.re.ss:8080Obtendrá la página predeterminada de Tomcat, y esto confirma que Apache Tomcat se instaló correctamente.
Haga clic en la aplicación Manager 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.
Además, puede comprobar el estado del servidor.
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 de Tomcat.
Conclusión
Eso es todo. Espero que hayas aprendido a instalar Apache Tomcat en Ubuntu 20.04/Ubuntu 18.04. Ahora está listo para su primera aplicación web. Como recomendación de seguridad, considere implementar SSL/TLS para Tomcat