Androide

Cómo instalar Tomcat 9 en Debian 10 Linux

How to install Apache Tomcat 8.5.16 in Debian 9 Linux

How to install Apache Tomcat 8.5.16 in Debian 9 Linux

Tabla de contenido:

Anonim

Apache Tomcat es un servidor de aplicaciones basado en JAVA de código abierto que implementa Java Servlet, JavaServer Pages, Java Expression Language y Java WebSocket. Es una de las aplicaciones y servidores web más utilizados en el mundo de hoy.

Este tutorial explica cómo instalar Apache Tomcat 9.0 en Debian 10 Buster y configurar la interfaz de administración web de Tomcat.

Prerrequisitos

Las instrucciones asumen que ha iniciado sesión como root o usuario con privilegios de sudo.

Instalar OpenJDK

Tomcat 9.0 requiere que Java SE 8 o posterior esté instalado en el servidor.

Ejecute el siguiente comando para instalar el paquete OpenJDK:

sudo apt install default-jdk

Crear un usuario Tomcat

Ejecutar Tomcat como usuario root es un riesgo de seguridad y no se recomienda. Crearemos un nuevo usuario que se utilizará para ejecutar el servicio Tomcat.

Ejecutar el siguiente comando crea un nuevo usuario y grupo del sistema con un directorio de inicio de /opt/tomcat :

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

Descargando Tomcat

Al momento de escribir, la última versión de Tomcat es 9.0.27 . Antes de continuar con el siguiente paso, debe consultar la página de descarga de Tomcat 9 para ver si hay una versión más nueva disponible.

Cambie al directorio /tmp y descargue la última versión binaria de Tomcat:

cd /tmp wget

Cuando se complete la descarga, extraiga el archivo comprimido:

tar -xf apache-tomcat-9.0.27.tar.gz

Mueva los archivos de origen de Tomcat al directorio /opt/tomcat :

sudo mv apache-tomcat-9.0.27 /opt/tomcat/

Tomcat 9 se actualiza periódicamente. Para tener más control sobre las versiones y actualizaciones, cree un enlace simbólico denominado latest que apunte al directorio de instalación de Tomcat:

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

Más tarde, cuando actualice Tomcat, simplemente desempaquete la versión más nueva y cambie el enlace simbólico para que apunte a la última versión.

Cambie la propiedad del directorio /opt/tomcat a user y group tomcat , para que el usuario pueda tener acceso al directorio de instalación:

sudo chown -R tomcat: /opt/tomcat

Haga que los scripts dentro del directorio bin ejecutables:

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

Crear archivo de unidad SystemD

Abra su editor de texto y cree un nuevo archivo llamado tomcat.service con los siguientes contenidos:

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

Description=Tomcat 9.0 servlet container After=network.target 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 WantedBy=multi-user.target

Notifique a systemd que existe un nuevo archivo de unidad e inicie el servicio Tomcat escribiendo:

sudo systemctl daemon-reload sudo systemctl start tomcat

Verifique el estado del servicio Tomcat escribiendo:

sudo systemctl status tomcat

● tomcat.service - Tomcat 9.0 servlet container Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: Active: active (running) since Sat 2019-11-09 13:53:51 PST; 5s ago Process: 5752 ExecStart=/opt/tomcat/latest/bin/startup.sh (code=exited, status Main PID: 5759 (java)

Si no hay errores, habilite 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 tomcat sudo systemctl stop tomcat sudo systemctl restart tomcat

Ajuste del cortafuegos

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 proxy inverso, y es una buena práctica restringir el acceso al puerto 8080 solo a su red interna.

Configuración de la interfaz de administración web de Tomcat

Ahora que Tomcat está instalado, el siguiente paso es crear un usuario con acceso a la interfaz de administración web.

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

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

Definiremos el nuevo usuario en el archivo tomcat-users.xml , como se muestra a continuación. El usuario tendrá acceso a la interfaz web de tomcat (manager-gui y admin-gui). Asegúrese de cambiar el nombre de usuario y la contraseña por algo más seguro:

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

De manera predeterminada, la interfaz de administración web de Tomcat solo permite el acceso desde el host 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.

/opt/tomcat/latest/webapps/manager/META-INF/context.xml

/opt/tomcat/latest/webapps/host-manager/META-INF/context.xml

/opt/tomcat/latest/webapps/manager/META-INF/context.xml

/opt/tomcat/latest/webapps/host-manager/META-INF/context.xml

La lista de direcciones IP permitidas es una lista separada con 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://:8080 http://:8080

Si la instalación es exitosa, aparecerá una pantalla similar a la siguiente:

Conclusión

Ha instalado correctamente Tomcat 9.0 en su sistema Debian 10. Ahora puede visitar la documentación oficial de Apache Tomcat 9.0 y obtener más información sobre las características de Apache Tomcat.

java debian tomcat