Ricerca nel sito web

Come installare Apache Tomcat in RHEL 8


Apache Tomcat è un server Web open source, leggero, potente e ampiamente utilizzato, sviluppato e gestito da Apache Foundation. Si tratta di un'implementazione di Java Servlet, JavaServer Pages (JSP), Java Expression Language (EL) e Java WebSocket e fornisce un server HTTP Java puro per eseguire applicazioni basate sul Web Java.

Questo articolo ti guiderà attraverso l'installazione e la configurazione di Apache Tomcat 9 con accesso remoto all'interfaccia web su RHEL 8 Linux.

Se desideri avere Tomcat su RHEL/CentOS 7, segui questo articolo per installare Apache Tomcat su RHEL/CentOS 7.

Passaggio 1: installazione di Java su RHEL 8

Per installare Java su RHEL 8, aggiorna innanzitutto i pacchetti di sistema e installa la versione disponibile predefinita di Java 8 o Java 11< utilizzando i seguenti comandi dnf come mostrato.

dnf update
dnf install java-1.8.0-openjdk-devel  	#install JDK 8
OR
dnf install java-11-openjdk-devel		#install JDK 11

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

java -version
Uscita del campione
openjdk version "1.8.0_222"
OpenJDK Runtime Environment (build 1.8.0_222-b10)
OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)

Passaggio 2: installazione di Apache Tomcat su RHEL 8

Una volta installato JAVA sul sistema, ora è il momento di scaricare l'ultima versione di Apache Tomcat (ovvero 9.0.24) che è la più versione stabile recente al momento della stesura di questo articolo.

Se desideri verificare la versione, vai alla pagina di download ufficiale di Apache e controlla se è disponibile una versione più recente da scaricare.

  1. https://tomcat.apache.org/download-90.cgi

In alternativa, puoi scaricare l'ultima versione di Apache Tomcat utilizzando il seguente comando wget e configurarlo come mostrato.

cd /usr/local
wget http://www-us.apache.org/dist/tomcat/tomcat-9/v9.0.24/bin/apache-tomcat-9.0.24.tar.gz
tar -xvf apache-tomcat-9.0.24.tar.gz
mv apache-tomcat-9.0.24 tomcat9

Nota: se è disponibile una versione più recente di Apache Tomcat, assicurati di sostituire il numero di versione sopra con la versione più recente.

Il server Apache Tomcat è ora distribuito nella directory /usr/local/tomcat9, puoi verificare i contenuti eseguendo il comando pwd ed elencare anche il contenuto della directory.

pwd tomcat9/
ls -l tomcat9/

Di seguito è riportata una descrizione di ciascuna sottodirectory nella directory di installazione di Apache Tomcat.

  • bin: contiene gli eseguibili.
  • conf: contiene i file di configurazione.
  • lib: memorizza i file della libreria.
  • log: memorizza i file di registro.
  • temp: contiene file temporanei.
  • webaaps: memorizza i file delle applicazioni Web.

Passaggio 3: esecuzione di Apache Tomcat sotto Systemd in RHEL 8

Per gestire facilmente il demone Apache Tomcat, è necessario eseguirlo come servizio in systemd (gestore di sistema e servizi). Il servizio verrà eseguito con le autorizzazioni di un utente di sistema chiamato tomcat che dovrai creare utilizzando il comando useradd.

useradd -r tomcat

Una volta creato l'utente tomcat, concedigli autorizzazioni e diritti di proprietà sulla directory di installazione di Tomcat e su tutti i suoi contenuti utilizzando il seguente comando chown.

chown -R tomcat:tomcat /usr/local/tomcat9
ls -l /usr/local/tomcat9

Successivamente, crea un file unit tomcat.service nella directory /etc/systemd/system/ utilizzando il tuo editor di testo preferito.

vi /etc/systemd/system/tomcat.service

Copia e incolla la seguente configurazione nel file tomcat.service.

[Unit]
Description=Apache Tomcat Server
After=syslog.target network.target

[Service]
Type=forking
User=tomcat
Group=tomcat

Environment=CATALINA_PID=/usr/local/tomcat9/temp/tomcat.pid
Environment=CATALINA_HOME=/usr/local/tomcat9
Environment=CATALINA_BASE=/usr/local/tomcat9

ExecStart=/usr/local/tomcat9/bin/catalina.sh start
ExecStop=/usr/local/tomcat9/bin/catalina.sh stop

RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target

Salva il file ricarica la configurazione di systemd per applicare le modifiche recenti utilizzando il seguente comando.

systemctl daemon-reload

Quindi avvia il servizio tomcat, abilitalo all'avvio automatico all'avvio del sistema e verifica lo stato utilizzando i seguenti comandi.

