GNU/Linux >> Linux Esercitazione >  >> Rocky Linux

Come installare Apache Tomcat su Rocky Linux 8

Apache Tomcat è un server Web open source che consente di eseguire applicazioni Web scritte in Java. Proprio come il popolare server web Apache, anche Tomcat è sviluppato e gestito da una comunità gratuita di sviluppatori.

Come Apache, Apache Tomcat è un server HTTP che serve HTTP ed è anche un contenitore di servlet. Apache è un server HTTP generico che supporta diverse opzioni avanzate che Tomcat non ha. Il Tomcat funziona principalmente come servlet e server JSP per le tecnologie Java a scopo di sviluppo. Quindi può essere utilizzato per fornire i tuoi servlet e JSP Java. Quindi, puoi creare il tuo file WAR (Web Application Archive) nel tuo progetto Java e salvarlo semplicemente nella directory di distribuzione Tomcat.

Qui impariamo come installare e configurare Apache Tomcat su Rocky Linux 8... Tuttavia, i passaggi indicati in questo tutorial sono applicabili anche per CentOS 8, RHEL e AlmaLinux 8... 

requisiti

  • Server Linux RHEL a 64 bit o quello basato su di esso come Rocky, CentOS o AlmaLinux
  • 2 GB di memoria o più in base alle tue esigenze
  • Accesso a un utente con sudo diritti
  • Accesso SSH per il server CLI, in modo da poter copiare e incollare facilmente i comandi.

Aggiorna il tuo sistema Rocky Linux

Esegui il comando di aggiornamento del sistema per ottenere l'ultimo stato stabile per tutti i pacchetti installati sul tuo sistema Rocky Linux. Ecco il comando-

sudo dnf update

Installa l'ambiente di runtime OpenJDK

Java opensource JRE e JDK sono entrambi disponibili nel repository di Rocky Linux e lo stesso vale per altre distribuzioni di server Linux simili. Qui installeremo OpenJDK 11, puoi anche passare alla versione 8 se vuoi.

Comando per OpenJDK 11

sudo dnf install java-11-openjdk.x86_64

Gli sviluppatori possono anche installare l'ambiente di sviluppo OpenJDK 11

sudo dnf install java-11-openjdk-devel.x86_64

or

Per OpenJDK 8

sudo dnf install java-1.8.0-openjdk.x86_64

Per l'ambiente di sviluppo OpenJDK 11

sudo dnf install java-1.8.0-openjdk-devel.x86_64

Verifica versione Java

Una volta completata l'installazione di una delle versioni sopra indicate, verificarla utilizzando il comando seguente per confermare l'installazione.

java --version

L'output sarà così-

openjdk 11.0.11 2021-04-20 LTS
OpenJDK Runtime Environment 18.9 (build 11.0.11+9-LTS)
OpenJDK 64-Bit Server VM 18.9 (build 11.0.11+9-LTS, mixed mode, sharing)

Crea un utente non root per Tomcat

Creiamo un gruppo e un utente che avrà accesso solo a Tomcat e non può essere utilizzato per altri scopi come l'accesso al sistema per installare o eliminare qualsiasi cosa.

Aggiungi gruppo Tomcat-

sudo groupadd tomcat

Crea una directory per salvare i file Apache Tomcat

sudo mkdir /opt/tomcat

Aggiungi utente e imposta la directory sopra creata come cartella home e disabilita anche i suoi diritti di accesso usando il comando seguente-

sudo useradd -s /bin/nologin -g tomcat -d /opt/tomcat tomcat

Scarica l'ultimo Apache Tomcat 10 su Rocky Linux

Sono disponibili più versioni di Tomcat come Tomcat 8, 9 e 10. Tutte queste tre supportano Java 8 e versioni successive. Pertanto, puoi scaricare quello secondo la tua scelta. Tuttavia, qui stiamo scaricando l'ultima versione di Tomcat 10 di Apache disponibile durante la stesura di questo articolo. Scarica quello dal sito ufficiale.

Seleziona la versione di Tomcat che desideri scaricare, quindi fai clic con il pulsante destro del mouse su Tar.gz file e copiarne il link . Dopodiché incollalo con wget comando per scaricarlo direttamente da terminale.

wget paste-link

Ad esempio- qui stiamo scaricando Tomcat 10, quindi copiamo il link disponibile per quello.

wget https://downloads.apache.org/tomcat/tomcat-10/v10.0.5/bin/apache-tomcat-10.0.5.tar.gz

Estrai e sposta i file

Una volta completato il download, estrai il Tar file e copialo in /opt/tomcat directory che abbiamo creato in precedenza.

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

Per verificare se è stato estratto e copiato correttamente, digita-

ls /opt/tomcat

Risultato:

Imposta autorizzazione

Poiché abbiamo già creato un utente dedicato per Tomcat, gli consentiamo di leggere i file in esso disponibili.

sudo chown -R tomcat: /opt/tomcat

Inoltre, consenti l'esecuzione dello script disponibile all'interno della cartella.

sudo sh -c 'chmod +x /opt/tomcat/bin/*.sh'

Crea file di servizio Apache Tomcat

Per impostazione predefinita, non avremo un file di unità Systemd per Tomcat come il server Apache per arrestare, avviare e abilitare i suoi servizi. Pertanto, ne creiamo uno, in modo da poterlo gestire facilmente.

sudo dnf install nano -y
sudo nano /etc/systemd/system/tomcat.service

Incolla il seguente codice al suo interno-

[Unit]
Description=Tomcat webs servlet container
After=network.target

[Service]
Type=forking

