Hvordan installere Apache Tomcat i RHEL 8


Apache Tomcat er en åpen kildekode, lett, kraftig og mye brukt nettserver utviklet og vedlikeholdt av Apache Foundation. Det er en implementering av Java Servlet, JavaServer Pages (JSP), Java Expression Language (EL) og Java WebSocket sterke> teknologier, og gir en ren Java HTTP-server for å kjøre Java nettbaserte applikasjoner.

Denne artikkelen vil lede deg gjennom installasjonen og konfigurasjonen av Apache Tomcat 9 med ekstern tilgang til nettgrensesnittet på RHEL 8 Linux.

Hvis du ønsker å ha Tomcat på RHEL/CentOS 7, følg denne artikkelen for å installere Apache Tomcat på RHEL/CentOS 7.

Trinn 1: Installere Java på RHEL 8

For å installere JavaRHEL 8 må du først oppdatere systempakkene og installere standardversjonen av Java 8 eller Java 11< ved å bruke følgende dnf-kommandoer som vist.

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

Når installasjonen er ferdig, kan du bekrefte den installerte Java-versjonen på systemet ved å bruke følgende kommando.

java -version
Eksempelutgang
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)

Trinn 2: Installere Apache Tomcat på RHEL 8

Når JAVA er installert på systemet, er det nå på tide å laste ned den nyeste versjonen av Apache Tomcat (dvs. 9.0.24) er den mest siste stabile versjon på tidspunktet for skriving av denne artikkelen.

Hvis du vil bekrefte versjonen, gå over til den offisielle Apache-nedlastingssiden og sjekk om det er en nyere versjon tilgjengelig for nedlasting.

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

Alternativt kan du laste ned den nyeste versjonen av Apache Tomcat ved å bruke følgende wget-kommando og sette den opp som vist.

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

Merk: Hvis nyere Apache Tomcat-versjon er tilgjengelig, sørg for å erstatte versjonsnummeret ovenfor med den nyeste versjonen.

Apache Tomcat-serveren er nå distribuert i /usr/local/tomcat9-katalogen, du kan verifisere innholdet ved å kjøre pwd-kommandoen og vise kataloginnholdet også.

pwd tomcat9/
ls -l tomcat9/

Følgende er en beskrivelse av hver av underkatalogene i installasjonsmappen til Apache Tomcat.

  • bin – inneholder de kjørbare filene.
  • conf – inneholder konfigurasjonsfiler.
  • lib – lagrer bibliotekfiler.
  • logg – lagrer loggfiler.
  • temp – inneholder midlertidige filer.
  • webaaps – lagrer nettapplikasjonsfiler.

Trinn 3: Kjør Apache Tomcat Under Systemd i RHEL 8

For å enkelt administrere Apache Tomcat-demonen, må du kjøre den som en tjeneste under systemd (system- og tjenestebehandling). Tjenesten vil kjøre med tillatelser fra en systembruker kalt tomcat som du trenger for å opprette den ved å bruke useradd-kommandoen.

useradd -r tomcat

Når tomcat-brukeren er opprettet, gi den tillatelser og eierskapsrettigheter til Tomcat-installasjonskatalogen og alt innholdet ved hjelp av følgende chown-kommando.

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

Deretter oppretter du en tomcat.service enhetsfil i katalogen /etc/systemd/system/ ved å bruke din favoritt tekstredigerer.

vi /etc/systemd/system/tomcat.service

Kopier og lim inn følgende konfigurasjon i tomcat.service-filen.

