Cómo instalar y configurar Apache Tomcat 9 en Ubuntu 18.04 LTS
Apache Tomcat es una implementación de Java Servlet de código abierto desarrollada por la Apache Software Foundation. Además de la implementación de Java Servlets, Tomcat soporta también otras tecnologías de servidor Java, como JavaServer Pages (JSP), Java Expression Language y Java WebSocket. Tomcat proporciona un servidor web HTTP para aplicaciones Java que soporta HTTP/2, OpenSSL para JSSE y alojamiento virtual TLS.
En este tutorial, te mostraremos cómo instalar y configurar Apache Tomcat 9.0.8 en Ubuntu 18.04 LTS (Bionic Beaver). También aprenderemos a instalar Java en Ubuntu 18.04 LTS, a configurar un usuario para apache tomcat, y a ejecutar apache tomcat como un servicio systemd.
Requisitos previos
- Ubuntu 18.04 – 64 bits
- 2 GB o más de memoria (recomendado)
- Privilegios de root
¿Qué vamos a hacer?
- Instalar Java en Ubuntu 18.04
- Configurar el entorno Java
- Instalar Apache Tomcat 9
- Configurar Apache Tomcat como servicio
- Configurar los usuarios de Apache Tomcat
- Probar
Paso 1 – Instalar Java en Ubuntu 18.04
En este paso, instalaremos Java JRE y JDK desde el repositorio PPA. Para ello, tenemos que instalar primero un nuevo paquete ‘software-properties-common’ para gestionar el repositorio.
Instala el paquete ‘software-properties-common’.
sudo apt install software-properties-common -y
Añade el repositorio java ‘webupd8team’ utilizando el comando ‘add-apt-repository’.
sudo add-apt-repository ppa:webupd8team/java
E instala java utilizando el comando apt que aparece a continuación.
sudo apt install oracle-java8-installer -y
Cuando la instalación esté completa, comprueba la versión de java instalada en el sistema.
java -version
Y obtendrás el resultado que se indica a continuación
java version "1.8.0_171"
Java(TM) SE Runtime Environment (build 1.8.0_171-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.171-b11, mixed mode)
Java ha sido instalado en Ubuntu 18.04.
Paso 2 – Configurar el entorno Java
En el primer paso, hemos instalado Java. Ahora tenemos que configurar la variable de entorno JAVA_HOME en el servidor Ubuntu para que las aplicaciones Java puedan encontrar el directorio de instalación de Java. Tomcat necesita un entorno JAVA_HOME para configurarse correctamente.
Antes de configurar el entorno JAVA_HOME, necesitamos saber dónde está el directorio de Java. Comprueba la ubicación del directorio Java con el siguiente comando:
sudo update-alternatives --config java
El directorio java es«/usr/lib/jvm/java-8-oracle/jre«
Ahora edita el archivo ‘/etc/environment’ utilizando vim.
vim /etc/environment
Pega allí la siguiente configuración.
JAVA_HOME="/usr/lib/jvm/java-8-oracle/jre"
Guarda y sal.
Edita el archivo ‘~/.bashrc’.
vim ~/.bashrc
Pega la siguiente configuración.
export JAVA_HOME=/usr/lib/jvm/java-8-oracle/jre export PATH=$JAVA_HOME/bin:$PATH
Guarda y sal.
Ahora vuelve a cargar el script ‘~/.bashrc’ y prueba el directorio ‘JAVA_HOME’.
source ~/.bashrc
echo $JAVA_HOME
La configuración del entorno java se ha completado.
Paso 3 – Instalar Apache Tomcat
En este paso, instalaremos el Apache Tomcat bajo el usuario y grupo ‘tomcat’. Descargaremos los archivos binarios de Apache Tomcat, configuraremos el entorno del contenedor de servlets Catalina Tomcat y haremos una primera prueba del servidor Tomcat.
Añade un nuevo usuario y un grupo llamado ‘tomcat’ utilizando los comandos que aparecen a continuación.
groupadd tomcat
useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat
Ahora ve al directorio ‘/opt/’ y descarga la última versión estable de apache tomcat (9.0.8) utilizando el comando wget.
cd /opt/
wget http://www-eu.apache.org/dist/tomcat/tomcat-9/v9.0.8/bin/apache-tomcat-9.0.8.tar.gz
Extrae el archivo del paquete de apache tomcat y cambia el nombre del directorio a ‘tomcat’.
tar -xzvf apache-tomcat-9.0.8.tar.gz
mv apache-tomcat-9.0.8/ tomcat/
Cambia el propietario del directorio y los archivos de tomcat al usuario y grupo ‘tomcat’, y luego haz que todos los archivos binarios de apache tomcat sean ejecutables.
chown -R tomcat:tomcat /opt/tomcat
chmod +x /opt/tomcat/bin/*
A continuación, configuraremos el entorno del contenedor de servlets Catalina tomcat editando el archivo ‘~/.bashrc’ con vim.
vim ~/.bashrc
Pega allí la siguiente configuración.
export CATALINA_HOME=/opt/tomcat
Guarda y sal.
Vuelve a cargar el archivo ‘~/.bashrc’ y prueba el entorno de Catalina.
source ~/.bashrc
echo $CATALINA_HOME
Obtendrás el resultado que se muestra a continuación.
Ahora prueba a ejecutar el propio Apache Tomcat.
Ejecuta el siguiente comando para iniciar Apache Tomcat.
$CATALINA_HOME/bin/startup.sh
Y verás el resultado: apache tomcat se ha iniciado. Se ejecutará en el puerto por defecto ‘8080’ – puedes comprobar el puerto utilizando el comando netstat.
netstat -plntu
El Apache Tomcat está ejecutando el servidor en el puerto 8080.
Otra forma de probar el apache tomcat es visitando la dirección IP del servidor con el puerto 8080.
Y verás la página de inicio de apache tomcat como se indica a continuación.
Apache Tomcat ha sido instalado en Ubuntu 18.04.
Ahora ejecuta el siguiente comando para detener el apache tomcat.
$CATALINA_HOME/bin/shutdown.sh
chown -hR tomcat:tomcat /opt/tomcat/
Paso 4 – Configurar Apache Tomcat como servicio
En este tutorial, queremos ejecutar Apache Tomcat como usuario tomcat con un archivo de servicio systemd para que se pueda iniciar y detener fácilmente. Ahora tenemos que crear el archivo ‘apache-tomcat.service’.
Ve al directorio del sistema systemd y crea un nuevo archivo ‘apache-tomcat.service’.
cd /etc/systemd/system/
vim apache-tomcat.service
Pega allí la siguiente configuración:
[Unit] Description=Apache Tomcat 9 Servlet Container After=syslog.target network.target [Service] User=tomcat Group=tomcat Type=forking Environment=CATALINA_PID=/opt/tomcat/tomcat.pid Environment=CATALINA_HOME=/opt/tomcat Environment=CATALINA_BASE=/opt/tomcat ExecStart=/opt/tomcat/bin/startup.sh ExecStop=/opt/tomcat/bin/shutdown.sh Restart=on-failure [Install] WantedBy=multi-user.target
Guarda y sal.
Ahora vuelve a cargar el servicio systemd.
systemctl daemon-reload
E inicia el servicio ‘apache-tomcat’ utilizando los comandos systemctl que aparecen a continuación.
systemctl start apache-tomcat
systemctl enable apache-tomcat
El Apache Tomcat se está ejecutando ahora como un servicio en Ubuntu 18.04, compruébalo utilizando los siguientes comandos.
netstat -plntu
systemctl status apache-tomcat
El Apache Tomcat se está ejecutando ahora y está utilizando el puerto 8080 como puerto por defecto.
Paso 5 – Configurar el usuario de Apache Tomcat
En este paso, configuraremos los usuarios para Apache Tomcat. Añadiremos un nuevo usuario para acceder a la interfaz de usuario del gestor, y luego permitiremos el acceso del gestor y del gestor del host.
Ve al directorio ‘/opt/tomcat/conf’ y edita el archivo ‘tomcat-users.xml’ utilizando vim.
cd /opt/tomcat/conf
vim tomcat-users.xml
Pega la siguiente configuración antes de la configuración de cierre‘</tomcat-users>‘.
<role rolename="manager-gui"/> <user username="hakase" password="hakasepassword01" roles="manager-gui,admin-gui"/>
Guarda y sal.
Ahora permite el acceso externo al panel de control «manager» editando su archivo de configuración «context.xml».
cd /opt/tomcat/webapps/manager/META-INF/
vim context.xml
Comenta la línea 19-20 de ‘allow’.
<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->
Guarda y sal.
Y para el ‘host-manager’.
cd /opt/tomcat/webapps/host-manager/META-INF/
vim context.xml
Comenta la línea 19-20 de ‘allow’.
<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->
Guarda y sal.
Reinicia el servicio Apache Tomcat con el comando systemctl.
systemctl restart apache-tomcat
La configuración de apache tomcat-users, manager y host-manager se ha completado.
Paso 6 – Prueba
Abre tu navegador web y escribe la IP de tu servidor con el puerto 8080. Verás la página de inicio de Apache Tomcat.
Ve al panel de control del gestor con la siguiente URL:
http://192.168.10.100:8080/manager/html
Escribe el nombre de usuario administrador ‘hakase’ con la contraseña ‘hakasepassword01’ del paso 5.
Ahora ve al panel de control del gestor de host a través de la siguiente URL:
http://192.168.10.100:8080/host-manager/html
Introduce el usuario y la contraseña de administrador del paso 5, y verás el Gestor de Anfitriones Virtuales de Tomcat.
Apache Tomcat 9.0.8 ha sido instalado con éxito en Ubuntu 18.04 Bionic Beaver.