Una guía paso a paso para instalar Apache Tomcat 9 Linux

Apache Tomcat es un servidor web de código abierto y un contenedor de servlets para ejecutar aplicaciones Java. Es el servidor de aplicaciones más popular utilizado con aplicaciones web Java. Hay cientos de empresas, incluidas eBay, Alibaba y MIT, que lo utilizan.

Este tutorial es una guía paso a paso para descargar Tomcat 9.0.45. El código aquí se probó en Debian 10. Eso significa que si está utilizando cualquier distribución basada en Debian como Ubuntu o Kali Linux (o la propia Debian), puede seguir adelante.

Requisitos previos para Apache Tomcat 9

Debe ser un usuario con privilegios de sudo . Si no es un usuario sudo / root, puede hacer lo siguiente para obtener ese privilegio de usuario:

a) Crear un nuevo usuario

Inicie sesión como root y en su terminal ingrese el siguiente comando:

 $ adduser newuser

Se le pedirá que proporcione una contraseña. Asegúrese de que sea fuerte y seguro. También se le pedirá información adicional como su nombre y número de teléfono. Esto es opcional y trivial. Puede simplemente presionar la tecla Enter para saltar.

b) Agregue el usuario al grupo sudo

 $ usermod -aG sudo newuser

Ahora tiene un usuario sudo llamado newuser .

Relacionado: Agregar un usuario al grupo Sudoers

Paso 1: Instale OpenJDK

Para instalar Tomcat 9, necesitará tener instalado Java Standard Edition (SE) 8 o superior. Consiga esto instalando OpenJDK, una implementación de código abierto de Java SE y Java Development Kit (JDK).

Primero, deberá actualizar nuestro paquete apt:

 $ sudo apt update

Luego siguiente:

 $ sudo apt install default-jdk

En el momento de escribir este artículo, OpenJDK14 es la última versión de OpenJDK. Una vez completada la instalación, verifíquela comprobando su versión de Java como se muestra a continuación:

 $ java -version

Paso 2: cree un usuario de Tomcat

Puede utilizar Tomcat como usuario root, pero esto representa una grave amenaza para la seguridad. Por lo tanto, deberá crear un nuevo usuario que ejecutará el servicio con un directorio de inicio de / opt / tomcat . Este directorio es donde instalará Tomcat, creado con un shell de / bin / false para que nadie pueda iniciar sesión en él.

Ejecute el siguiente comando para hacer esto:

 $ sudo useradd -m -U -d /opt/tomcat -s /bin/false tomcat

Paso 3: instalar Tomcat

La distribución binaria oficial de Tomcat se puede obtener en la página de descarga de Tomcat .

Puede usar el comando wget para descargar el archivo zip de Tomcat en el directorio / tmp , una ubicación de carpeta temporal.

 $ cd /tmp
$ wget https://mirror.kiu.ac.ug/apache/tomcat/tomcat-9/v9.0.45/bin/apache-tomcat-9.0.45.tar.gz

Si tiene problemas con el uso de wget , opcionalmente puede usar el comando curl para descargar Tomcat. Primero, descarga curl :

 $ sudo apt install curl

Luego use curl con el enlace que obtuvo del sitio web de Tomcat:

 $ curl -O https://mirror.kiu.ac.ug/apache/tomcat/tomcat-9/v9.0.45/bin/apache-tomcat-9.0.45.tar.gz

NOTA: Si usó wget , no es necesario usar curl también. Ambos logran el mismo objetivo.

Cuando se complete la descarga, extraiga el archivo en el directorio / opt / tomcat :

 $ sudo mkdir /opt/tomcat
$ tar -xf apache-tomcat-9.0.45.tar.gz
$ sudo mv apache-tomcat-9.0.45 /opt/tomcat/

Tomcat recibe actualizaciones periódicas con parches y correcciones de seguridad. Para asegurarse de tener más control sobre estas actualizaciones, cree un enlace simbólico llamado latest que apunte al directorio de instalación.

 $ sudo ln -s /opt/tomcat/apache-tomcat-9.0.45 /opt/tomcat/latest

Cuando reciba una actualización, todo lo que tendrá que hacer es descomprimir su descarga y hacer que el enlace simbólico apunte a ella.