[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

Lagre filen last systemd-konfigurasjonen på nytt for å bruke de siste endringene ved å bruke følgende kommando.

systemctl daemon-reload

Start deretter tomcat-tjenesten, aktiver den til å starte automatisk ved systemoppstart og sjekk statusen ved å bruke følgende kommandoer.

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

Tomcat bruker port 8080 og 8443 for henholdsvis HTTP og HTTPS-forespørsler. Du kan også bekrefte at demonen er oppe og lytter ved å sjekke HTTP-porten blant alle lytteporter på systemet ved å bruke netstat-kommandoen.

netstat -tlpn

Hvis du kjører brannmurtjenesten, må du åpne portene 8080 og 8443 før du får tilgang til nettgrensesnittet for Tomcat, ved å bruke brannmur-cmd-kommandoen som vist.

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

Trinn 4: Få tilgang til Apache Tomcat Web Interface

Nå som du har installert, konfigurert og startet Tomcat som en tjeneste, og tillatt forespørsler til demonen via brannmuren, kan du teste installasjonen ved å prøve å få tilgang til nettgrensesnittet ved hjelp av URL-en.

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

Når du ser siden vist på skjermbildet, har du installert Tomcat.

Tomcat inkluderer en nettapplikasjon kalt Manager som brukes til å distribuere en ny nettapplikasjon fra det opplastede innholdet i en WAR-fil, distribuere en ny nettapplikasjon, liste opp nettapplikasjonene som er distribuert for øyeblikket, og øktene som er aktive for disse nettappene, og mye mer.

Den gir også en Vertsbehandler-applikasjon som brukes til å administrere (opprette, slette osv.) virtuelle verter i Tomcat.

Trinn 5: Aktiver HTTP-autentisering for Tomcat Manager og Host Manager

For å sikre begrenset tilgang til appene Manager og Host Manager i et produksjonsmiljø, må du konfigurere grunnleggende HTTP-autentisering i /usr/local/tomcat9/conf /tomcat-users.xml konfigurasjonsfil.

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

Kopier og lim inn følgende konfigurasjon i - og -taggene som vist på skjermbildet. Denne konfigurasjonen legger til rollene admin-gui og manager-gui til en bruker som heter “admin ” med passordet “tomhost@ 80 ”.

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

Lagre endringene i filen og avslutt.

Trinn 6: Aktiver ekstern tilgang til Tomcat Manager og Host Manager

Som standard er tilgangen til Manager- og Host Manager-appene begrenset til localhost, serveren der Tomcat er installert og kjører. Men du kan aktivere ekstern tilgang til en bestemt IP-adresse eller nettverk, for eksempel LAN.

For å aktivere ekstern tilgang til Manager-appen, åpne og rediger konfigurasjonsfilen /opt/apache-tomcat-9.0.24/webapps/host-manager/META-INF/context.xml<.

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

Se deretter etter følgende linje.

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

endre den til dette for å tillate tomcat-tilgang fra IP-adressen 192.168.56.10.

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

Du kan også tillate tomcat-tilgang fra det lokale nettverket 192.168.56.0.

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

eller tillat tomcat-tilgang fra hvilken som helst vert eller nettverk.

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

Lagre deretter endringene i filen og lukk den.

På samme måte aktiverer du ekstern tilgang til Vertsbehandler-appen i filen /usr/local/tomcat9/webapps/host-manager/META-INF/context.xml som vist ovenfor .

Deretter starter du tomcat-tjenesten på nytt for å bruke de siste endringene.

systemctl restart tomcat.service

Trinn 7: Få tilgang til Tomcat Manager Web Apps

For å få tilgang til Tomcat Manager-nettappen, kan du klikke på koblingen som vist på skjermbildet eller bruke URL-en.

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

Du vil bli bedt om å autentisere: skriv inn brukernavnet og passordet du opprettet tidligere for å logge på managerappen som vist på skjermbildet.

Følgende skjermbilde viser HTML-grensesnittet for Manager-appen der du kan distribuere en ny nettapplikasjon fra det opplastede innholdet i en WAR-fil, distribuere en ny nettapplikasjon eller liste opp eksisterende apper og gjøre mer.

Trinn 8: Få tilgang til Tomcat Host Manager Web Apps

For å få tilgang til vertsadministratoren, gå til en av følgende nettadresser.

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

Gratulerer! Du har installert og konfigurert Apache TomcatRHEL 8-serveren din. For mer informasjon, se Apache Tomcat 9.0-dokumentasjonen.