Website-Suche

So installieren Sie Apache Tomcat in Ubuntu


Wenn Sie Webseiten ausführen möchten, die Java-Serverseitencodierung oder Java-Servlets enthalten, können Sie Apache Tomcat verwenden. Es handelt sich um einen Open-Source-Webserver und Servlet-Container, veröffentlicht von der Apache Software Foundation.

Tomcat kann als eigenständiges Produkt mit eigenem Webserver verwendet oder mit anderen Webservern wie Apache oder IIS kombiniert werden. Die neueste Version von Tomcat ist 9.0.14 und baut auf Tomcat 8 und 8.5 auf und implementiert Servlet 4.0, JSP 2.2.

Lesen Sie auch: So installieren Sie Apache Tomcat 9 in CentOS/RHEL

Folgende Verbesserungen wurden in der neuen Version vorgenommen:

  • Unterstützung für HTTP/2 hinzugefügt.
  • Unterstützung für die Verwendung von OpenSSL für TLS-Unterstützung mit den JSSE-Konnektoren hinzugefügt.
  • Unterstützung für virtuelle TLS-Hosts (SNI) hinzugefügt.

In diesem Tutorial zeigen wir Ihnen, wie Sie Apache Tomcat 9 in Ubuntu 18.10 und älteren Versionen von Ubuntu installieren.

Schritt 1: Java installieren

Um Java-Webanwendungen auszuführen, muss für Tomcat Java auf dem Server installiert sein. Um diese Anforderung zu erfüllen, installieren wir OpenJDK wie gezeigt.

sudo apt update
sudo apt install default-jdk

Schritt 2: Erstellen eines Tomcat-Benutzers

Aus Sicherheitsgründen sollte Tomcat mit einem nicht privilegierten Benutzer, d. h. ohne Root, ausgeführt werden. Aus diesem Grund erstellen wir einen Tomcat-Benutzer und eine Gruppe, die den Dienst ausführen. Beginnen Sie mit der Erstellung der Tomcat-Gruppe:

sudo groupadd tomcat

Als Nächstes erstellen wir einen Tomcat-Benutzer, der Mitglied der Tomcat-Gruppe sein wird. Der Heimatort dieses Benutzers ist /opt/tomcat, da wir Tomcat hier installieren werden. Die Shell muss auf /bin/false gesetzt werden:

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

Jetzt können wir mit dem nächsten Schritt fortfahren und Tomcat herunterladen.

Schritt 3: Apache Tomcat installieren

Um das neueste verfügbare Paket herunterzuladen, gehen Sie zur Download-Seite von Tomcat und holen Sie sich die neueste Version.

Zum Zeitpunkt der Erstellung dieses Tutorials ist die neueste Version von Tomcat 9.0.14. Um diese Version herunterzuladen, ändern Sie Ihr aktuelles Verzeichnis in ein anderes. Sie können beispielsweise /tmp verwenden:

cd /tmp

Und dann mit dem Befehl wget das Tomcat-Archiv herunterladen:

wget http://apache.cbox.biz/tomcat/tomcat-9/v9.0.14/bin/apache-tomcat-9.0.14.tar.gz
wget https://www.apache.org/dist/tomcat/tomcat-9/v9.0.14/bin/apache-tomcat-9.0.14.tar.gz.sha512

Wenn Sie die sha512-Summe der Datei überprüfen möchten, können Sie Folgendes ausführen:


sha512sum apache-tomcat-9.0.14.tar.gz
cat apache-tomcat-9.0.14.tar.gz.sha512

Der resultierende Wert (Hash) für beide Dateien sollte gleich sein.

Wie bereits erwähnt, werden wir Tomcat in /opt/tomcat installieren. Wir müssen dieses Verzeichnis erstellen:

sudo mkdir /opt/tomcat

Und jetzt können wir das heruntergeladene Paket in dieses neue Verzeichnis extrahieren:

sudo tar xzvf apache-tomcat-9.0.14.tar.gz -C /opt/tomcat --strip-components=1

Navigieren Sie nun zu /opt/tomcat, von wo aus wir den Ordnerbesitz und die Berechtigungen aktualisieren:

cd /opt/tomcat

Und setzen Sie den Gruppeneigentümer von /opt/tomcat auf tomcat:

sudo chgrp -R tomcat /opt/tomcat

Als nächstes aktualisieren wir den Lesezugriff der Tomcat-Gruppe auf das Verzeichnis conf und legen Ausführungsberechtigungen für das Verzeichnis fest:

sudo chmod -R g+r conf
sudo chmod g+x conf

Als Nächstes machen wir den Tomcat-Benutzer zum Besitzer der Verzeichnisse webapps, work, temp und logs:

sudo chown -R tomcat webapps/ work/ temp/ logs/

Jetzt wurden die richtigen Berechtigungen und Besitztümer festgelegt und wir können eine systemd-Startdatei erstellen, die uns bei der Verwaltung des Tomcat-Prozesses hilft.

Schritt 4: Erstellen einer SystemD-Dienstdatei für Tomcat

Da wir Tomcat als Dienst ausführen möchten, benötigen wir eine Datei, die uns bei der einfachen Verwaltung des Prozesses hilft. Zu diesem Zweck erstellen wir eine systemd-Dienstdatei. Tomcat muss wissen, wo sich Java auf Ihrem System befindet.

Um diesen Speicherort zu finden, verwenden Sie den folgenden Befehl:

