GNU/Linux >> Linux Esercitazione >  >> Linux

Come installare Apache Tomcat 10 su Ubuntu 20.04 con Nginx

Apache Tomcat è un server Web open source e un servlet container utilizzato principalmente per il server di applicazioni basate su Java.

In questa guida imparerai come installare Apache Tomcat 10 su Ubuntu 20.04 e proteggere la configurazione con Nginx e Let's Encrypt SSL.

Prerequisiti

  • Un server con sistema operativo Ubuntu 20.04
  • Un utente con privilegi sudo.

Configurazione iniziale

Inizia aggiornando i pacchetti del server all'ultima versione disponibile.

sudo apt update
sudo apt dist-upgrade -y

Crea nuovo utente per Tomcat

Sarebbe meglio se Tomcat venisse eseguito come il proprio utente non privilegiato. Esegui il comando seguente per creare un nuovo utente con i privilegi richiesti per Tomcat. Questo utente non potrà accedere a SSH.

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

Installa Java

Installa JDK predefinito utilizzando il comando seguente.

sudo apt install default-jdk

Una volta completata l'installazione, controlla la versione utilizzando il seguente comando.

java -version

Il tuo output dovrebbe essere simile a quello qui sotto.

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)

Installa Apache Tomcat

Scarica l'ultima versione di Tomcat dalla loro pagina di download ufficiale. Scegli il tar.gz nella sezione principale.

Scarica l'archivio usando wget.

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

Estrai il contenuto in /opt/tomcat directory.

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

Configura le autorizzazioni corrette per i file Tomcat.

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

Configura utenti amministratori

Ora dobbiamo configurare gli utenti che possono accedere a Gestione host e il Gestore pagine in Tomcat.

Aggiungi gli utenti con password in /opt/tomcat/conf/tomcat-users.xml

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

Aggiungi le seguenti righe prima del tag di fine.

<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" />

Ora abbiamo 2 utenti che possono accedere alle pagine Gestore e Gestore Host.

Configura Tomcat come servizio

Qui configureremo un servizio systemd per gestire Tomcat in modo che si avvii, si arresti e si riavvii automaticamente.

Prendi nota della posizione Java.

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

Crea un file systemd.

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

Aggiungi i seguenti contenuti al file.

[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

Sostituisci JAVA_HOME variabile con quella che hai annotato prima.

Ricarica systemd daemon per rendere effettive le modifiche.

sudo systemctl daemon-reload

Avvia Tomcat.

sudo systemctl start tomcat

Consenti a Tomcat di avviarsi all'avvio del sistema.

sudo systemctl enable tomcat

Controlla lo stato di 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

Installa Nginx

Installa Nginx usando il seguente comando.

sudo apt install nginx

Rimuovi le configurazioni predefinite

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

Configura proxy Nginx per Tomcat

Crea una nuova configurazione Nginx

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

Incolla quanto segue

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;
    }
}

Salva ed esci dal file.

Abilita la tua configurazione creando un link simbolico.

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

Installa Let's Encrypt SSL con Certbot

Installa il pacchetto Certbot.

sudo apt install python3-certbot-nginx

Installa il certificato SSL utilizzando il comando seguente.

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

Se il tuo dominio è puntato al server, il certificato SSL gratuito verrà installato e il reindirizzamento da HTTP a HTTPS verrà configurato automaticamente e Nginx verrà riavviato da solo affinché le modifiche abbiano effetto.

Se vuoi riavviare puoi controllare la tua configurazione di Nginx e riavviarla.

sudo nginx -t
sudo service nginx restart

Preparati per un ruolo di Professionista dell'Information Technology con sistema operativo Linux

Verifica installazione Tomcat

Ora controlla il tuo dominio nel tuo browser.

Fai clic su App Manager , ti verrà chiesto di inserire nome utente e password. Usa quello che abbiamo configurato nella sezione Utenti Tomcat.

Puoi anche dare un'occhiata a Gestione host pagina.

Puoi anche visualizzare lo stato del server.

Conclusione

Ora hai imparato come installare Apache Tomcat su Ubuntu 20.04 e proteggere con Nginx e Let's Encrypt SSL..

Grazie per il tuo tempo. In caso di problemi o feedback, si prega di lasciare un commento qui sotto.


Linux
  1. Come installare Apache su Ubuntu 18.04

  2. Come installare Apache su Ubuntu 20.04

  3. Come installare Nginx su Ubuntu 16.04

  4. Come installare Elgg con Nginx su Ubuntu 14.04

  5. Come installare Joomla con Nginx su Ubuntu 18.04

Come installare WordPress con Nginx su Ubuntu

Come installare SuiteCRM su Ubuntu 20.04 con Apache/Nginx

Come installare MediaWiki su Ubuntu 20.04 con Apache/Nginx

Come installare Apache Tomcat su Ubuntu 20.04 LTS

Come installare Apache Tomcat su Ubuntu 18.04

Come installare Apache Tomcat 10 su Ubuntu 22.04 con Nginx