Come installare Tomcat 10 su Debian 10

2 apr 2021 5 min di lettura
Come installare Tomcat 10 su Debian 10
Indice dei contenuti

Introduzione

Apache Tomcat è un server Web open source con contenitore servlet per la pubblicazione di applicazioni Web basate su Java. Tomcat è sviluppato e gestito da una comunità aperta di sviluppatori sotto gli auspici della Apache Software Foundation. Ad oggi, Tomcat 10 è l'ultima versione stabile disponibile per l'installazione su ambienti di sviluppo e produzione. Per saperne di più su Apache Tomcat, visitare il sito ufficiale di apache http://tomcat.apache.org/.

Questo tutorial ti aiuterà a installare Apache Tomcat 10 sul sistema Debian 10 Buster Linux.

Prerequisiti

Un sistema Debian 10 in esecuzione con accesso privilegiato alla shell dell'account sudo.

Se desideri installare Tomcat 10 su un server in remoto continua a leggere, altrimenti salta il primo paragrafo "Connessione al Server" e leggi il successivo.

Connessione al Server

Per accedere al server, è necessario conoscere l'indirizzo IP. Avrai anche bisogno dell'username e della password per l'autenticazione. Per connettersi al server come utente root digitare il seguente comando:

ssh root@IP_DEL_SERVER

Successivamente sarà necessario inserire la password dell'utente root.

Se non utilizzate l'utente root potete connettervi con un'altro nome utente utilizzando lo stesso comando, quindi modificare root con il vostro nome_utente:

ssh nome_utente@IP_DEL_SERVER

Successivamente vi verrà chiesto di inserire la password del vostro utente.

La porta standard per connettersi tramite ssh è la 22, se il vostro server utilizza una porta diversa, sarà necessario specificarla utilizzando il parametro -p, quindi digitare il seguente comando:

ssh nome_utente@IP_DEL_SERVER -p PORTA

Installare Java

Tomcat 10 richiedeva JRE 8 o versione successiva installata sul sistema. Se sul sistema non è installato JRE, utilizzare i seguenti comandi per installare OpenJDK e soddisfare i requisiti.

sudo apt update 
sudo apt install default-jdk -y 

Controlla la versione Java attiva corrente:

java -version 
openjdk 11.0.9.1 2020-11-04
OpenJDK Runtime Environment (build 11.0.9.1+1-post-Debian-1deb10u2)
OpenJDK 64-Bit Server VM (build 11.0.9.1+1-post-Debian-1deb10u2, mixed mode, sharing)

Creare un utente Tomcat

È utile disporre di un account utente dedicato per l'esecuzione di un server Tomcat. Quindi creare un nuovo utente con il nome "tomcat", che è consigliato per motivi di sicurezza principalmente per le distribuzioni di produzione.

Per creare un nuovo account, digita:

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

Il comando precedente creerà un utente e un gruppo con il nome "tomcat" nel sistema.

Installare Tomcat su Debian 10

Il team di sviluppo di Apache Tomcat rilascia periodicamente l'ultima versione di Tomcat. Quindi sarà bene controllare il download dell'ultima versione di Tomcat dal server di download ufficiale. Usa il comando seguente wget per scaricare Tomcat 10.

wget https://www-us.apache.org/dist/tomcat/tomcat-10/v10.0.4/bin/apache-tomcat-10.0.4.tar.gz 

Dopo aver scaricato il file di archivio, estrai il file nella directory home di tomcat/opt/tomcat saltando la cartella principale.

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

Quindi, imposta le autorizzazioni appropriate per i file con i comandi chown e chmod.

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

Ora hai l'ultima applicazione Tomcat sul tuo sistema.

Creare un utente Tomcat

Ora, configura il tuo Tomcat con gli account utente per proteggere l'accesso alle pagine di amministrazione/gestore. Per fare ciò, modifica il file conf/tomcat-users.xml nel tuo editor e incolla il seguente codice all'interno dei tag <tomcat-users> </tomcat-users>. Si consiglia di modificare la password nella configurazione seguente con una password ad alta protezione.

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

Aggiungi i seguenti valori. Assicurati di cambiare la password per l'accesso come amministratore e gestore.

<!-- user manager can access only manager section -->
<role rolename="manager-gui" />
<user username="manager" password="_SECRET_PASSWORD_" roles="manager-gui" />