User=tomcat
Group=tomcat

Environment="JAVA_HOME=/usr/lib/jvm/jre"
Environment="JAVA_OPTS=-Djava.awt.headless=true -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

Per salvare premi Ctrl+X , digita –Y e premi Invio Chiave.

Avvia, abilita e controlla lo stato del servizio

Dopo aver creato correttamente il file dell'unità di sistema per Tomcat, avvia il suo servizio utilizzando i comandi indicati di seguito-

Inizia 

sudo systemctl start tomcat

Abilita

sudo systemctl enable --now tomcat

Controlla lo stato

sudo systemctl status tomcat

Risultato

● tomcat.service - Tomcat webs servlet container
Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset:>
Active: active (running) since Fri 2021-05-07 20:44:20 IST; 8s ago
Process: 17781 ExecStart=/opt/tomcat/bin/startup.sh (code=exited, status=0/SU>
Main PID: 17788 (java)
Tasks: 29 (limit: 20249)
Memory: 155.6M
CGroup: /system.slice/tomcat.service
└─17788 /usr/lib/jvm/jre/bin/java -Djava.util.logging.config.file=/o>

May 07 20:44:20 demo.how2shout.local systemd[1]: Starting Tomcat webs servlet c>
May 07 20:44:20 demo.how2shout.local systemd[1]: Started Tomcat webs servlet co>
.....

Apri la porta 8080 in Rocky Linux Firewall

Per accedere all'interfaccia web di Apache Tomcat al di fuori del localhost, dobbiamo aprire la porta 8080 nel firewall di Rocky Linux, CentOS o Almalinux che stai utilizzando.

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

Accedi all'interfaccia web

Apri il browser, se stai utilizzando il browser sullo stesso sistema in cui hai installato Tomcat, usa semplicemente-

http://localhost:8080

Tuttavia , il browser su qualsiasi altro sistema che può accedere all'indirizzo IP del tuo server su cui hai installato Apache Tomcat e digita l'indirizzo con numero di porta 8080.

Esempio- L'indirizzo IP del nostro server è http://192.168.189.171/ con numero di porta 8080, sarà così-

http://192.168.189.171:8080

Nota – Apparirà un errore 403 durante l'utilizzo su qualsiasi altro PC per accedere all'interfaccia di gestione.

403 Accesso negato su Tomcat 10/9/8 errore

Quando facciamo clic su "Stato del server “, “App Manager " e "Gestione host ” vedrai un errore 403 Accesso negato. Apparirà qualcosa come indicato di seguito.

Errore-

403 Access Denied
You are not authorized to view this page.
By default the Host Manager is only accessible from a browser running on the same machine as Tomcat. If you wish to modify this restriction, you'll need to edit the Host Manager's context.xml file.
............................

Per risolvere questo errore, procedi nel seguente modo...

1. Aggiungi nome utente e password al file XML utente Tomcat.

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

Alla fine, appena prima di </tomcat-users> tag copia e incolla le seguenti righe.
Nota – Modificare il nome utente e password , con quello che vuoi impostare per il tuo Tomcat.

<role rolename="admin"/>
<role rolename="admin-gui"/>
<role rolename="manager"/>
<role rolename="manager-gui"/>

<user username="h2s" password="pwd" roles="admin,admin-gui,manager,manager-gui"/>

Salva il file ed esci- Ctrl+X , digita- Y, e premi Invio chiave.

2. Modifica il file XML di Manager Conext

Modifica il file di contesto  

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

Nel file, scorri e vai alla fine e commenta il seguente blocco di testo-

<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />

Aggiungi solo <!-- all'inizio e --> alla fine , dopodiché, sembrerà qualcosa di simile-

<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->

Salva il file ed esci- Ctrl+X , digita- Y, e premi Invio chiave.

Dovrebbe apparire come è stato mostrato, nello screenshot qui sotto...

3. Modifica il file Context.XML di Host Manager

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

Proprio come sopra, aggiungi anche <!-- all'inizio e --> alla fine del testo riportato di seguito nel file, dopodiché, sembrerà qualcosa di simile-

<!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> -->

Salva il file ed esci .

Nota -:commentando, Tomcat non sarà in grado di leggere questo e consentire all'utente di accedere al backend di Manager utilizzando un PC remoto.

4. Riavvia il servizio Tomcat-

sudo systemctl restart tomcat

Accedi all'interfaccia di gestione web di Tomcat

Infine, aggiorna il browser e quando fai clic su App Manager pulsante per accedere al backend, il browser chiederà nome utente e password che hai impostato nel file XML utente Tomcat . Forniscilo e accedi per accedervi.

Aggiungi nome utente e password

Stato del server

Gestore di applicazioni Web

Tomcat Virtual Host Manager

Quindi, questo è stato un tutorial completo per installare e accedere ad Apache Tomcat su Linux Rocky, AlmaLinux e CentOS basati su RHEL.


Rocky Linux
  1. Come installare Python 3.9 su Rocky Linux 8

  2. Come installare Apache Tomcat 10 con Nginx su Rocky Linux 8

  3. Come installare Apache Maven su Rocky Linux/Alma Linux 8

  4. Come installare Apache Kafka su Rocky Linux 8

  5. Come installare Redis su Rocky Linux 8

Come installare TeamViewer su Rocky Linux 8

Come installare Anaconda su Rocky Linux 8

Come installare Snap su Rocky Linux 8

Come installare PHP 7.4 su Rocky Linux 8

Come installare Python 3.9 su Rocky Linux

Come installare PHP 8 su Rocky Linux 8