GNU/Linux >> Linux Esercitazione >  >> Debian

Come installare Apache Tomcat su Debian 11 (passo dopo passo)

Apache Tomcat è un server web gratuito e opensource ampiamente utilizzato per l'hosting di applicazioni web scritte nel linguaggio di programmazione Java. È un'implementazione di Jakarta Servlet e Jakarta Expression Language (precedentemente Java Servlet e Java Expression Language) e altre tecnologie Java websocket.

Apache Tomcat non è esattamente un server web nel senso di Apache o Nginx. È un server delle applicazioni che fornisce un puro ecosistema HTTP Java e una logica basata su Java per servire il codice Java.

In questa guida impareremo passo dopo passo come installare Apache Tomcat su Debian 11 (Bullseye).

Passaggio 1) Installa OpenJDK

Poiché Tomcat è basato su Java, il primo passo sarà installare Java che sarà fornito da OpenJDK. Installeremo OpenJDK 11 che è l'ultima versione LTS.

Per installare OpenJDK 11, aggiorna gli elenchi dei pacchetti.

$ sudo apt update

Quindi esegui il comando seguente per installare OpenJDK 11.

$ sudo apt install openjdk-11-jdk -y

Per confermare la versione di Java installata, eseguire il comando:

$ java -version

Passaggio 2) Scarica e installa Apache Tomcat

Con l'installazione di Java fuori mano, il nostro prossimo passo è scaricare e installare Apache Tomcat. Al momento della stesura di questa guida, l'ultima versione di Apache Tomcat è la v10.0.18.

Visita la pagina di download ufficiale di Apache Tomcat e prendi l'ultimo binario o usa il comando wget come segue.

$ wget https://downloads.apache.org/tomcat/tomcat-10/v10.0.18/bin/apache-tomcat-10.0.18.tar.gz

Quindi, crea una directory nella directory /opt.

$ sudo mkdir /opt/tomcat

Quindi, estrai il file binario con il comando tar nel percorso /opt/tomcat.

$ sudo tar -xvf apache-tomcat-10*tar.gz -C /opt/tomcat --strip-components=1

Passaggio 3) Crea un nuovo utente e gruppo per Tomcat

In genere non è una buona idea testare le applicazioni Web utilizzando l'utente root poiché l'utente può essere facilmente compromesso da un utente malintenzionato portando a una violazione del sistema.

Considerando ciò, creeremo un utente non root che avrà accesso alla directory /opt/tomcat.

Pertanto, crea un gruppo chiamato Tomcat.

$ sudo groupadd tomcat

Quindi, crea l'utente Tomcat e aggiungi l'utente al gruppo Tomcat con /opt/tomcat come directory home.

$ sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat

Fase 4) Configura i permessi utente

Andando avanti, imposteremo la proprietà e le autorizzazioni seguenti alla directory /opt/tomcat rispettivamente con i comandi chown e chomd.

$ sudo chown -R tomcat: /opt/tomcat
$ sudo sh -c 'chmod +x /opt/tomcat/bin/*.sh'

Fase 5) Crea un file systemd per Apache Tomcat

Dobbiamo fare in modo che Apache Tomcat venga eseguito in background come un servizio systemd che può essere avviato, arrestato e abilitato. Per impostazione predefinita, Tomcat non viene fornito con un file di unità systemd e, pertanto, lo creeremo manualmente come segue.

$ sudo vi /etc/systemd/system/tomcat.service

Incolla il seguente blocco di codice che definisce il file del servizio systemd.

[Unit]
Description=Tomcat webs servlet container
After=network.target
[Service]
Type=forking
User=tomcat
Group=tomcat
RestartSec=10
Restart=always
Environment="JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64"
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

Salva le modifiche ed esci dal file. Quindi eseguire nuovamente il generatore di systemd e ricaricare tutti i file dell'unità.

$ sudo systemctl daemon-reload

Per confermare il percorso predefinito per Java, esegui il comando

$ sudo update-java-alternatives -l

Questo coincide con il percorso specificato nel file di servizio systemd, il che significa che siamo sulla strada giusta.

Passaggio 6) Abilita e avvia il demone Tomcat

