GNU/Linux >> Linux Esercitazione >  >> Debian

Come installare Tomcat 9 su Debian 10 Linux

Apache Tomcat è un server di applicazioni basato su JAVA open source che implementa le tecnologie Java Servlet, JavaServer Pages, Java Expression Language e Java WebSocket. È una delle applicazioni e dei server Web più utilizzati al mondo oggi.

Questo tutorial spiega come installare Apache Tomcat 9.0 su Debian 10 Buster e configurare l'interfaccia di gestione web di Tomcat.

Prerequisiti #

Le istruzioni presuppongono che tu abbia effettuato l'accesso come root o utente con privilegi sudo.

Installazione di OpenJDK #

Tomcat 9.0 richiede l'installazione di Java SE 8 o successivo sul server.

Eseguire il comando seguente per installare OpenJDKpackage:

sudo apt install default-jdk

Creazione di un utente Tomcat #

L'esecuzione di Tomcat come utente root è un rischio per la sicurezza e non è consigliabile. Creeremo un nuovo utente che verrà utilizzato per eseguire il servizio Tomcat.

Eseguire il comando seguente crea un nuovo utente e gruppo di sistema con una directory home di /opt/tomcat :

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

Download di Tomcat #

Al momento della scrittura, l'ultima versione di Tomcat è 9.0.27 . Prima di continuare con il passaggio successivo, dovresti controllare la pagina di download di Tomcat 9 per vedere se è disponibile una versione più recente.

Passa a /tmp directory e scarica l'ultima versione binaria di Tomcat:

cd /tmpwget https://www-eu.apache.org/dist/tomcat/tomcat-9/v9.0.27/bin/apache-tomcat-9.0.27.tar.gz

Al termine del download, estrai l'archivio gzippato:

tar -xf apache-tomcat-9.0.27.tar.gz

Sposta i file sorgente Tomcat su di esso in /opt/tomcat directory:

sudo mv apache-tomcat-9.0.27 /opt/tomcat/

Tomcat 9 viene aggiornato periodicamente. Per avere un maggiore controllo su versioni e aggiornamenti, crea un collegamento simbolico denominato latest che punta alla directory di installazione di Tomcat:

sudo ln -s /opt/tomcat/apache-tomcat-9.0.27 /opt/tomcat/latest

Successivamente, durante l'aggiornamento di Tomcat, decomprimi semplicemente la versione più recente e modifica il collegamento simbolico in modo che punti all'ultima versione.

Modifica la proprietà del /opt/tomcat directory all'utente e al gruppo tomcat , in modo che l'utente possa accedere alla directory di installazione:

sudo chown -R tomcat: /opt/tomcat

Crea gli script all'interno del bin directory eseguibile:

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

Creazione del file di unità SystemD #

Apri il tuo editor di testo e crea un nuovo file chiamato tomcat.service con i seguenti contenuti:

sudo nano /etc/systemd/system/tomcat.service
/etc/systemd/system/tomcat.service
[Unit]
Description=Tomcat 9.0 servlet container
After=network.target

[Service]
Type=forking

User=tomcat
Group=tomcat

Environment="JAVA_HOME=/usr/lib/jvm/default-java"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"

Environment="CATALINA_BASE=/opt/tomcat/latest"
Environment="CATALINA_HOME=/opt/tomcat/latest"
Environment="CATALINA_PID=/opt/tomcat/latest/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"

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

[Install]
WantedBy=multi-user.target

Notifica a systemd che esiste un nuovo file di unità e avvia il servizio Tomcat digitando:

sudo systemctl daemon-reloadsudo systemctl start tomcat

Verifica lo stato del servizio Tomcat digitando:

