Introduzione
Tomcat è un pacchetto di implementazione Java open source sviluppato dalla Apache Software Foundation. Scopri come installare Tomcat 9 su CentOS 7 in questo tutorial.
Prerequisiti
- Un account utente con sudo privilegi
- Accesso a una finestra di terminale/riga di comando (Ctrl-Alt-F2)
Verifica se Java è installato
Tomcat si basa su un'installazione Java esistente. Verifica se sul tuo sistema è installato Java. Immettere quanto segue in una finestra di terminale:
java -version
Dovresti eseguire almeno JDK 1.8.0. Se il sistema segnala una versione precedente o non è installato Java, installa Java immettendo:
sudo yum install java-1.8.0-openjdk-devel
Crea un utente e un gruppo Tomcat
Tomcat non deve essere eseguito come root . Crea un nuovo utente e gruppo inserendo:
sudo useradd -m -U -d /opt/tomcat -s /bin/false tomcat
Scarica Tomcat 9
Tomcat 9.0.20 è l'ultima versione al momento della stesura di questo articolo. Una versione successiva potrebbe essere disponibile sulla pagina di download ufficiale. In alternativa, inserisci quanto segue:
cd /tmp
wget https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.56/bin/apache-tomcat-9.0.56.tar.gz
Estrai il file .tar.gz
Per estrarre il file Tomcat tar.gz in /opt/tomcat , inserisci quanto segue:
sudo tar xzvf apache-tomcat-9*tar.gz -C /opt/tomcat --strip-components=1
Modifica le autorizzazioni utente Tomcat
Il nuovo utente Tomcat ha bisogno dei privilegi di esecuzione sulla directory.
Immettere quanto segue:
sudo chown -R tomcat:tomcat /opt/tomcat
sudo sh -c 'chmod +x /opt/tomcat/bin/*.sh'
Crea un file di unità di sistema
La creazione di un file di unità di sistema consente a Tomcat di essere eseguito come servizio.
1. Trova la posizione Java con il seguente comando:
readlink -f $(which java)
Copia la cartella principale di /jre/bin/java per il passaggio successivo.
1. Per creare un tomcat.service file, utilizzare il comando:
sudo nano /etc/systemd/system/tomcat.service
2. Nel file, inserisci quanto segue:
[Unit]
Description=Apache Tomcat Web Application Container
After=network.target
[Service]
Type=oneshot
RemainAfterExit=yes
User=tomcat
Group=tomcat
Environment="JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.312.b07-1.el7_9.x86_64/"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom -Djava.awt.headless=true"
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
Incolla il percorso del passaggio precedente in Environment="JAVA_HOME=<path>"
linea.
3. Salva e chiudi il file.
4. Aggiorna il sistema:
sudo systemctl daemon-reload
5. Imposta il servizio Tomcat per l'avvio all'avvio:
sudo systemctl enable tomcat
6. Avvia il servizio Tomcat:
sudo systemctl start tomcat
7. Verifica che il servizio Tomcat sia installato e in esecuzione:
sudo systemctl status tomcat
Regola il firewall
Il servizio Tomcat necessita di accesso a Porta 8080 .
Consenti traffico inserendo i comandi:
firewall-cmd --zone=public --permanent --add-port=8080/tcp
Il messaggio success
stampa sul terminale. Ricarica il firewall per applicare l'opzione:
firewall-cmd --reload
Dovresti essere in grado di vedere il server Tomcat in un browser web.
Inserisci questo indirizzo web in una finestra del browser:
http://server_ip:8080
Ad esempio, se esegui Tomcat su un server locale, utilizza:
http://localhost:8080
Impostazione dell'interfaccia di gestione Web
1. Per creare un utente che acceda all'interfaccia di gestione Web, modificare il file utente immettendo:
sudo nano /opt/tomcat/conf/tomcat-users.xml
2. Elimina tutto dal file e aggiungi quanto segue:
<tomcat-users>
<!--
Comments
-->
<role rolename="admin-gui"/>
<role rolename="manager-gui"/>
<user username="admin" password="good_password" roles="admin-gui,manager-gui"/>
</tomcat-users>
Sostituisci password_buona con una password sicura a tua scelta.
Salva il file ed esci. Ora dovresti essere in grado di accedere all'interfaccia di gestione web in un browser web. Visita http://server_ip:8080/manager/html per utilizzare l'interfaccia.
Configura accesso remoto (opzionale)
Per impostazione predefinita, Tomcat è accessibile solo dal computer locale su cui è installato. Questo passaggio ti consente di concedere l'accesso a un indirizzo IP specifico.
1. Modifica il seguente file:
sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml
2. Aggiungi quanto segue:
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.0.*" />
3. Salva il file ed esci.
4. Ripetere la procedura per il secondo file:
sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml
5. Aggiungi quanto segue:
<Valve className="org.apache.catalina.valves.RemoteAddrValve"
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|192.168.0.*" />
6. Salva ed esci.
Ciò garantirà l'accesso a qualsiasi sistema in 192.168.0.* gamma di indirizzi IP.
È possibile modificare l'indirizzo IP in un intervallo specifico per la propria intranet. In alternativa, puoi utilizzare l'indirizzo IP di un singolo sistema.
L'asterisco agisce come un carattere jolly per consentire più indirizzi IP. La concessione dell'accesso completo può lasciare vulnerabilità di sicurezza. Abilita invece solo i sistemi con una necessità aziendale per accedere a Tomcat.