A continuación, actualice los permisos. El siguiente comando otorga permiso al usuario y al grupo de Tomcat:

 $ sudo chown -R tomcat: /opt/tomcat

Debe hacer que los scripts de shell en el directorio bin de Tomcat sean ejecutables:

 $ sudo sh -c 'chmod +x /opt/tomcat/latest/bin/*.sh'

Paso 4: crear un archivo de unidad

Deberá ejecutar Tomcat como un servicio en lugar de utilizar scripts de shell. Esto requiere un archivo de unidad systemd en el directorio / etc / systemd / system / :

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

Ahora pega la configuración a continuación.

 
[Unit]
Description=Tomcat 9.0 servlet container
After=network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/default-java"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"
Environment="CATALINA_BASE=/opt/tomcat/latest"
Environment="CATALINA_HOME=/opt/tomcat/latest"
Environment="CATALINA_PID=/opt/tomcat/latest/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
ExecStart=/opt/tomcat/latest/bin/startup.sh
ExecStop=/opt/tomcat/latest/bin/shutdown.sh
[Install]
WantedBy=multi-user.target

Guarde y cierre el archivo. Luego, vuelva a cargar systemctl para asegurarse de que el sistema reconozca los nuevos cambios:

 $ sudo systemctl daemon-reload

Ahora inicie el servicio Tomcat:

 $ sudo systemctl start tomcat

Compruebe si la aplicación se ha iniciado sin errores:

 $ sudo systemctl status tomcat

La salida anterior confirma que el servidor Tomcat está en funcionamiento.

Siempre puede administrar su servicio Tomcat como cualquier otro servicio systemd:

 $ sudo systemctl start tomcat
$ sudo systemctl stop tomcat
$ sudo systemctl restart tomcat

Paso 5: configurar los ajustes del cortafuegos

Es posible que deba acceder a su servidor desde su red local. Para lograr esto, ajuste la configuración de su firewall y abra el puerto 8080.

 $ sudo ufw allow 8080/tcp

Después de modificar los permisos del firewall, ahora puede acceder a la página predeterminada de Tomcat yendo a your-ip-address: 8080 en su navegador web. No haga clic en el enlace de su aplicación Manager en esta etapa, ya que se le negará el acceso (puede configurarlo más adelante).

Si desea que el servicio Tomcat se inicie automáticamente en el momento del arranque, utilice:

 $ sudo systemctl enable tomcat

Paso 6: configurar la interfaz de administración

En este punto, la interfaz de administración web es inaccesible porque aún no ha definido los usuarios de Tomcat y sus roles. Tomcat-users.xml es el archivo descriptor. Ábralo en su terminal como se muestra a continuación:

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

Cuando se abre el archivo, verá el texto predeterminado que contiene comentarios y ejemplos.

Agregue el siguiente código en la parte inferior, justo encima de </tomcat-users>.

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

El nuevo usuario ahora tendrá acceso a la interfaz web (manager-gui y admin-gui). Asegúrese de cambiar la contraseña por otra más segura.

Paso 7: pruebe la instalación

Primero, reinicie su aplicación:

 $ sudo systemctl restart tomcat

Luego, en su navegador, escriba localhost: 8080. Una vez que obtenga la página siguiente, sabrá que la instalación se realizó correctamente.

Se puede acceder al panel del administrador de aplicaciones de Tomcat en http: // localhost: 8080 / manager / html . Desde aquí, puede comenzar a administrar (iniciar, detener, recargar, implementar y anular la implementación) de sus aplicaciones.

Se puede acceder al panel del administrador de host virtual en http: // localhost: 8080 / host-manager / html . Puede administrar sus hosts virtuales Tomcat desde aquí.

El Tomcat está listo para funcionar

Ahora que su instalación está completa, puede implementar una aplicación Java y comenzar a jugar con JSP (Java Server Pages), servlets y más.

En este punto, sus datos de Tomcat están completamente sin cifrar. Sus datos confidenciales, como contraseñas, se envían en texto sin formato y pueden ser vistos por personas no deseadas. Para protegerse, puede cifrar sus conexiones con SSL.

También puede visitar la documentación oficial de Apache Tomcat para obtener más información sobre las funciones de Tomcat. Si le resulta difícil seguir adelante, siempre puede buscar ayuda en las vibrantes comunidades de desarrolladores en línea, como Stack Overflow.