Tomcat, a menudo llamado Apache Tomcat, es una de las aplicaciones más populares diseñadas para ejecutar un servlet Java y renderizar servidores web con codificación de páginas Java.
Es una aplicación de código abierto lanzada por Apache Software Foundation. ¡Es el favorito de muchos desarrolladores! Es por eso que en este tutorial, le mostraremos cómo instalar Tomcat en Ubuntu 18.04 y configurarlo para usarlo en su VPS.
Tomcat genera archivos JSP (páginas web generadas por el servidor similares a los archivos PHP y ASP) en código Java, compilándolos aún más en .class archivos por el servidor y ejecutados por la máquina virtual Java. A día de hoy, Tomcat es definitivamente uno de los contenedores de servlets más utilizables disponibles.
Beneficios de Apache Tomcat
- Tomcat es una forma rápida y fácil de ejecutar sus aplicaciones en Ubuntu. Proporciona una carga rápida y ayuda a ejecutar un servidor de manera más eficiente
- Tomcat contiene un conjunto completo de opciones de personalización integradas que permiten a los usuarios trabajar con flexibilidad
- Tomcat es una aplicación gratuita de código abierto. Ofrece una gran personalización a través del acceso al código
- Tomcat ofrece a sus usuarios un nivel extra de seguridad
- Gracias a su estabilidad, incluso si tiene problemas con Tomcat, no detiene el funcionamiento del resto del servidor
Cómo instalar Tomcat en Ubuntu
Este tutorial le enseñará cómo instalar Tomcat 9 en Ubuntu 18.04 y cómo configurarlo para su uso. El mismo tutorial se aplica a Ubuntu 16.04 y otras distribuciones basadas en Ubuntu.
Antes de comenzar con la guía, tenga un usuario no root con privilegios sudo configurado en su servidor. Recuerda acceder a tu servidor con SSH. Consulte nuestro tutorial de PuTTY si tiene problemas.
Paso 1:Instalar Java
Antes de instalar Tomcat en Ubuntu, debemos instalar Java para ejecutar el código de la aplicación web de Java. OpenJDK es el desarrollo de Java predeterminado en Ubuntu 18.04. La instalación de Java es simple y rápida. Simplemente siga los siguientes comandos:
sudo apt update
Instale el paquete OpenJDK ejecutando:
sudo apt install default–jdk
Ahora que JDK está instalado en su sistema, puede crear el usuario tomcat siguiendo el siguiente paso.
Paso 2:Crear usuario de Tomcat
Por seguridad, no debe usar Tomcat sin un usuario único. Esto facilitará la instalación de Tomcat en Ubuntu. Cree un nuevo grupo Tomcat que ejecutará el servicio:
sudo groupadd tomcat
Ahora, el siguiente procedimiento es crear un nuevo usuario de tomcat. Cree usuarios miembros del grupo Tomcat con un directorio de inicio opt/tomcat para ejecutar el servicio Tomcat:
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
Paso 3:Instalar Tomcat en Ubuntu
La mejor manera de instalar Tomcat 9 en Ubuntu es descargar la última versión binaria de la página de descargas de Tomcat 9 y configurarla manualmente. Si la versión no es 9.0.60 o es la última versión, siga la última versión estable. Simplemente copie el enlace del archivo central tar.gz en la sección Distribuciones binarias.
Ahora, cambia a /tmp directorio en su servidor para descargar los elementos que no necesitará después de extraer el contenido de Tomcat:
cd /tmp
Para descargar desde el enlace copiado (desde el sitio web de Tomcat), use el siguiente comando curl:
curl -O https://www-us.apache.org/dist/tomcat/tomcat-9/v9.0.60/bin/apache-tomcat-9.0.60.tar.gz
Paso 4:Actualizar permisos
Ahora que finalizó la instalación de Tomcat en Ubuntu, debe configurar el usuario de Tomcat para tener acceso completo a la instalación de Tomcat. Este usuario necesita tener acceso al directorio. Siga los pasos a continuación:
sudo mkdir /opt/tomcat
cd /opt/tomcat
sudo tar xzvf /tmp/apache-tomcat-9.0.*tar.gz -C /opt/tomcat --strip-components=1
Ahora, asigne al grupo Tomcat la propiedad de todo el directorio de instalación con el comando chgrp:
sudo chgrp -R tomcat /opt/tomcat
A continuación, debe otorgar al usuario de Tomcat acceso al directorio conf para ver su contenido y ejecutar el acceso al directorio en sí:
sudo chmod -R g+r conf
sudo chmod g+x conf
Haga que el usuario de Tomcat sea el propietario de los directorios de aplicaciones web, trabajo, temperatura y registros:
sudo chown -R tomcat webapps/ work/ temp/ logs/
Paso 5:Crear un archivo de unidad systemd
Tendremos que crear un nuevo archivo de unidad para ejecutar Tomcat como un servicio. Abra su editor de texto y cree un nombre de archivo tomcat.service en /etc/systemd/system/ :
sudo nano /etc/systemd/system/tomcat.service
A continuación, pegue la siguiente configuración:
[Unit] Description=Apache Tomcat Web Application Container After=network.target [Service] Type=forking Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-amd64/jre 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.awt.headless=true -Djava.security.egd=file:/dev/v/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
Guarde y cierre el archivo después de terminar los comandos anteriores.
A continuación, notifique al sistema que ha creado un nuevo archivo emitiendo el siguiente comando en la línea de comando:
sudo systemctl daemon-reload
Los siguientes comandos le permitirán ejecutar el servicio Tomcat:
cd /opt/tomcat/bin
sudo ./startup.sh run
Paso 6:Ajuste el cortafuegos
Es fundamental ajustar el firewall para que las solicitudes lleguen al servicio. Tomcat usa el puerto 8080 para aceptar solicitudes convencionales. Permita el tráfico a ese puerto mediante UFW:
sudo ufw allow 8080
Siga el comando a continuación para acceder a la página de inicio yendo a su dominio o dirección IP seguido de:8080 en un navegador web:http://IP:8080
Paso 7:Configure la interfaz de administración web de Tomcat
Siga el comando a continuación para agregar un inicio de sesión a su usuario de Tomcat y edite el tomcat-users.xml archivo:
sudo nano /opt/tomcat/conf/tomcat-users.xml
Ahora, defina el usuario que puede acceder a los archivos y agregue el nombre de usuario y las contraseñas:
tomcat-users.xml — Admin User <tomcat-users . . .> <tomcat-users . . .> <user username="admin" password="password" roles="manager-gui,admin-gui"/> </tomcat-users>
Para la aplicación Administrador, 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
Para reiniciar el servicio Tomcat y ver los efectos:
sudo systemctl restart tomcat
Paso 8:Acceda a la interfaz en línea
Ahora que ya tiene un usuario, puede acceder a la interfaz de administración web en un navegador. Una vez más, puede acceder a la interfaz proporcionando el nombre de dominio o la dirección IP de su servidor seguido del puerto 8080 en su navegador:http://server_domain_or_IP:8080
Echemos un vistazo a la aplicación Manager, accesible a través del enlace:http://server_domain_or_IP:8080/manager/html.
Asegúrese de haber ingresado las credenciales de la cuenta en el t omcat-usuarios.xml archivo.
Usamos el Administrador de aplicaciones web para gestionar nuestras aplicaciones Java. Puede comenzar, detener, recargar, implementar y anular la implementación de todas las aplicaciones aquí. Por último, proporciona datos sobre su servidor en la parte inferior de la página.
Ahora echemos un vistazo al Administrador de host , accesible a través de http://server_domain_or_IP:8080/host-manager/html/
Desde el Administrador de host virtual página, también puede agregar nuevos hosts virtuales que sigan las pautas de su formulario de solicitud.
Resumen
Ubuntu es compatible con Tomcat 6 y la última versión de Tomcat 9, que incluye nuevas funciones para permitir a los usuarios trabajar libremente en la aplicación.
Con este tutorial, su instalación de Tomcat es funcional pero completamente sin cifrar, por lo que otras partes en un navegador web pueden ver o cambiar la información o los datos, las contraseñas y otros datos confidenciales. La única forma de resolver este problema es cifrar sus conexiones con SSL.