GNU/Linux >> Tutoriales Linux >  >> Ubuntu

Cómo instalar Tomcat 8.5 en Ubuntu 18.04

Apache Tomcat es una implementación de código abierto de las tecnologías Java Servlet, JavaServer Pages, Java Expression Language y Java WebSocket. Es una de las aplicaciones y servidores web más adoptados en el mundo actual. Tomcat es fácil de usar y tiene un sólido ecosistema de complementos.

Este tutorial demuestra cómo instalar Tomcat 8.5 en Ubuntu 18.04. Las mismas instrucciones se aplican a Ubuntu 16.04 y cualquier distribución basada en Ubuntu, incluidos Linux Mint y Elementary OS.

Requisitos previos #

Antes de continuar con este tutorial, asegúrese de haber iniciado sesión como usuario con privilegios de sudo.

Instalar OpenJDK #

OpenJDK, la implementación de código abierto de la plataforma Java, es el tiempo de ejecución y desarrollo de Java predeterminado en Ubuntu 18.04.

La instalación del paquete OpenJDK es bastante sencilla:

sudo apt install default-jdk

Crear usuario de Tomcat #

Crearemos un nuevo usuario y grupo del sistema con el directorio de inicio /opt/tomcat que ejecutará el servicio Tomcat:

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

Descargar Tomcat #

Usaremos wget y unzip para descargar y extraer el archivo Tomcat. Si no tiene unzip y wget instalado en su sistema instale los paquetes con:

sudo apt install unzip wget

Descargue la última versión de Tomcat 8.5.x desde la página de descargas de Tomcat. En el momento de escribir este artículo, la última versión es la 8.5.37. Antes de continuar con el siguiente paso, debe consultar la página de descarga para obtener una nueva versión.

Cambie a /tmp directorio y descargue el archivo zip con el siguiente comando wget:

cd /tmpwget http://www-us.apache.org/dist/tomcat/tomcat-8/v8.5.37/bin/apache-tomcat-8.5.37.zip

Una vez completada la descarga, descomprima el archivo y muévalo a /opt/tomcat directorio:

unzip apache-tomcat-*.zipsudo mkdir -p /opt/tomcatsudo mv apache-tomcat-8.5.37 /opt/tomcat/

Para tener más control sobre las versiones y actualizaciones, crearemos un enlace simbólico latest que apuntará al directorio de instalación de Tomcat:

sudo ln -s /opt/tomcat/apache-tomcat-8.5.37 /opt/tomcat/latest

Más adelante, si desea actualizar su instalación de Tomcat, simplemente puede desempaquetar la versión más nueva y cambiar el enlace simbólico para que apunte a la última versión.

El usuario de tomcat que configuramos previamente necesita tener acceso al directorio de tomcat, por lo que cambiaremos la propiedad del directorio al usuario y grupo de tomcat:

sudo chown -R tomcat: /opt/tomcat

Haz los scripts dentro de bin directorio ejecutable ejecutando el siguiente chmod comando:

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

Crea un archivo de unidad systemd #

Para ejecutar Tomcat como un servicio, crearemos un nuevo tomcat.service archivo de unidad en el /etc/systemd/system/ directorio con los siguientes contenidos:

/etc/systemd/system/tomcat.service
[Unit]
Description=Tomcat 8.5 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

Notifique a systemd que creamos un nuevo archivo de unidad e inicie el servicio Tomcat ejecutando:

sudo systemctl daemon-reloadsudo systemctl start tomcat

Puede verificar el estado del servicio con el siguiente comando:

sudo systemctl status tomcat
● tomcat.service - Tomcat 8.5 servlet container
   Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: enabled)
   Active: active (running) since Sat 2018-05-05 11:04:40 UTC; 5s ago
  Process: 13478 ExecStart=/opt/tomcat/latest/bin/startup.sh (code=exited, status=0/SUCCESS)
 Main PID: 13499 (java)
    Tasks: 45 (limit: 507)
   CGroup: /system.slice/tomcat.service
           └─13499 /usr/lib/jvm/default-java/bin/java -Djava.util.logging.config.file=/opt/tomcat/latest/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djava.security.

y si no hay errores, puede habilitar el servicio Tomcat para que se inicie automáticamente en el momento del arranque:

sudo systemctl enable tomcat

Ajustar el cortafuegos #

Si su servidor está protegido por un firewall y desea acceder a la interfaz Tomcat desde el exterior de su red local, deberá abrir el puerto 8080 .