sudo systemctl status tomcat
● tomcat.service - Tomcat 9.0 servlet container
   Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: 
   Active: active (running) since Sat 2019-11-09 13:53:51 PST; 5s ago
  Process: 5752 ExecStart=/opt/tomcat/latest/bin/startup.sh (code=exited, status
 Main PID: 5759 (java)

Se non ci sono errori, abilita l'avvio automatico del servizio Tomcat all'avvio:

sudo systemctl enable tomcat

Puoi avviare, interrompere e riavviare Tomcat come qualsiasi altro servizio di unità di sistema:

sudo systemctl start tomcatsudo systemctl stop tomcatsudo systemctl restart tomcat

Regolazione del firewall #

Se hai un firewall in esecuzione sul tuo sistema Debian e vuoi accedere all'interfaccia Tomcat dall'esterno della tua rete locale, dovrai aprire la porta 8080 :

sudo ufw allow 8080/tcp

Quando esegui un'applicazione Tomcat in un ambiente di produzione, molto probabilmente disporrai di un sistema di bilanciamento del carico o di un proxy inverso, ed è buona norma limitare l'accesso alla porta 8080 solo alla tua rete interna.

Configurazione dell'interfaccia di gestione Web Tomcat #

Ora che Tomcat è installato, il passaggio successivo consiste nel creare un utente con accesso all'interfaccia di gestione web.

Gli utenti Tomcat e i loro ruoli sono definiti in tomcat-users.xml file.

Se apri il file, noterai che è pieno di commenti ed esempi che descrivono come configurare il file:

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

Definiremo il nuovo utente in tomcat-users.xml file, come mostrato di seguito. L'utente avrà accesso all'interfaccia web di Tomcat (manager-gui e admin-gui). Assicurati di cambiare il nome utente e la password con qualcosa di più sicuro:

/opt/tomcat/latest/conf/tomcat-users.xml
<tomcat-users>
<!--
    Comments
-->
   <role rolename="admin-gui"/>
   <role rolename="manager-gui"/>
   <user username="admin" password="admin_password" roles="admin-gui,manager-gui"/>
</tomcat-users>

Per impostazione predefinita, l'interfaccia di gestione web di Tomcat consente l'accesso solo da localhost. Se desideri accedere all'interfaccia web da un IP remoto o da qualsiasi luogo, cosa sconsigliata perché rischiosa per la sicurezza, puoi aprire i seguenti file e apportare le seguenti modifiche.

Se devi accedere all'interfaccia web da qualsiasi luogo, apri i seguenti file e commenta o rimuovi le righe evidenziate in giallo:

/opt/tomcat/latest/webapps/manager/META-INF/context.xml
<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>
/opt/tomcat/latest/webapps/host-manager/META-INF/context.xml
<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>

Se devi accedere all'interfaccia web solo da un IP specifico, invece di commentare i blocchi aggiungi il tuo IP pubblico all'elenco. Supponiamo che il tuo IP pubblico sia 32.32.32.32 e vuoi consentire l'accesso solo da quell'IP:

/opt/tomcat/latest/webapps/manager/META-INF/context.xml
<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|32.32.32.32" />
</Context>
/opt/tomcat/latest/webapps/host-manager/META-INF/context.xml
<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|32.32.32.32" />
</Context>

L'elenco degli indirizzi IP consentiti è un elenco separato da una barra verticale | . Puoi aggiungere singoli indirizzi IP o utilizzare espressioni regolari.

Riavvia il servizio Tomcat per rendere effettive le modifiche:

sudo systemctl restart tomcat

Verifica l'installazione #

Apri il browser e digita:http://<your_domain_or_IP_address>:8080

Se l'installazione va a buon fine, apparirà una schermata simile alla seguente:

Il dashboard di Tomcat Web Application Manager è disponibile all'indirizzo http://<your_domain_or_IP_address>:8080/manager/html . Da qui puoi distribuire, annullare la distribuzione, avviare, interrompere e ricaricare le tue applicazioni.

Il dashboard di Tomcat Virtual Host Manager è disponibile all'indirizzo http://<your_domain_or_IP_address>:8080/host-manager/html . Da qui puoi creare, eliminare e gestire gli host virtuali Tomcat.


Debian
  1. Come installare Logstash su Debian Linux

  2. Come installare Tomcat 9 su Debian 9 Stretch Linux

  3. Come installare Elasticsearch su Debian Linux

  4. Come installare VirtualBox su Debian Linux

  5. Come installare Tomcat 8 su Debian 8

Come installare sudo su Debian o Ubuntu Linux

Come installare MariaDB 10 su Debian 11 Bullseye Linux

Come installare NextCloud su Debian 11 Bullseye Linux

Come installare Tomcat su Debian 10 Buster

Come installare Vai su Debian 11

Come installare Apache Tomcat su Debian 10