GNU/Linux >> Tutoriales Linux >  >> Cent OS

Cómo instalar Apache Tomcat 10/9 en CentOS 8 / RHEL 8

Apache Tomcat es un servidor web Java HTTP de código abierto desarrollado por Apache Software Foundation (ASF). Tomcat ayuda a implementar Java Servlet y JavaServer Pages (JSP) y los sirve como un servidor web HTTP.

En esta publicación, veremos cómo instalar Apache Tomcat 10/9 en CentOS 8 / RHEL 8.

Requisitos

Instalar Java

Tomcat requiere que Java 8 o superior esté instalado en su máquina. Puede instalar cualquier versión estable de Oracle JDK u OpenJDK.

LEER :Cómo instalar Oracle JAVA en CentOS 8/RHEL 8

Para esta publicación, estoy usando OpenJDK.

yum install -y java curl tar

Verifique la instalación de Java emitiendo el siguiente comando.

java -version

Salida:

openjdk version "1.8.0_275"
OpenJDK Runtime Environment (build 1.8.0_275-b01)
OpenJDK 64-Bit Server VM (build 25.275-b01, mixed mode)

Crear cuenta de servicio de Tomcat

Como práctica recomendada, el servicio Tomcat no debe ejecutarse como usuario raíz. Por lo tanto, cree un usuario normal de Linux para ejecutar el servicio Tomcat.

useradd -d /opt/tomcat -s /bin/nologin tomcat

Instalar Apache Tomcat

Descargar Tomcat

Descarga Apache Tomcat del sitio web oficial y guárdalo en tu directorio de trabajo.

Al momento de escribir este artículo, Tomcat v9.0.22 está disponible para su instalación.

Navegador

Descarga Apache Tomcat 10

Descarga Apache Tomcat 9.0

Terminal

### Apache Tomcat 10.x

curl https://downloads.apache.org/tomcat/tomcat-10/v10.0.4/bin/apache-tomcat-10.0.4.tar.gz -o apache-tomcat-10.0.4.tar.gz

### Apache Tomcat 9.x

curl https://downloads.apache.org/tomcat/tomcat-9/v9.0.44/bin/apache-tomcat-9.0.44.tar.gz -o apache-tomcat-9.0.44.tar.gz

Configurar Tomcat

Extraiga el tarball de Tomcat y muévalo al directorio deseado (/opt/tomcat).

tar -zxvf apache-tomcat-*.tar.gz