systemctl start tomcat.service
systemctl enable tomcat.service
systemctl status tomcat.service

Tomcat utilizza le porte 8080 e 8443 rispettivamente per le richieste HTTP e HTTPS. Puoi anche verificare che il demone sia attivo e in ascolto controllando la porta HTTP tra tutte le porte di ascolto sul sistema utilizzando il comando netstat.

netstat -tlpn

Se hai il servizio firewalld in esecuzione, devi aprire le porte 8080 e 8443 prima di accedere all'interfaccia web per Tomcat, utilizzando il comando firewall-cmd come mostrato.

firewall-cmd --zone=public --permanent --add-port=8080/tcp
firewall-cmd --zone=public --permanent --add-port=8443/tcp
firewall-cmd --reload

Passaggio 4: accedere all'interfaccia Web Apache Tomcat

Ora che hai installato, configurato e avviato Tomcat come servizio e hai consentito le richieste al demone tramite il firewall, puoi testare l'installazione provando ad accedere all'interfaccia web utilizzando l'URL.

http://localhost:8080
OR
http://SERVER_IP:8080

Una volta visualizzata la pagina mostrata nello screenshot, hai installato con successo Tomcat.

Tomcat include un'applicazione web chiamata Manager utilizzata per distribuire una nuova applicazione web dai contenuti caricati di un file WAR, distribuire una nuova applicazione web, elenca le applicazioni Web attualmente distribuite e le sessioni attualmente attive per tali app Web e molto altro ancora.

Fornisce inoltre un'applicazione Host Manager utilizzata per gestire (creare, eliminare, ecc.) host virtuali all'interno di Tomcat.

Passaggio 5: abilitare l'autenticazione HTTP per Tomcat Manager e Host Manager

Per garantire l'accesso limitato alle app Manager e Host Manager in un ambiente di produzione, è necessario configurare l'autenticazione HTTP di base in /usr/local/tomcat9/conf /tomcat-users.xml file di configurazione.

vi /usr/local/tomcat9/conf/tomcat-users.xml

Copia e incolla la seguente configurazione all'interno dei tag e come mostrato nello screenshot. Questa configurazione aggiunge i ruoli admin-gui e manager-gui a un utente denominato "admin " con una password "tomhost@ 80”.

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

Salvare le modifiche nel file ed uscire.

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

Per impostazione predefinita, l'accesso alle app Manager e Host Manager è limitato a localhost, il server su cui Tomcat è installato e funzionante. Ma puoi abilitare l'accesso remoto a un indirizzo IP o una rete specifica, ad esempio la tua LAN.

Per abilitare l'accesso remoto all'app Manager, apri e modifica il file di configurazione /opt/apache-tomcat-9.0.24/webapps/host-manager/META-INF/context.xml.

vi /usr/local/tomcat9/webapps/manager/META-INF/context.xml

Quindi cercare la riga seguente.

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

modificalo in questo per consentire l'accesso a Tomcat dall'indirizzo IP 192.168.56.10.

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

Puoi anche consentire l'accesso a Tomcat dalla rete locale 192.168.56.0.

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

o consentire l'accesso a Tomcat da qualsiasi host o rete.

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

Quindi salva le modifiche nel file e chiudilo.

Allo stesso modo, abilita l'accesso remoto all'app Host Manager nel file /usr/local/tomcat9/webapps/host-manager/META-INF/context.xml come mostrato sopra .

Successivamente, riavvia il servizio tomcat per applicare le modifiche recenti.

systemctl restart tomcat.service

Passaggio 7: accedere alle app Web Tomcat Manager

Per accedere all'app Web Tomcat Manager, puoi fare clic sul collegamento mostrato nello screenshot o utilizzare l'URL.

http://localhost:8080/manager
OR
http://SERVER_IP:8080/manager

Ti verrà chiesto di autenticarti: inserisci il nome utente e la password che hai creato in precedenza per accedere all'app manager come mostrato nello screenshot.

Lo screenshot seguente mostra l'interfaccia HTML dell'app Manager in cui puoi distribuire una nuova applicazione web dai contenuti caricati di un file WAR, distribuire una nuova applicazione web o elencare le app esistenti e fare altro.

Passaggio 8: accedere alle app Web Tomcat Host Manager

Per accedere a Gestione host, vai a uno qualsiasi dei seguenti URL.

http://localhost:8080/host-manager
OR
http://SERVER_IP:8080/host-manager

Congratulazioni! Hai installato e configurato con successo Apache Tomcat sul tuo server RHEL 8. Per ulteriori informazioni, consultare la documentazione di Apache Tomcat 9.0.