Ricerca nel sito web

Come installare Apache Tomcat 9 su Debian 10


Apache Tomcat è un software server di applicazioni Web gratuito, maturo, robusto e popolare utilizzato per servire applicazioni basate su Java. Si tratta di un'implementazione open source delle tecnologie Java Servlet, JavaServer Pages (JSP), Java Expression Language e Java WebSocket, sviluppate dalla Apache Software Foundation (ASF).

Leggi anche: Come installare Apache Tomcat in Ubuntu

Questo tutorial ti guiderà attraverso il processo di installazione e configurazione dell'ultima versione di Tomcat 9 sul tuo server Linux Debian 10.

Prima di iniziare con questo tutorial, assicurati di avere un account utente non root con privilegi sudo sul tuo server. In caso contrario, puoi configurarne uno utilizzando la nostra guida su Come creare un nuovo utente Sudo su Ubuntu/Debian.

Passaggio 1: installa Java su Debian 10

Per installare l'ultima versione di Tomcat 9 sul tuo server Debian 10, devi avere Java installato sul server in modo da poter eseguire Java web codice dell'applicazione.

Innanzitutto, aggiorna l'indice del pacchetto software di sistema utilizzando il comando apt come mostrato.

sudo apt update

Quindi installa il pacchetto Java Development Kit utilizzando il comando apt.

sudo apt install default-jdk

Una volta completata l'installazione di Java, controlla la versione di Java installata sul sistema utilizzando il seguente comando.

java -version

Passaggio 2: installa Tomcat in Debian 10

Per motivi di sicurezza, Tomcat deve essere installato ed eseguito da un utente non privilegiato (ovvero non root). Creeremo un nuovo gruppo e utente tomcat per eseguire il servizio Tomcat nella directory /opt/tomcat (installazione Tomcat).

sudo mkdir /opt/tomcat
sudo groupadd tomcat
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat

Una volta configurato l'utente tomcat, scarica l'ultima versione di Tomcat 9 (ovvero 9.0.30) dalla pagina Download di Tomcat 9 oppure utilizza il seguente strumento da riga di comando curl per scaricare il file tar ed estrarre l'archivio nella directory /opt/tomcat.

curl -O http://www-eu.apache.org/dist/tomcat/tomcat-9/v9.0.30/bin/apache-tomcat-9.0.30.tar.gz
sudo tar xzvf apache-tomcat-9*tar.gz -C /opt/tomcat --strip-components=1

Successivamente, assegna le autorizzazioni all'utente tomcat per avere accesso alla directory /opt/tomcat di installazione di Tomcat.

cd /opt/tomcat
sudo chgrp -R tomcat /opt/tomcat
sudo chmod -R g+r conf
sudo chmod g+x conf
sudo chown -R tomcat webapps/ work/ temp/ logs/

Passaggio 3: creare un file di servizio systemd Tomcat

Creeremo un nuovo file di servizio systemd per gestire ed eseguire Tomcat come servizio in systemd. Per creare un file di servizio, dovresti sapere dove è installato Java, poiché viene indicato come JAVA_HOME utilizzando il seguente comando.

sudo update-java-alternatives -l

Dall'output sopra, il nostro JAVA_HOME è:

/usr/lib/jvm/java-1.11.0-openjdk-amd64

Una volta conosciuto il nostro JAVA_HOME, possiamo creare il file di servizio systemd chiamato tomcat.service nel file /etc/systemd/system< directory eseguendo.

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

Incolla i seguenti contenuti nel tuo file tomcat.service.

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

[Service]
Type=forking

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

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

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

[Install]
WantedBy=multi-user.target

Successivamente, ricarica systemd per applicare le nuove modifiche, in modo che conosca il nostro file tomcat.service.

sudo systemctl daemon-reload

Infine, puoi avviare e verificare lo stato del servizio Tomcat eseguendo i seguenti comandi.

sudo systemctl start tomcat
systemctl status tomcat
systemctl enable tomcat

Passaggio 4: abilitare l'accesso per Tomcat Manager e Host Manager

Per accedere alle app Web manager-gui e admin-gui fornite con Tomcat, dobbiamo abilitare l'accesso al nostro Tomcat server modificando il file tomcat-users.xml come mostrato.

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

Aggiungi la seguente configurazione all'interno dei tag , con il nome utente e la password corretti come mostrato.

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

La configurazione di cui sopra implica che si aggiungano i ruoli admin-gui e manager-gui a un utente denominato "admin" con una password "tecmint123”.

Passaggio 5: abilitare l'accesso remoto a Tomcat Manager e Host Manager

Per motivi di sicurezza, l'accesso alle app Tomcat Manager e Host Manager è bloccato per impostazione predefinita sull'host locale (il server in cui è distribuito).

Tuttavia, puoi abilitare l'accesso remoto da un indirizzo IP specifico o da qualsiasi host o rete alle app Tomcat Manager e Host Manager come spiegato di seguito.

Per l'app Tomcat Manager, digita:

sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml

Per l'app Host Manager, digita:

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

All'interno, commenta la restrizione dell'indirizzo IP per consentire l'accesso da qualsiasi rete.

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

In alternativa, abilita l'accesso remoto dal tuo indirizzo IP 192.168.0.103 o da una rete (192.168.0.0) aggiungendo l'indirizzo IP all'elenco.

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.0.103" />-->
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.0.*" />-->

Salva i file e riavvia il servizio Tomcat per mantenere effettive le modifiche.

sudo systemctl restart tomcat

Passaggio 6: accedere all'interfaccia Web di Tomcat

Per accedere all'interfaccia web Tomcat da qualsiasi browser, è necessario aprire la porta 8080 per consentire il traffico al servizio Tomcat sul firewall digitando.

sudo ufw allow 8080

Ora accedi all'interfaccia di gestione web Tomcat accedendo al nome di dominio o all'indirizzo IP del tuo server seguito dalla porta 8080 nel tuo browser.

http://server_domain_or_IP:8080

Accedi all'App Manager all'URL sottostante, dovrai inserire le credenziali dell'account.

http://server_domain_or_IP:8080/manager/html

Accedi a Host Manager all'URL seguente, dovrai inserire le credenziali dell'account.

http://server_domain_or_IP:8080/host-manager/html/

È tutto! L'installazione di Tomcat è completa. Ora puoi distribuire ed eseguire applicazioni Web Java. Se hai domande o pensieri da condividere, raggiungici tramite il modulo di commento qui sotto.