mv apache-tomcat-*/* /opt/tomcat/

Cambie la propiedad del directorio al usuario tomcat.

chown -R tomcat:tomcat /opt/tomcat/

Crear archivo Systemd

Podemos configurar systemd para iniciar el servicio Tomcat por usted, y también nos ayuda a iniciar automáticamente el servicio Apache Tomcat al iniciar el sistema.

El archivo de servicio systemd de Tomcat requiere una ubicación de instalación de Java. Entonces, enumere las versiones de Java disponibles en su sistema usando el siguiente comando.

alternatives --list  | grep ^java

Salida:

java                    auto    /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el8_0.x86_64/jre/bin/java

En este momento, solo tengo Java 1.8 en mi sistema.

Cree un archivo de servicio systemd de tomcat.

vi /etc/systemd/system/tomcat.service

Agregue la siguiente información al archivo de servicio systemd. Cambie los valores según su entorno.

[Unit]
Description=Apache Tomcat Web Application Container
Wants=network.target
After=network.target

[Service]
Type=forking

Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.222.b10-0.el8_0.x86_64/jre

Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid
Environment=CATALINA_HOME=/opt/tomcat
Environment='CATALINA_OPTS=-Xms512M -Xmx1G -Djava.net.preferIPv4Stack=true'
Environment='JAVA_OPTS=-Djava.awt.headless=true'

ExecStart=/opt/tomcat/bin/startup.sh
ExecStop=/opt/tomcat/bin/shutdown.sh
SuccessExitStatus=143

User=tomcat
Group=tomcat
UMask=0007
RestartSec=10
Restart=always

[Install]
WantedBy=multi-user.target

SELinux

Considere deshabilitar SELinux si bloquea el inicio de Tomcat.

setenforce 0

sed -i 's/ELINUX=enforcing/ELINUX=disabled/g' /etc/selinux/config

Iniciar Apache Tomcat

Vuelva a cargar el demonio systemd.

systemctl daemon-reload

Para iniciar el servicio Tomcat; ejecutar:

systemctl start tomcat

Compruebe el estado de Tomcat, ejecute:

systemctl status tomcat

Habilite el servicio Tomcat para que se inicie automáticamente al iniciar el sistema.

systemctl enable tomcat

De forma predeterminada, Tomcat se ejecuta en el puerto 8080. Utilice el comando netstat para verificar si el servicio está escuchando en el puerto 8080 o no.

netstat -antup | grep 8080

Salida:

tcp        0      0 0.0.0.0:8080            0.0.0.0:*               LISTEN      2904/java

Cortafuegos

Permita el puerto 8080 en el firewall para que podamos acceder a Apache Tomcat desde redes externas.

firewall-cmd --permanent --add-port=8080/tcp

firewall-cmd --reload

Configurar la interfaz de usuario web de Apache Tomcat

Apache Tomcat se puede administrar a través del Administrador web.

Con Web Manager, puede

  • Implementar nuevas aplicaciones
  • Implementar nuevas aplicaciones en el contexto especificado
  • Lista de las aplicaciones activas o inactivas
  • Iniciar y detener las aplicaciones web

Además, Tomcat tiene Host Manager para administrar sus hosts virtuales.

Administración de usuarios

Tanto The Web como Host Manager están protegidos con contraseña, requieren un nombre de usuario y una contraseña para acceder.

Solo el usuario con el “manager-gui ” y “administrador-gui El rol ” tiene permiso para acceder a la Web y al administrador de Host respectivamente.

Estos usuarios y funciones se definen en tomcat-users.xml .

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

Coloque las siguientes dos líneas justo encima de la última línea.

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

Permitir acceso

Por razones de seguridad, solo se puede acceder a Web y Host Manager desde localhost, es decir, desde el propio servidor.

Para habilitar el acceso al administrador web y de alojamiento desde sistemas remotos, debe agregar su red a la lista de permitidos.

Para hacerlo, sigue los pasos.

Administrador web

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

Actualice la siguiente línea con la IP de origen desde la que está accediendo a Web and Host Manager.

Permitir a todos

.* permitirá que todos tengan acceso al administrador web.

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|.*" />
Permitir red de organización

También puede permitir solo la red de su organización. Por ejemplo:para permitir solo la red 192.168.1.0/24, puede usar los siguientes valores.

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.1.*" />

Administrador de alojamiento

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

Actualice la siguiente línea con la IP de origen desde la que accede al Host Manager.

Permitir a todos

.* permitirá que todos tengan acceso al administrador de Host.

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|.*" />
Permitir red de organización

También puede permitir solo la red de su organización. Por ejemplo:para permitir solo la red 192.168.1.0/24, puede usar los siguientes valores.

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.1.*" />

Reinicie el servicio Tomcat.

systemctl restart tomcat

Acceder a Tomcat

Abra el navegador web y diríjalo a:

http://ip.add.re.ss:8080

Ahora obtendrá la página predeterminada de Tomcat.

Aplicación de administrador (manager-gui):– Se requiere inicio de sesión. Nombre de usuario:admin, Contraseña:tomcat.

Aquí, puede implementar una aplicación, implementar una aplicación en un contexto específico, iniciar, detener, recargar y anular la implementación de una aplicación.

Además, puedes ver el Tomcat estado del servidor .

Administrador de host (admin-gui):– Se requiere inicio de sesión. Nombre de usuario:admin, Contraseña:tomcat.

Aquí puede administrar los hosts virtuales de Tomcat.

Conclusión

Eso es todo. Espero que haya aprendido a instalar Tomcat 10/9 en CentOS 8/RHEL 8. Ahora está listo para su primera aplicación web. Como recomendación de seguridad, considere implementar SSL/TLS para Tomcat


Cent OS
  1. Cómo instalar apache tomcat en Linux RHEL 8 / CentOS 8

  2. Cómo instalar Apache en RHEL 8 / CentOS 8 Linux

  3. Cómo instalar Apache Maven CentOS 7 / RHEL 7

  4. Cómo instalar Apache Tomcat 8 en CentOS

  5. Cómo instalar Apache Tomcat en CentOS 7

Cómo instalar Apache Maven CentOS 8 / RHEL 8

Cómo instalar Apache Solr 8.9 en CentOS/RHEL 8

Cómo instalar Apache Solr en CentOS y RHEL 8

Cómo instalar Apache Tomcat en CentOS 8

Cómo instalar Apache Kafka en CentOS/RHEL 7

Cómo instalar Apache Tomcat 9 en CentOS 7