GNU/Linux >> Tutoriales Linux >  >> Debian

Cómo instalar Tomcat 8.5 en Debian 9

Apache Tomcat es un servidor de aplicaciones de código abierto compatible con las tecnologías Java Servlet, JavaServer Pages, Java Expression Language y Java WebSocket. Es una de las aplicaciones y servidores web más utilizados en el mundo en la actualidad.

Este tutorial le mostrará cómo instalar Apache Tomcat 8.5 en Debian 9 y configurar la interfaz de administración web de Tomcat.

Requisitos previos #

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

Descargaremos el archivo zip de Tomcat usando wgetutility y extraeremos el archivo descargado con unzip.

Si no tiene estas utilidades instaladas en su sistema, puede hacerlo escribiendo:

sudo apt install unzip wget

Instalar OpenJDK #

Tomcat 8.5 requiere Java SE 7 o posterior. Para instalar el paquete OpenJDK predeterminado desde los repositorios de Debian 9, ejecute el siguiente comando:

sudo apt install default-jdk

Crear usuario de Tomcat #

Ejecutar Tomcat como usuario root es un riesgo de seguridad y no se recomienda.

Para crear un nuevo usuario y grupo del sistema para nuestra instancia de Tomcat con el directorio de inicio de /opt/tomcat ejecuta el siguiente comando:

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

Descargar Tomcat #

Descargaremos 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 descargar el archivo zip, debe consultar la página de descarga para ver si hay una nueva versión.

Cambie a /tmp directorio y descarga el archivo zip con wget :

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

Cuando se complete la descarga, ejecute los siguientes comandos para extraer el archivo zip 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 de Tomcat, crearemos un enlace simbólico llamado 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, cuando actualice la versió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.

Cambiar la propiedad del /opt/tomcat directorio al usuario y grupo tomcat para que el usuario pueda tener acceso a la instalación de Tomcat:

sudo chown -R tomcat: /opt/tomcat

también haga los scripts dentro de bin directorio ejecutable emitiendo el siguiente chmod comando:

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

Crea un archivo de unidad systemd #

Crear 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

Verifique el estado del servicio Tomcat escribiendo:

sudo systemctl status tomcat
● tomcat.service
   Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: enabled)
   Active: active (running) since Wed 2018-06-06 10:51:36 UTC; 3s ago
  Process: 21187 ExecStart=/opt/tomcat/latest/bin/startup.sh (code=exited, status=0/SUCCESS)
 Main PID: 21195 (java)
    Tasks: 44 (limit: 4915)
   CGroup: /system.slice/tomcat.service

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

sudo systemctl enable tomcat

Puede iniciar, detener y reiniciar Tomcat igual que cualquier otro servicio de unidad systemd:

sudo systemctl start tomcatsudo systemctl stop tomcatsudo systemctl restart tomcat

Ajustar el cortafuegos #

Si su firewall se ejecuta en su sistema Debian y desea acceder a la interfaz Tomcat desde el exterior de su red local, deberá abrir el puerto 8080 :

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 Tomcat está instalado en su servidor Debian, el siguiente paso es crear un usuario con 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

Definiremos nuestro nuevo usuario con acceso a la interfaz web de Tomcat (manager-gui y admin-gui) en el 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 permite el acceso solo desde el servidor local. Si desea 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 realizar 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

Si la instalación es 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.


Debian
  1. Cómo instalar MongoDB en Debian 9

  2. Cómo instalar Nginx en Debian 9

  3. Cómo instalar Nextcloud en Debian 9

  4. Cómo instalar PostgreSQL 11/10 en Debian 9 y Debian 8

  5. Cómo instalar Tomcat 8 en Debian 8

Cómo instalar MariaDB en Debian 11

Cómo instalar Nginx en Debian 11

Cómo instalar Nagios en Debian 10 / Debian 9

Cómo instalar Tomcat en Debian 10 Buster

Cómo instalar Go en Debian 11

Cómo instalar Apache Tomcat en Debian 10