Zoeken op website

Apache Tomcat installeren in RHEL 8


Apache Tomcat is een open-source, lichtgewicht, krachtige en veelgebruikte webserver, ontwikkeld en onderhouden door Apache Foundation. Het is een implementatie van de Java Servlet, JavaServer Pages (JSP), Java Expression Language (EL) en Java WebSocket-technologieën en biedt een pure Java HTTP-server voor het uitvoeren van Java-webgebaseerde applicaties.

Dit artikel begeleidt u bij de installatie en configuratie van Apache Tomcat 9 met externe toegang tot de webinterface op RHEL 8 Linux.

Als u Tomcat op RHEL/CentOS 7 wilt hebben, volgt u dit artikel om Apache Tomcat op RHEL/CentOS 7 te installeren.

Stap 1: Java installeren op RHEL 8

Om Java op RHEL 8 te installeren, update je eerst de systeempakketten en installeer je de standaard beschikbare versie van Java 8 of Java 11< met behulp van de volgende dnf-opdrachten, zoals weergegeven.

dnf update
dnf install java-1.8.0-openjdk-devel  	#install JDK 8
OR
dnf install java-11-openjdk-devel		#install JDK 11

Zodra de installatie is voltooid, kunt u de geïnstalleerde Java-versie op het systeem verifiëren met behulp van de volgende opdracht.

java -version
Voorbeelduitvoer
openjdk version "1.8.0_222"
OpenJDK Runtime Environment (build 1.8.0_222-b10)
OpenJDK 64-Bit Server VM (build 25.222-b10, mixed mode)

Stap 2: Apache Tomcat installeren op RHEL 8

Zodra JAVA op het systeem is geïnstalleerd, is het nu tijd om de nieuwste versie van Apache Tomcat (d.w.z. 9.0.24) te downloaden. recente stabiele versie op het moment dat dit artikel werd geschreven.

Als je de versie wilt verifiëren, ga dan naar de officiële Apache-downloadpagina en controleer of er een nieuwere versie beschikbaar is om te downloaden.

  1. https://tomcat.apache.org/download-90.cgi

Als alternatief kunt u de nieuwste versie van Apache Tomcat downloaden met behulp van de volgende wget-opdracht en deze instellen zoals weergegeven.

cd /usr/local
wget http://www-us.apache.org/dist/tomcat/tomcat-9/v9.0.24/bin/apache-tomcat-9.0.24.tar.gz
tar -xvf apache-tomcat-9.0.24.tar.gz
mv apache-tomcat-9.0.24 tomcat9

Opmerking: als er een nieuwere Apache Tomcat versie beschikbaar is, zorg er dan voor dat u het bovenstaande versienummer vervangt door de nieuwste versie.

De Apache Tomcat-server is nu geïmplementeerd in de map /usr/local/tomcat9. U kunt de inhoud verifiëren door de opdracht pwd uit te voeren en ook de inhoud van de map weergeven.

pwd tomcat9/
ls -l tomcat9/

Het volgende is een beschrijving van elk van de submappen in de installatiemap van Apache Tomcat.

  • bin – bevat de uitvoerbare bestanden.
  • conf – bevat configuratiebestanden.
  • lib – slaat bibliotheekbestanden op.
  • log – slaat logbestanden op.
  • temp – bevat tijdelijke bestanden.
  • webaaps – slaat webapplicatiebestanden op.

Stap 3: Apache Tomcat uitvoeren onder Systemd in RHEL 8

Om de Apache Tomcat daemon eenvoudig te beheren, moet u deze als een service uitvoeren onder systemd (systeem- en servicemanager). De service wordt uitgevoerd met de machtigingen van een systeemgebruiker genaamd tomcat, die u nodig heeft om deze aan te maken met de opdracht useradd.

useradd -r tomcat

Zodra de tomcat-gebruiker is aangemaakt, geeft u hem machtigingen en eigendomsrechten voor de Tomcat-installatiemap en de volledige inhoud ervan met behulp van de volgende chown-opdracht.

chown -R tomcat:tomcat /usr/local/tomcat9
ls -l /usr/local/tomcat9

Maak vervolgens een tomcat.service eenheidsbestand in de map /etc/systemd/system/ met behulp van uw favoriete teksteditor.

vi /etc/systemd/system/tomcat.service

Kopieer en plak de volgende configuratie in het bestand tomcat.service.

[Unit]
Description=Apache Tomcat Server
After=syslog.target network.target

[Service]
Type=forking
User=tomcat
Group=tomcat

Environment=CATALINA_PID=/usr/local/tomcat9/temp/tomcat.pid
Environment=CATALINA_HOME=/usr/local/tomcat9
Environment=CATALINA_BASE=/usr/local/tomcat9

ExecStart=/usr/local/tomcat9/bin/catalina.sh start
ExecStop=/usr/local/tomcat9/bin/catalina.sh stop

RestartSec=10
Restart=always
[Install]
WantedBy=multi-user.target

Sla het bestand op en laad de systemd-configuratie opnieuw om de recente wijzigingen toe te passen met behulp van de volgende opdracht.

systemctl daemon-reload

Start vervolgens de tomcat-service, schakel deze in om automatisch te starten bij het opstarten van het systeem en controleer de status met behulp van de volgende opdrachten.

