Oprogramowanie Apache Tomcat to serwer HTTP oparty na języku Java, który może uruchamiać technologie Java, takie jak Java Servlet, JavaServer Pages (JSP) i Java Expression Language. Zaawansowane wbudowane opcje dostosowywania, wysoka elastyczność i imponująca stabilność sprawiają, że oprogramowanie to cieszy się dużym popytem i jest popularnym wyborem wśród programistów na całym świecie. Zobaczmy, co wyróżnia Apache Tomcat na tle konkurencji:
-
Open-Source
Apache Tomcat to aplikacja open-source. Oznacza to, że każdy może ją bezpłatnie pobrać, zainstalować i używać.
-
Lekkość
Lekkość stanowi dodatkową zaletę podczas ładowania i ponownego wdrażania w porównaniu z konkurencją.
-
Elastyczność
Wbudowana opcja dostosowywania pozwala użytkownikowi dostosować aplikację do własnych upodobań w oparciu o jego potrzeby i wymagania projektu.
-
Zaawansowane bezpieczeństwo
Aplikacje Tomcat oferują również zaawansowany poziom bezpieczeństwa.
Od czasu jego pierwszego wydania w 1998 roku, Apache Software Foundation dokonała niesamowitych zmian. W rezultacie najnowsze wydanie jest bardziej stabilne niż kiedykolwiek wcześniej. W tym samouczku dowiesz się, jak zainstalować Apache Tomcat 9 na Ubuntu 20.04.
Wymagania wstępne
Zanim przejdziesz do instalacji Apache Tomcat na swoim systemie Ubuntu, upewnij się, że posiadasz następujące elementy:
- Serwer Ubuntu – możesz postępować zgodnie z krokami konfiguracji serwera z naszego samouczka.
- Użytkownik niebędący administratorem (non-root) z uprawnieniami sudo skonfigurowanymi na Twoim serwerze.
Wszystko gotowe. Następnie postępuj zgodnie z poniższymi krokami, aby zainstalować Apache Tomcat na Ubuntu 20.04
Krok 1 — Instalacja Java
Najpierw zweryfikuj, czy Java jest już zainstalowana w Twoim systemie, używając polecenia:
|
1 |
java -version |
Jeśli Java nie jest zainstalowana w Twoim systemie, musisz ją zainstalować, aby móc uruchamiać aplikacje oparte na języku Java. Możesz zainstalować Java Development Kit za pomocą następującego polecenia:
|
1 |
sudo apt install default-jre |
Po zakończeniu instalacji zweryfikuj ją za pomocą polecenia:
|
1 |
java -version |
Po zakończeniu instalacji nadszedł czas na utworzenie konta użytkownika tomcat . Ze względów bezpieczeństwa zaleca się uruchamianie Tomcat z uprawnieniami innymi niż root. Pamiętaj, że jeśli którykolwiek ze skryptów strony ma uprawnienia roota, można łatwo całkowicie zmodyfikować pliki na dysku twardym za pomocą skryptów strony. Następnie utworzymy nowego użytkownika i grupę, które będą uruchamiać usługi Tomcat.
Krok 2 – Utworzenie & konfiguracja użytkownika Tomcat
Utworzymy nowego użytkownika i grupę, które będą korzystać ze wszystkich usług Tomcat. Nową grupę nazwiemy tomcat za pomocą następującego polecenia:
|
1 |
sudo groupadd tomcat |
Po utworzeniu nazwy grupy utworzymy nowego użytkownika tomcat , a następnie dodamy go do grupy tomcat:
- Utwórz nowego tomcat użytkownika.
- Dodaj członkostwo użytkownika do grupy tomcat .
Dodając użytkownika do grupy tomcat , upewnij się, że zachowujesz to w poufności, aby nikt nie mógł uzyskać dostępu do Twojego konta tomcat . Ze względów bezpieczeństwa utrzymaj użytkownika w katalogu domowym, w którym zamierzamy zainstalować tomcat ( /opt/tomcat) i dodaj powłokę /bin/false:
|
1 |
sudo useradd -s /bin/false -g tomcat -d /opt/tomcat tomcat |
Po zakończeniu konfiguracji konta przejdźmy dalej i zainstalujmy Tomcat:
Krok 3 – Instalacja Tomcat
Zainstalujemy Tomcat z oficjalnej strony Tomcat’a. Aby w pełni wykorzystać jego potencjał, pobierz najnowszą wersję. Aby uaktualnić do najbardziej stabilnej dostępnej wersji, przejdź do sekcji Binary Distributions, przejdź do listy Core i skopiuj link do “tar.gz”. Po zakończeniu zmień katalog na /tmp:
|
1 |
cd /tmp |
Następnie, używając polecenia curl, pobierz Tomcat z oficjalnej strony internetowej, jak opisano powyżej:
|
1 |
sudo curl -O https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.60/bin/apache-tomcat-9.0.60.tar.gz |
Zainstalujmy Tomcat w katalogu /opt/tomcat. Po utworzeniu katalogu rozpakuj archiwum za pomocą następującego polecenia:
|
1 2 |
sudo mkdir /opt/tomcat sudo tar xzvf apache-tomcat-9.0.60.tar.gz -C /opt/tomcat --strip-components=1 |
Step 4 – Update Permissions
Po zainstalowaniu Tomcata w systemie należy ustawić uprawnienia dla nowo utworzonego tomcat użytkownika. Użyj następującego polecenia, aby przejść do katalogu, w którym rozpakowano instalację Tomcata:
|
1 |
cd /opt/tomcat |
Następnie nadaj grupie tomcat prawo własności do całego katalogu instalacyjnego:
|
1 2 3 |
sudo chgrp -R tomcat /opt/tomcat sudo chmod -R g+r conf sudo chmod g+x conf |
Po zakończeniu ustaw użytkownika tomcat jako właściciela katalogów webapps, work, temp, oraz logs katalogów:
|
1 |
sudo chown -R tomcat webapps/ work/ temp/ logs |
Po skonfigurowaniu wszystkich wymaganych uprawnień kolejnym krokiem jest utworzenie pliku usługi systemd w celu zarządzania procesem Tomcat i uruchamiania go jako usługi.
Krok 5 – Utworzenie pliku jednostki systemd
Chociaż zakończyliśmy instalację Javy, Tomcat musi wiedzieć, gdzie Java jest zainstalowana. Aby poznać lokalizację instalacji Javy, uruchom następujące polecenie:
|
1 |
sudo update-java-alternatives -l |
Dane wyjściowe powinny wyglądać następująco:
Wyróżniona część to JAVA_Home jak pokazano poniżej:
|
1 |
/usr/lib/jvm/java-1.11.0-openjdk-amd64 |
Następnie utworzymy plik usługi systemd. Otwórz plik o nazwie tomcat.service z katalogu /etc/systemd/system za pomocą następującego polecenia:
|
1 |
sudo nano /etc/systemd/system/tomcat.service |
Użyj edytora VI, aby edytować plik i zmodyfikować JAVA_Home na swoją lokalizację JAVA_Home :
|
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 |
[Unit] Description=Apache Tomcat Web Application Container After=network.target [Service] Type=forking Environment=JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd6 Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid Environment=CATALINA_HOME=/opt/tomcat Environment=CATALINA_BASE=/opt/tomcat Environment='CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC' Environment='JAVA_OPTS=-Djava.awt.headless=true -Djava.security.egd=file:/dev/./urandom' ExecStart=/opt/tomcat/bin/startup.sh ExecStop=/opt/tomcat/bin/shutdown.sh User=tomcat Group=tomcat UMask=0007 RestartSec=10 Restart=always [Install] WantedBy=multi-user.target |
Po dodaniu JAVA_Home, zapisz i zamknij plik. Następnie przeładuj demona systemd, aby dowiedział się o naszym pliku usługi:
|
1 |
sudo systemctl daemon-reload |
Następnie uruchom usługę Tomcat za pomocą następującego polecenia:
|
1 |
sudo systemctl start tomcat |
Krok 6 – Konfiguracja zapory sieciowej
Po utworzeniu pliku jednostki systemd nadszedł czas na skonfigurowanie zapory sieciowej. Konfiguracja zapory jest niezbędna do umożliwienia obsługi naszych żądań i dostępu do usługi Tomcat. Jeśli postępowałeś zgodnie z instrukcją, to pewne jest, że masz już włączoną zaporę ufw .
Tomcat używa portu 8080 do akceptowania tradycyjnych żądań. Zezwól na ruch do tego portu za pomocą polecenia:
|
1 |
sudo ufw allow 8080 |
Zmodyfikowana zapora sieciowa umożliwia dostęp do domyślnej strony powitalnej pod adresem IP, po którym następuje :8080. Możesz otworzyć ją w przeglądarce internetowej, przechodząc pod adres IP, jak pokazano poniżej:
|
1 |
http://server_domain_or_IP:8080 |
|
1 |
sudo ufw allow 8080 |
Krok 7 — Konfiguracja interfejsu zarządzania siecią Tomcat
Aby korzystać z aplikacji internetowej menedżera dołączonej do Tomcat, musimy dodać login do naszego serwera Tomcat. Możemy to zrobić, edytując plik tomcat-users.xml jak pokazano poniżej:
|
1 |
sudo nano /opt/tomcat/conf/tomcat-users.xml |
Tomcat jest dostarczany z aplikacjami internetowymi, które umożliwiają użytkownikowi dostęp do manager-gui oraz admin-gui. Możesz zdefiniować użytkownika pomiędzy znacznikami tomcat-users, jak pokazano poniżej:
|
1 2 3 |
<tomcat-users . . .> <user username="admin" password="password" roles="manager-gui,admin-gui"/> </tomcat-users> |
Po zakończeniu zapisz i zamknij plik.
Wszystkie najnowsze wersje Tomcat ograniczają dostęp do aplikacji Manager i Host Manager do połączeń pochodzących z samego serwera. Aby zmienić ograniczenia adresów IP dla tych aplikacji, otwórz odpowiednie pliki context.xml. Aby uzyskać dostęp do aplikacji Manager, użyj polecenia:
|
1 |
sudo nano /opt/tomcat/webapps/manager/META-INF/context.xml |
Następnie, aby uzyskać dostęp do aplikacji Host Manager, użyj polecenia:
|
1 |
sudo nano /opt/tomcat/webapps/host-manager/META-INF/context.xml |
W zależności od potrzeb możesz zaakceptować lub odrzucić połączenia. Możesz zakomentować ograniczenia adresów IP, aby zezwolić na połączenia z dowolnego miejsca. W przeciwnym razie możesz dodać publiczny adres IP do listy, aby zezwolić na połączenia pochodzące z Twojego adresu IP:
|
1 2 3 4 |
<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> |
Po zakończeniu zapisz i zamknij pliki. Aby zastosować wprowadzone zmiany, zrestartuj usługę Tomcat za pomocą następującego polecenia:
|
1 |
sudo systemctl restart tomcat |
Krok 8 — Dostęp do interfejsu internetowego
Po utworzeniu użytkownika Tomcat możemy teraz uzyskać dostęp do internetowego interfejsu zarządzania. Ponownie możesz uzyskać dostęp do interfejsu, przechodząc pod nazwę domeny lub adres IP serwera, a następnie port 8080:
|
1 |
http://server_domain_or_IP:8080 |
Po kliknięciu tego adresu URL zobaczysz stronę jak pokazano poniżej:
Możesz uzyskać dostęp do aplikacji internetowych Tomcat, wprowadzając dane uwierzytelniające konta, które dodałeś do pliku tomcat-users.xml. Aby uzyskać dostęp do aplikacji Manager, użyj linku:
|
1 |
http://server_domain_or_IP:8080/manager/html |
Po kliknięciu tego adresu URL zobaczysz stronę jak pokazano poniżej:
Aby uzyskać dostęp do aplikacji Host Manager, użyj linku:
|
1 |
http://server_domain_or_IP:8080/host-manager/html |
Po kliknięciu tego adresu URL zobaczysz stronę jak pokazano poniżej:
Podsumowanie
Instalacja serwera Tomcat została zakończona. Możesz teraz swobodnie wdrażać własne aplikacje internetowe Java i ulepszać swoje cyfrowe środowisko. Przekonasz się, że praca z Apache Tomcat jest znacznie szybsza pod względem ładowania i ponownego wdrażania w porównaniu z alternatywnymi rozwiązaniami. Nie nadaje się on jednak do pracy ze stronami statycznymi.
Więcej zasobów na temat wdrażania serwerów opartych na Apache znajdziesz na naszym blogu:
- Przewodnik po rozszerzeniu mod_proxy: Używanie Apache jako odwrotnego proxy
- Świat serwerów WWW: Apache vs. Nginx
- Konfiguracja wirtualnych hostów Apache na Ubuntu 20.04
- Instalacja serwera WWW Apache na CentOS 7
Miłego korzystania z komputera!














Komentarze
Brak komentarzy. Bądź pierwszy.