GNU/Linux >> Tutoriales Linux >  >> Linux

Cómo instalar Apache Tomcat 10 en Ubuntu 20.04 con Nginx

Apache Tomcat es un servidor web de código abierto y un contenedor de servlets que se utiliza principalmente para servir aplicaciones basadas en Java.

En esta guía, aprenderá cómo instalar Apache Tomcat 10 en Ubuntu 20.04 y asegurar la configuración con Nginx y Let's Encrypt SSL.

Requisitos

  • Un servidor con sistema operativo Ubuntu 20.04
  • Un usuario con privilegios sudo.

Configuración inicial

Comience por actualizar los paquetes del servidor a la última versión disponible.

sudo apt update
sudo apt dist-upgrade -y

Crear nuevo usuario para Tomcat

Sería mejor si Tomcat se ejecuta como su propio usuario sin privilegios. Ejecute el siguiente comando para crear un nuevo usuario con los privilegios necesarios para Tomcat. Este usuario no podrá iniciar sesión en SSH.

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

Instalar Java

Instale el JDK predeterminado usando el siguiente comando.

sudo apt install default-jdk

Una vez completada la instalación, verifique la versión usando el siguiente comando.

java -version

Su salida debe ser similar a la siguiente.

openjdk version "11.0.14.1" 2022-02-08
OpenJDK Runtime Environment (build 11.0.14.1+1-Ubuntu-0ubuntu1.20.04)
OpenJDK 64-Bit Server VM (build 11.0.14.1+1-Ubuntu-0ubuntu1.20.04, mixed mode, sharing)

Instalar Apache Tomcat

Descargue la última versión de Tomcat desde su página oficial de descargas. Elija el tar.gz debajo de la sección central.

Descarga el archivo usando wget.

cd ~/
wget https://dlcdn.apache.org/tomcat/tomcat-10/v10.0.20/bin/apache-tomcat-10.0.20.tar.gz

Extrae el contenido a /opt/tomcat directorio.

sudo tar xzvf apache-tomcat-10*tar.gz -C /opt/tomcat --strip-components=1

Configure los permisos correctos para los archivos Tomcat.

sudo chown -R tomcat:tomcat /opt/tomcat/
sudo chmod -R u+x /opt/tomcat/bin

Configurar usuarios administradores

Ahora necesitamos configurar usuarios que puedan acceder al Administrador de host y el Gerente páginas en Tomcat.

Agregue los usuarios con contraseñas en /opt/tomcat/conf/tomcat-users.xml

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

Agregue las siguientes líneas antes de la etiqueta final.

<role rolename="manager-gui" />
<user username="manager" password="secure_password" roles="manager-gui" />

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

Ahora tenemos 2 usuarios que pueden acceder a las páginas Administrador y Administrador de host.

Configurar Tomcat como servicio

Aquí configuraremos un servicio systemd para administrar Tomcat para iniciar, detener y reiniciar automáticamente.

Tenga en cuenta la ubicación de Java.

sudo update-java-alternatives -l
Output
java-1.11.0-openjdk-amd64      1111       /usr/lib/jvm/java-1.11.0-openjdk-amd64

Cree un archivo systemd.

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

Agregue los siguientes contenidos al archivo.

[Unit]
Description=Tomcat
After=network.target

[Service]
Type=forking

User=tomcat
Group=tomcat

Environment="JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"
Environment="CATALINA_BASE=/opt/tomcat"
Environment="CATALINA_HOME=/opt/tomcat"
Environment="CATALINA_PID=/opt/tomcat/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"

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

RestartSec=10
Restart=always

[Install]
WantedBy=multi-user.target

Reemplazar JAVA_HOME variable con la que anotaste antes.

Vuelva a cargar el demonio systemd para que los cambios surtan efecto.

sudo systemctl daemon-reload

Inicie Tomcat.

sudo systemctl start tomcat

Permita que Tomcat se inicie en el arranque del sistema.

sudo systemctl enable tomcat

Comprobar el estado de Tomcat.

sudo systemctl status tomcat
Output
● tomcat.service - Tomcat
     Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: enabled)
     Active: active (running) since Wed 2022-04-20 08:57:23 UTC; 6s ago
    Process: 5155 ExecStart=/opt/tomcat/bin/startup.sh (code=exited, status=0/SUCCESS)
   Main PID: 5162 (java)
      Tasks: 29 (limit: 1151)
     Memory: 136.4M
     CGroup: /system.slice/tomcat.service

Instalar Nginx

Instale Nginx usando el siguiente comando.

sudo apt install nginx

Eliminar configuraciones predeterminadas

sudo rm /etc/nginx/sites-available/default
sudo rm /etc/nginx/sites-enabled/default

Configurar proxy Nginx para Tomcat

Crear nueva configuración de Nginx

sudo nano /etc/nginx/sites-available/yourdomainname.conf

Pegue lo siguiente

server {
     listen [::]:80;
     listen 80;

     server_name yourdomainname.com www.yourdomainname.com;

     location / {
         proxy_pass http://localhost:8080;
         proxy_http_version 1.1;
         proxy_set_header Upgrade $http_upgrade;
         proxy_set_header Connection 'upgrade';
         proxy_set_header Host $host;
         proxy_cache_bypass $http_upgrade;
    }
}

Guarde y salga del archivo.

Habilite su configuración creando un enlace simbólico.

sudo ln -s /etc/nginx/sites-available/yourdomainname.conf /etc/nginx/sites-enabled/yourdomainname.conf

Instala Let's Encrypt SSL con Certbot

Instale el paquete Certbot.

sudo apt install python3-certbot-nginx

Instale el certificado SSL usando el siguiente comando.

sudo certbot --nginx --redirect --no-eff-email --agree-tos -m [email protected] -d yourdomainname.com -d www.yourdomainname.com

Si su dominio apunta al servidor, se instalará el certificado SSL gratuito y la redirección de HTTP a HTTPS se configurará automáticamente y Nginx se reiniciará solo para que los cambios surtan efecto.

Si desea reiniciar, puede verificar su configuración de Nginx y reiniciarlo.

sudo nginx -t
sudo service nginx restart

Prepárese para un puesto de trabajo como profesional de tecnología de la información con sistema operativo Linux

Verificar la instalación de Tomcat

Ahora comprueba tu dominio en tu navegador.

Haz clic en Aplicación de administrador. , se le pedirá que ingrese el nombre de usuario y la contraseña. Usa el que hemos configurado en la sección de usuarios de Tomcat.

También puede echar un vistazo al Administrador de host página.

También puede ver el estado del servidor.

Conclusión

Ahora ha aprendido cómo instalar Apache Tomcat en Ubuntu 20.04 y protegerlo con Nginx y Let's Encrypt SSL.

Gracias por tu tiempo. Si tiene algún problema o comentario, deje un comentario a continuación.


Linux
  1. Cómo instalar Apache en Ubuntu 18.04

  2. Cómo instalar Apache en Ubuntu 20.04

  3. Cómo instalar Nginx en Ubuntu 16.04

  4. Cómo instalar Elgg con Nginx en Ubuntu 14.04

  5. Cómo instalar Joomla con Nginx en Ubuntu 18.04

Cómo instalar WordPress con Nginx en Ubuntu

Cómo instalar SuiteCRM en Ubuntu 20.04 con Apache/Nginx

Cómo instalar MediaWiki en Ubuntu 20.04 con Apache/Nginx

Cómo instalar Apache Tomcat en Ubuntu 20.04 LTS

Cómo instalar Apache Tomcat en Ubuntu 18.04

Cómo instalar Apache Tomcat 10 en Ubuntu 22.04 con Nginx