systemctl start tomcat.service
systemctl enable tomcat.service
systemctl status tomcat.service

Tomcat gebruikt poort 8080 en 8443 voor respectievelijk HTTP en HTTPS verzoeken. U kunt ook bevestigen dat de daemon actief is en luistert door de HTTP-poort van alle luisterpoorten op het systeem te controleren met behulp van de netstat-opdracht.

netstat -tlpn

Als de firewalld-service actief is, moet u de poorten 8080 en 8443 openen voordat u toegang krijgt tot de webinterface voor Tomcat, met behulp van de firewall-cmd-opdracht, zoals weergegeven.

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

Stap 4: Toegang tot de Apache Tomcat-webinterface

Nu u Tomcat als een service hebt geïnstalleerd, geconfigureerd en gestart, en verzoeken aan de daemon via de firewall hebt toegestaan, kunt u de installatie testen door te proberen toegang te krijgen tot de webinterface met behulp van de URL.

http://localhost:8080
OR
http://SERVER_IP:8080

Zodra u de pagina ziet die in de schermafbeelding wordt weergegeven, heeft u Tomcat met succes geïnstalleerd.

Tomcat bevat een webapplicatie genaamd Manager die wordt gebruikt om een nieuwe webapplicatie te implementeren op basis van de geüploade inhoud van een WAR-bestand, een nieuwe webapplicatie te implementeren, vermeld de momenteel geïmplementeerde webapplicaties en de sessies die momenteel actief zijn voor die webapps, en nog veel meer.

Het biedt ook een Host Manager-applicatie die wordt gebruikt voor het beheren (aanmaken, verwijderen, enz.) van virtuele hosts binnen Tomcat.

Stap 5: Schakel HTTP-authenticatie in voor Tomcat Manager en Host Manager

Om beperkte toegang tot de apps Manager en Host Manager in een productieomgeving te garanderen, moet u basis-HTTP-authenticatie configureren in /usr/local/tomcat9/conf /tomcat-users.xml configuratiebestand.

vi /usr/local/tomcat9/conf/tomcat-users.xml

Kopieer en plak de volgende configuratie binnen de tags en , zoals weergegeven in de schermafbeelding. Deze configuratie voegt de rollen admin-gui en manager-gui toe aan een gebruiker met de naam “admin” met het wachtwoord “tomhost@ 80”.

<role rolename="admin-gui,manager-gui"/> 
<user username="admin" password="tomhost@80" roles="admin-gui,manager-gui"/>

Sla de wijzigingen in het bestand op en sluit af.

Stap 6: Schakel externe toegang tot Tomcat Manager en Host Manager in

Standaard is de toegang tot de apps Manager en Host Manager beperkt tot de localhost, de server waarop Tomcat is geïnstalleerd en actief. Maar u kunt externe toegang tot een specifiek IP-adres of netwerk, bijvoorbeeld uw LAN, inschakelen.

Om externe toegang tot de Manager-app mogelijk te maken, opent en bewerkt u het configuratiebestand /opt/apache-tomcat-9.0.24/webapps/host-manager/META-INF/context.xml.

vi /usr/local/tomcat9/webapps/manager/META-INF/context.xml

Zoek dan naar de volgende regel.

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />

verander dit in dit om katertoegang toe te staan vanaf IP-adres 192.168.56.10.

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1 |192.168.56.10" />

Je kunt kater ook toegang verlenen vanaf het lokale netwerk 192.168.56.0.

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1 |192.168.56.*" />

of sta tomcat-toegang toe vanaf elke host of netwerk.

allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1 |.*" />

Sla vervolgens de wijzigingen op in het bestand en sluit het.

Schakel op dezelfde manier externe toegang tot de app Host Manager in het bestand /usr/local/tomcat9/webapps/host-manager/META-INF/context.xml in, zoals hierboven weergegeven .

Start vervolgens de tomcat-service opnieuw om de recente wijzigingen toe te passen.

systemctl restart tomcat.service

Stap 7: Toegang tot Tomcat Manager-webapps

Om toegang te krijgen tot de webapp Tomcat Manager kunt u op de link klikken zoals weergegeven in de schermafbeelding of de URL gebruiken.

http://localhost:8080/manager
OR
http://SERVER_IP:8080/manager

U wordt gevraagd om te authenticeren: voer de gebruikersnaam en het wachtwoord in die u eerder hebt aangemaakt om in te loggen op de manager-app, zoals weergegeven in de schermafbeelding.

De volgende schermafbeelding toont de HTML-interface van de Manager app, waar u een nieuwe webapplicatie kunt implementeren op basis van de geüploade inhoud van een WAR-bestand, een nieuwe webapplicatie kunt implementeren of bestaande apps kunt weergeven en meer.

Stap 8: Toegang tot Tomcat Host Manager-webapps

Om toegang te krijgen tot de Host Manager, gaat u naar een van de volgende URL's.

http://localhost:8080/host-manager
OR
http://SERVER_IP:8080/host-manager

Gefeliciteerd! U heeft Apache Tomcat met succes geïnstalleerd en geconfigureerd op uw RHEL 8-server. Zie de Apache Tomcat 9.0-documentatie voor meer informatie.