Con il file systemd di Tomcat attivo, avvia il demone Apache Tomcat e abilitalo per l'avvio all'avvio del sistema.

$ sudo systemctl daemon-reload
$ sudo systemctl start tomcat
$ sudo systemctl enable tomcat

Quindi verifica che Apache Tomcat sia in esecuzione

$ systemctl status tomcat

Dall'output, possiamo vedere che il demone Tomcat è in esecuzione, il che implica che la nostra configurazione è corretta.

Passaggio 7) Aggiungi l'utente Tomcat Admin e configura i ruoli

È necessario configurare un utente amministrativo per accedere alle sezioni "Stato server", "Gestione host" e "App manager" sulla pagina Web di Tomcat. In caso contrario, si verificherà un errore nel browser.

Per farlo, modificheremo il file di configurazione dell'utente Tomcat.

$ sudo vi /opt/tomcat/conf/tomcat-users.xml

Incolla le seguenti righe di codice appena prima del tag . Sentiti libero di specificare i tuoi valori di nome utente e password.

<role rolename="admin"/>
<role rolename="admin-gui"/>
<role rolename="manager"/>
<role rolename="manager-gui"/>
<user username="linuxtechi" password="<enetr-password-here>" roles="admin,admin-gui,manager,manager-gui"/>

Salva le modifiche e chiudi il file di configurazione.

Passaggio 8) Gestisci l'accesso remoto ad Apache Tomcat

Per impostazione predefinita, puoi accedere all'interfaccia web di Tomcat solo dal sistema host. Pertanto, è necessario configurare l'accesso remoto a Tomcat Manager modificando manualmente il file di configurazione context.xml.

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

Scorri verso il basso e commenta queste righe semplicemente aggiungendo alla fine.

<!-- <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. Successivamente, dobbiamo consentire l'accesso remoto a Host Manager. Quindi, modifica il file context.xml di Host manager.

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

Ancora una volta, commenta il seguente blocco di testo aggiungendo alla fine.

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

Salva le modifiche ed esci dal file di configurazione. Per applicare tutte le modifiche apportate, riavvia Tomcat.

$ sudo systemctl restart tomcat

Fase 9) Accesso ad Apache Tomcat

Tomcat è ora completamente configurato ed è possibile accedervi da remoto. Manca ancora un passaggio. Se stai eseguendo un firewall UFW, considera l'apertura della porta 8080 che è la porta predefinita su cui Apache Tomcat è in ascolto.

$ sudo ufw allow 8080
$ sudo ufw reload

Infine, per accedere all'interfaccia web di Tomcat, avvia il browser e vai al seguente indirizzo.

http://server-ip-addres:8080
or
http://youdomain.com:8080

Questo dovrebbe portarti alla home page predefinita del server web Tomcat come mostrato.

Per accedere alla pagina "Stato del server", fare clic su "Stato del server". Apparirà un pop-up che richiede le credenziali dell'utente. Fornisci le credenziali di accesso dell'amministratore specificate nel passaggio 6 e fai clic su "Accedi".

Allo stesso modo, ti verranno richieste le stesse credenziali quando accedi a Tomcat Application Manager a cui puoi accedere facendo clic su "Manager App" nell'interfaccia web predefinita.

Facendo clic su "Gestione host" si accede alla sezione Gestore host virtuale come mostrato.

Conclusione

Ed è un involucro. In questa guida, ti abbiamo guidato attraverso l'installazione sul server web Apache Tomcat su Debian 11. Tutto il meglio per ospitare le tue applicazioni Java!


Debian
  1. Come installare Tomcat 8.5 su Debian 9

  2. Come installare Apache Maven su Debian 10

  3. Come installare Apache Maven su Debian 11

  4. Come installare Apache Cassandra su Debian 11 / Debian 10

  5. Come installare Tomcat 8 su Debian 8

Come installare Apache Guacamole su Debian 11

Come installare Apache Tomcat su Debian 11

Come installare Apache NetBeans su Debian 11 / Debian 10

Come installare Apache Subversion su Debian 9

Come installare Apache Kafka su Debian 9

Come installare Apache Tomcat su Debian 10