Jak zainstalować Apache Tomcat w RHEL 8
Apache Tomcat to lekki, wydajny i powszechnie używany serwer internetowy typu open source, opracowany i utrzymywany przez Apache Foundation. Jest to implementacja Servletu Java, JavaServer Pages (JSP), języka Java Expression Language (EL) i Java WebSocket i udostępnia serwer HTTP wykorzystujący wyłącznie język Java do uruchamiania aplikacji internetowych opartych na języku Java.
Ten artykuł przeprowadzi Cię przez proces instalacji i konfiguracji Apache Tomcat 9 ze zdalnym dostępem do interfejsu internetowego w systemie RHEL 8 Linux.
Jeśli chcesz mieć Tomcat na RHEL/CentOS 7, postępuj zgodnie z tym artykułem, aby zainstalować Apache Tomcat na RHEL/CentOS 7.
Krok 1: Instalowanie Java na RHEL 8
Aby zainstalować Java na RHEL 8, najpierw zaktualizuj pakiety systemowe i zainstaluj domyślną dostępną wersję Java 8 lub Java 11< za pomocą następujących poleceń dnf, jak pokazano.
dnf update
dnf install java-1.8.0-openjdk-devel #install JDK 8
OR
dnf install java-11-openjdk-devel #install JDK 11
Po zakończeniu instalacji możesz sprawdzić zainstalowaną wersję Java w systemie za pomocą następującego polecenia.
java -version
Przykładowe wyjście
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)
Krok 2: Instalowanie Apache Tomcat na RHEL 8
Po zainstalowaniu w systemie JAVA czas pobrać najnowszą wersję Apache Tomcat (czyli 9.0.24) najnowsza stabilna wersja w momencie pisania tego artykułu.
Jeśli chcesz zweryfikować wersję, przejdź do oficjalnej strony pobierania Apache i sprawdź, czy dostępna jest nowsza wersja do pobrania.
- https://tomcat.apache.org/download-90.cgi
Alternatywnie możesz pobrać najnowszą wersję Apache Tomcat za pomocą następującego polecenia wget i skonfigurować ją jak pokazano.
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
Uwaga: jeśli dostępna jest nowsza wersja Apache Tomcat, pamiętaj o zastąpieniu powyższego numeru wersji najnowszą wersją.
Serwer Apache Tomcat jest teraz wdrożony w katalogu /usr/local/tomcat9
. Możesz zweryfikować jego zawartość, uruchamiając polecenie pwd i wyświetlić również zawartość katalogu.
pwd tomcat9/
ls -l tomcat9/
Poniżej znajduje się opis każdego podkatalogu w katalogu instalacyjnym Apache Tomcat.
- bin – zawiera pliki wykonywalne.
- conf – zawiera pliki konfiguracyjne.
- lib – przechowuje pliki bibliotek.
- log – przechowuje pliki dziennika.
- temp – zawiera pliki tymczasowe.
- webaaps – przechowuje pliki aplikacji internetowych.
Krok 3: Uruchamianie Apache Tomcat w Systemd w RHEL 8
Aby łatwo zarządzać demonem Apache Tomcat, musisz uruchomić go jako usługę w systemd (menedżer systemu i usług). Usługa będzie działać z uprawnieniami użytkownika systemu o nazwie tomcat, które należy utworzyć za pomocą polecenia useradd.
useradd -r tomcat
Po utworzeniu użytkownika tomcat nadaj mu uprawnienia i prawa własności do katalogu instalacyjnego Tomcat i całej jego zawartości, używając następującego polecenia chown.
chown -R tomcat:tomcat /usr/local/tomcat9
ls -l /usr/local/tomcat9
Następnie utwórz plik jednostkowy tomcat.service
w katalogu /etc/systemd/system/, używając swojego ulubionego edytora tekstu.
vi /etc/systemd/system/tomcat.service
Skopiuj i wklej następującą konfigurację do pliku 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
Zapisz plik, załaduj ponownie konfigurację systemową, aby zastosować ostatnie zmiany, używając następującego polecenia.
systemctl daemon-reload
Następnie uruchom usługę tomcat, włącz jej automatyczne uruchamianie przy starcie systemu i sprawdź stan za pomocą poniższych poleceń.
systemctl start tomcat.service
systemctl enable tomcat.service
systemctl status tomcat.service
Tomcat używa portów 8080 i 8443 odpowiednio dla żądań HTTP i HTTPS. Możesz także sprawdzić, czy demon działa i nasłuchuje, sprawdzając port HTTP wśród wszystkich portów nasłuchujących w systemie, używając polecenia netstat.
netstat -tlpn
Jeśli masz uruchomioną usługę firewalld, przed uzyskaniem dostępu do interfejsu sieciowego Tomcat musisz otworzyć porty 8080 i 8443, używając polecenia firewall-cmd, jak pokazano.
firewall-cmd --zone=public --permanent --add-port=8080/tcp
firewall-cmd --zone=public --permanent --add-port=8443/tcp
firewall-cmd --reload
Krok 4: Uzyskaj dostęp do interfejsu internetowego Apache Tomcat
Teraz, gdy zainstalowałeś, skonfigurowałeś i uruchomiłeś Tomcat jako usługę oraz zezwoliłeś na żądania wysyłane do demona przez zaporę ogniową, możesz przetestować instalację, próbując uzyskać dostęp do interfejsu internetowego przy użyciu adresu URL.
http://localhost:8080
OR
http://SERVER_IP:8080
Gdy zobaczysz stronę pokazaną na zrzucie ekranu, pomyślnie zainstalowałeś Tomcat.
Tomcat zawiera aplikację internetową o nazwie Manager służącą do wdrażania nowej aplikacji internetowej z przesłanej zawartości pliku WAR, wdrażania nowej aplikacji internetowej, listę aktualnie wdrożonych aplikacji internetowych i sesji, które są aktualnie aktywne dla tych aplikacji internetowych, i wiele więcej.
Udostępnia także aplikację Host Manager służącą do zarządzania (tworzenia, usuwania itp.) wirtualnymi hostami w Tomcat.
Krok 5: Włącz uwierzytelnianie HTTP dla Menedżera Tomcat i Menedżera hostów
Aby zapewnić ograniczony dostęp do aplikacji Manager i Host Manager w środowisku produkcyjnym, musisz skonfigurować podstawowe uwierzytelnianie HTTP w pliku /usr/local/tomcat9/conf plik konfiguracyjny /tomcat-users.xml.
vi /usr/local/tomcat9/conf/tomcat-users.xml
Skopiuj i wklej następującą konfigurację w tagach
i , jak pokazano na zrzucie ekranu. Ta konfiguracja dodaje role admin-gui i manager-gui do użytkownika o nazwie „admin ” z hasłem „tomhost@ 80”.
<role rolename="admin-gui,manager-gui"/>
<user username="admin" password="tomhost@80" roles="admin-gui,manager-gui"/>
Zapisz zmiany w pliku i wyjdź.
Krok 6: Włącz zdalny dostęp do Tomcat Managera i Host Managera
Domyślnie dostęp do aplikacji Manager i Host Manager jest ograniczony do localhost, serwera, na którym znajduje się Tomcat jest zainstalowany i działa. Można jednak włączyć zdalny dostęp do określonego adresu IP lub sieci, np. sieci LAN.
Aby włączyć zdalny dostęp do aplikacji Manager, otwórz i edytuj plik konfiguracyjny /opt/apache-tomcat-9.0.24/webapps/host-manager/META-INF/context.xml.
vi /usr/local/tomcat9/webapps/manager/META-INF/context.xml
Następnie poszukaj następującej linii.
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
zmień ją na tę, aby umożliwić Tomcatowi dostęp z adresu IP 192.168.56.10.
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1 |192.168.56.10" />
Możesz także zezwolić Tomcatowi na dostęp z sieci lokalnej 192.168.56.0.
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1 |192.168.56.*" />
lub zezwól Tomcatowi na dostęp z dowolnego hosta lub sieci.
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1 |.*" />
Następnie zapisz zmiany w pliku i zamknij go.
Podobnie włącz zdalny dostęp do aplikacji Host Manager w pliku /usr/local/tomcat9/webapps/host-manager/META-INF/context.xml jak pokazano powyżej .
Następnie uruchom ponownie usługę tomcat, aby zastosować ostatnie zmiany.
systemctl restart tomcat.service
Krok 7: Uzyskaj dostęp do aplikacji internetowych Tomcat Manager
Aby uzyskać dostęp do aplikacji internetowej Tomcat Manager, możesz kliknąć link pokazany na zrzucie ekranu lub użyć adresu URL.
http://localhost:8080/manager
OR
http://SERVER_IP:8080/manager
Zostaniesz poproszony o uwierzytelnienie: wprowadź nazwę użytkownika i hasło, które utworzyłeś wcześniej, aby zalogować się do aplikacji menedżera, jak pokazano na zrzucie ekranu.
Poniższy zrzut ekranu przedstawia interfejs HTML aplikacji Manager, w którym możesz wdrożyć nową aplikację internetową z przesłanej zawartości pliku WAR, wdrożyć nową aplikację internetową lub wyświetlić listę istniejących aplikacji i zrobić więcej.
Krok 8: Uzyskaj dostęp do aplikacji internetowych Tomcat Host Manager
Aby uzyskać dostęp do Menedżera hostów, przejdź pod dowolny z poniższych adresów URL.
http://localhost:8080/host-manager
OR
http://SERVER_IP:8080/host-manager
Gratulacje! Pomyślnie zainstalowałeś i skonfigurowałeś Apache Tomcat na serwerze RHEL 8. Więcej informacji można znaleźć w dokumentacji Apache Tomcat 9.0.