sudo update-java-alternatives -l

Die Ausgabe dieses Befehls zeigt Ihnen den Speicherort von JAVA_HOME.

Mit diesen Informationen können wir nun unsere Tomcat-Servicedatei erstellen.

sudo vim  /etc/systemd/system/tomcat.service

Fügen Sie den folgenden Code in die Datei ein:

[Unit]
Description=Apache Tomcat Web Application Container
After=network.target

[Service]
Type=forking

Environment=JAVA_HOME=/usr/lib/jvm/java-1.11.0-openjdk-amd64
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

Stellen Sie sicher, dass Sie JAVA_HOME auf das für Ihr System eingestellte festlegen. Wenn Sie fertig sind, speichern Sie die Datei und schließen Sie sie. Laden Sie nun mit dem folgenden Befehl den systemd-Daemon neu, damit er unsere neue Servicedatei finden kann:

sudo systemctl daemon-reload

Starten Sie dann den Tomcat-Dienst:

sudo systemctl start tomcat

Sie können den Servicestatus überprüfen mit:

sudo systemctl status tomcat

Sie können Tomcat jetzt in Ihrem Browser testen, indem Sie die IP-Adresse Ihres Systems gefolgt vom Standardport 8080 des Dienstes verwenden.

http://ip-address:8080

Das Ergebnis, das Sie sehen sollten, ähnelt dem im Bild unten gezeigten:

Falls Sie die obige Ausgabe nicht sehen, müssen Sie möglicherweise den Port 8080 wie gezeigt in Ihrer Firewall zulassen.

sudo ufw allow 8080

Wenn Sie möchten, dass Tomcat beim Systemstart gestartet wird, führen Sie Folgendes aus:

systemctl enable tomcat

Schritt 5: Apache Tomcat konfigurieren

Tomcat verfügt über eine vorinstallierte Web-Manager-App. Um es verwenden zu können, müssen wir die Authentifizierung in unserer Datei tomcat-users.xml einrichten. Öffnen und bearbeiten Sie diese Datei mit Ihrem bevorzugten Texteditor:

sudo vim /opt/tomcat/conf/tomcat-users.xml

Wir werden einen Benutzer hinzufügen, der auf die Schnittstellen Manager und Administrator zugreifen kann. Um einen solchen Benutzer zu konfigurieren, fügen Sie zwischen den Tags die folgende Zeile hinzu:

<user username="Username" password="Password" roles="manager-gui,admin-gui"/>

Stellen Sie sicher, dass Sie Folgendes ändern:

  • Benutzername – mit dem Benutzer, den Sie authentifizieren möchten.
  • Passwort – mit dem Passwort, das Sie zur Authentifizierung verwenden möchten.

Da der Zugriff auf den Host Manager und Manager standardmäßig eingeschränkt ist, möchten wir diese Einschränkungen entweder entfernen oder ändern. Um solche Änderungen vorzunehmen, können Sie die folgenden Dateien laden:

Für die Manager-App:

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

Für die Host-Manager-App:

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

In diesen Dateien können Sie entweder die IP-Beschränkung kommentieren oder Ihre öffentliche IP-Adresse dort zulassen. Für dieses Tutorial habe ich die Zeile kommentiert:

Um unsere Änderungen live zu machen, laden Sie den Tomcat-Dienst neu mit:

sudo systemctl restart tomcat 


Sie können die Manager-App jetzt testen, indem Sie auf http://ipaddress:8080/manager/ zugreifen. Wenn Sie zur Eingabe von Benutzername und Passwort aufgefordert werden, verwenden Sie diejenigen, die Sie zuvor konfiguriert haben. Die Oberfläche, die Sie danach sehen sollten, sieht folgendermaßen aus:

Um auf den Host-Manager zuzugreifen, können Sie http://ip-address:8080/host-manager/ verwenden.

Mit dem Virtual Host Manager können Sie virtuelle Hosts für Ihre Tomcat-Anwendungen erstellen.

Schritt 6: Testen von Apache Tomcat durch Erstellen einer Testdatei

Sie können überprüfen, ob alles reibungslos funktioniert, indem Sie eine Testdatei im Verzeichnis /opt/tomcat/webapps/ROOT/ erstellen.

Lassen Sie uns eine solche Datei erstellen:

sudo vim /opt/tomcat/webapps/ROOT/tecmint.jsp

Fügen Sie in diese Datei den folgenden Code ein:

<html>
<head>
<title>Tecmint post:TomcatServer</title>
</head>
<body>

<START OF JAVA CODES>
<%
    out.println("Hello World! I am running my first JSP Application");
    out.println("<BR>Tecmint is an Awesome online Linux Resource.");
%>
<END OF JAVA CODES>

</body>
</html>

Speichern Sie die Datei und legen Sie den Besitz wie gezeigt fest.

sudo chown tomcat: /opt/tomcat/apache-tomcat-8.5.14/webapps/ROOT/tecmint.jsp

Laden Sie nun diese Datei in Ihren Browser, indem Sie http://ip-address:8080/tecmint.jsp verwenden.

Das ist es! Sie haben die Einrichtung Ihres Apache Tomcat-Servers abgeschlossen und Ihren ersten Java-Code ausgeführt. Wir hoffen, dass der Vorgang für Sie einfach und unkompliziert war. Wenn Sie auf Probleme stoßen, teilen Sie uns Ihre Probleme über das Kommentarformular unten mit.