<!-- user admin can access manager and admin section both -->
<role rolename="admin-gui" />
<user username="admin" password="_SECRET_PASSWORD_" roles="manager-gui,admin-gui" />

Salva il file e chiudi.

Abilitare l'accesso Tomcat remoto

Il gestore Tomcat predefinito e le applicazioni gestore host sono accessibili solo per localhost. Per consentire l'accesso a queste pagine dal sistema remoto, è necessario modificare i seguenti file di configurazione.

È possibile consentire un sistema remoto specifico o consentire tutti. Modifica il file context.xml per il gestore e l'applicazione gestore host:

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

Commenta la sezione aggiunta per la restrizione dell'indirizzo IP per consentire le connessioni da qualsiasi luogo:

<Context antiResourceLocking="false" privileged="true" >
  <CookieProcessor className="org.apache.tomcat.util.http.Rfc6265CookieProcessor"
                   sameSiteCookies="strict" />
  <!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->
  ...
</Context>

Modifica anche il context.xml per l'interfaccia host-manager e commenta la sezione simile come sopra.

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

Salva tutti i file e chiudilo.

Creare un file di unità Systemd Tomcat

Tomcat fornisce script bash per avviare e arrestare il servizio. Ma, per semplificare, creare uno script di avvio per gestire Tomcat come servizio systemd. Creiamo un file tomcat.service con il seguente contenuto:

sudo nano /etc/systemd/system/tomcat.service 
[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

[Install]
WantedBy=multi-user.target

Ricarica il servizio daemon systemd per caricare i file appena creati.

sudo systemctl daemon-reload 

Ora avvia l'applicazione Tomcat per la prima volta.

sudo systemctl start tomcat.service 

Quindi, abilita l'avvio automatico del servizio Tomcat per i successivi avviamenti del sistema. Questo è più importante per le distribuzioni di produzione.

sudo systemctl enable tomcat.service 

A partire da ora, l'applicazione Tomcat è in esecuzione sul tuo sistema. È possibile verificare lo stato del servizio eseguendo il comando come di seguito. Assicurati che lo stato mostri " active (running)".

sudo systemctl status tomcat.service 

Questo è tutto. Hai configurato correttamente Tomcat 10 sul tuo sistema Debian.

Accedere all'interfaccia Web di Tomcat

Il server Tomcat predefinito viene eseguito sulla porta 8080. Dopo aver configurato Tomcat sul sistema, è possibile accedere all'interfaccia Web dal sistema. Puoi accedere alle interfacce di Tomcat inserendo l'indirizzo IP del tuo server o un nome di dominio puntato a quel server, seguito dalla porta 8080 nel tuo browser:

Cambia noviello.local con il tuo server ip o dominio o localhost:

http://noviello.local:8080/

Vedrai la Dashboard di Tomcat.

Tomcat Manager App è un'applicazione Web fornita con l'applicazione server Tomcat. L'interfaccia Manager ci fornisce le funzionalità di base di cui abbiamo bisogno per gestire le nostre applicazioni web distribuite.

Fare clic sul pulsante Manager App o digitare direttamente l'URL con l'aggiunta di /manager nel browser per accedervi:

http://noviello.local:8080/manager/

L'app Tomcat Host Manager è un'altra applicazione Web inclusa nell'applicazione server Tomcat. Utilizzato per creare/rimuovere host virtuali all'interno del servizio Tomcat. Un host virtuale consente di definire più nomi host su un singolo server.

Fare clic sul pulsante Host Manager o digitare direttamente l'URL con l'aggiunta di /host-manager per accedervi:

http://noviello.local:8080/host-manager/

Conclusione

Congratulazioni, hai un server Tomcat in esecuzione su un sistema Debian. È possibile distribuire un'applicazione basata su Java utilizzando il server Tomcat.

Support us with a

Successivamente, completa il checkout per l'accesso completo a Noviello.it.
Bentornato! Accesso eseguito correttamente.
Ti sei abbonato con successo a Noviello.it.
Successo! Il tuo account è completamente attivato, ora hai accesso a tutti i contenuti.
Operazione riuscita. Le tue informazioni di fatturazione sono state aggiornate.
La tua fatturazione non è stata aggiornata.