Para permitir el tráfico en el puerto 8080 escribe el siguiente comando:

sudo ufw allow 8080/tcp
Al ejecutar una aplicación Tomcat en un entorno de producción, lo más probable es que tenga un equilibrador de carga o un proxy inverso, y es una buena práctica restringir el acceso al puerto 8080 solo a su red interna.

Configurar interfaz de administración web de Tomcat #

Ahora que tenemos Tomcat instalado en nuestro servidor Ubuntu, el siguiente paso es crear un usuario que tendrá acceso a la interfaz de administración web.

Los usuarios de Tomcat y sus funciones se definen en tomcat-users.xml archivo.

Si abre el archivo, notará que está lleno de comentarios y ejemplos que describen cómo configurar el archivo.

sudo vim /opt/tomcat/latest/conf/tomcat-users.xml

Para agregar un nuevo usuario que pueda acceder a la interfaz web de Tomcat (manager-gui y admin-gui), debemos definir el usuario en tomcat-users.xml archivo como se muestra a continuación. Asegúrese de cambiar el nombre de usuario y la contraseña por algo más seguro:

/opt/tomcat/latest/conf/tomcat-users.xml
<tomcat-users>
<!--
    Comments
-->
   <role rolename="admin-gui"/>
   <role rolename="manager-gui"/>
   <user username="admin" password="admin_password" roles="admin-gui,manager-gui"/>
</tomcat-users>

De manera predeterminada, la interfaz de administración web de Tomcat está configurada para permitir el acceso solo desde el host local, si desea poder acceder a la interfaz web desde una IP remota o desde cualquier lugar que no se recomienda porque es un riesgo de seguridad, puede abrir los siguientes archivos y realice los siguientes cambios.

Si necesita acceder a la interfaz web desde cualquier lugar, abra los siguientes archivos y comente o elimine las líneas resaltadas en amarillo:

/opt/tomcat/latest/webapps/manager/META-INF/context.xml
<Context antiResourceLocking="false" privileged="true" >
<!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->
</Context>
/opt/tomcat/latest/webapps/host-manager/META-INF/context.xml
<Context antiResourceLocking="false" privileged="true" >
<!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->
</Context>

Si necesita acceder a la interfaz web solo desde una IP específica, en lugar de comentar los bloques, agregue su IP pública a la lista. Digamos que su IP pública es 32.32.32.32 y quieres permitir el acceso solo desde esa IP:

/opt/tomcat/latest/webapps/manager/META-INF/context.xml
<Context antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|32.32.32.32" />
</Context>
/opt/tomcat/latest/webapps/host-manager/META-INF/context.xml
<Context antiResourceLocking="false" privileged="true" >
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|32.32.32.32" />
</Context>

La lista de direcciones IP permitidas es una lista separada por una barra vertical | . Puede agregar direcciones IP individuales o usar expresiones regulares.

Reinicie el servicio Tomcat para que los cambios surtan efecto:

sudo systemctl restart tomcat

Probar la instalación #

Abra su navegador y escriba:http://<your_domain_or_IP_address>:8080

Suponiendo que la instalación sea exitosa, aparecerá una pantalla similar a la siguiente:

El panel del administrador de aplicaciones web de Tomcat está disponible en http://<your_domain_or_IP_address>:8080/manager/html . Desde aquí, puede implementar, anular la implementación, iniciar, detener y recargar sus aplicaciones.

El panel del administrador de host virtual de Tomcat está disponible en http://<your_domain_or_IP_address>:8080/host-manager/html . Desde aquí, puede crear, eliminar y administrar hosts virtuales de Tomcat.


Ubuntu
  1. Cómo instalar Tomcat 9 en CentOS 7

  2. Cómo instalar Docker en Ubuntu 18.04

  3. Cómo instalar Tomcat en Ubuntu 18.04

  4. Cómo instalar Tomcat 8 en ubuntu 14.04

  5. Cómo instalar Tomcat en Ubuntu 18.04

Cómo instalar Apache en Ubuntu 20.04

Cómo instalar Tomcat 9 en Ubuntu 18.04

Cómo instalar Tomcat 9 en Ubuntu 20.04

Cómo instalar Apache Tomcat 9 en Ubuntu 18.04 LTS

Cómo instalar Apache Tomcat en Ubuntu 20.04 LTS

Cómo instalar Tomcat en Ubuntu 20.04