GNU/Linux >> Linux Esercitazione >  >> Debian

Come installare Tomcat 9 su Debian 9

Apache Tomcat è un server di applicazioni open source che supporta 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 ti mostrerà come installare Apache Tomcat 9.0 su Debian 9 e configurare l'interfaccia di gestione web di Tomcat.

Prerequisiti #

Prima di continuare con questo tutorial, assicurati di aver effettuato l'accesso come utente con privilegi sudo.

Scaricheremo il file zip Tomcat usando wget. Se non hai wget installato sul tuo sistema puoi farlo digitando:

sudo apt install wget

Installazione di OpenJDK #

Tomcat 9.0 richiede Java SE 8 o successivo. Per installare il pacchetto OpenJDK predefinito dai repository Debian 9, eseguire il seguente comando:

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.

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

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

Questo utente verrà utilizzato per eseguire il servizio Tomcat.

Download di Tomcat #

Scaricheremo l'ultima versione di Tomcat 9.0.x dalla pagina dei download di Tomcat.

Al momento in cui scrivo, l'ultima versione di Tomcat è la 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 il file zip con wget :

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 il file tar:

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 frequentemente. Per avere un maggiore controllo su versioni e aggiornamenti, crea un collegamento simbolico chiamato 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 della versione Tomcat, puoi semplicemente decomprimere la versione più recente e modificare 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 all'installazione di Tomcat:

sudo chown -R tomcat: /opt/tomcat

crea anche gli script all'interno di bin directory eseguibile:

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

Crea un file di unità systemd #

Crea un nuovo tomcat.service file unit nel /etc/systemd/system/ directory con i seguenti contenuti:

/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 abbiamo creato un nuovo file di unità e avviamo il servizio Tomcat eseguendo:

sudo systemctl daemon-reloadsudo systemctl start tomcat

Controlla lo stato del servizio Tomcat digitando:

sudo systemctl status tomcat
● tomcat.service - Tomcat 9 servlet container
   Loaded: loaded (/etc/systemd/system/tomcat.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2018-12-01 20:47:50 UTC; 4s ago
  Process: 1759 ExecStart=/opt/tomcat/latest/bin/startup.sh (code=exited, status=0/SUCCESS)
 Main PID: 1767 (java)
   CGroup: /system.slice/tomcat.service

Se non ci sono errori, puoi abilitare 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

Regola il firewall #

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

sudo ufw allow 8080/tcp
In genere, quando si esegue un'applicazione Tomcat in un ambiente di produzione, si trova dietro un servizio di bilanciamento del carico o un proxy inverso. È buona norma limitare l'accesso alla porta 8080 solo alla tua rete interna.

Configura interfaccia di gestione Web Tomcat #

Ora che Tomcat è installato sul tuo server Debian, 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 vim /opt/tomcat/latest/conf/tomcat-users.xml

Definiremo un nuovo utente con accesso all'interfaccia web di Tomcat (manager-gui e admin-gui) nel tomcat-users.xml file, come mostrato di seguito. 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 Tomcat 8.5 su Debian 9

  2. Come installare MongoDB su Debian 9

  3. Come installare Nextcloud su Debian 9

  4. Come installare PostgreSQL 11/10 su Debian 9 e Debian 8

  5. Come installare Tomcat 8 su Debian 8

Come installare MariaDB su Debian 11

Come installare Nginx su Debian 11

Come installare Nagios su Debian 10 / Debian 9

Come installare Tomcat su Debian 10 Buster

Come installare Vai su Debian 11

Come installare Apache Tomcat su Debian 10