GNU/Linux >> LINUX-Kenntnisse >  >> Ubuntu

So installieren Sie Tomcat 9 unter Ubuntu 18.04

Apache Tomcat ist eine Open-Source-Implementierung der Technologien Java Servlet, JavaServer Pages, Java Expression Language und Java WebSocket. Es ist heute einer der am weitesten verbreiteten Anwendungs- und Webserver der Welt. Tomcat ist einfach zu bedienen und verfügt über ein robustes Ökosystem von Add-Ons.

Dieses Tutorial erklärt, wie man Tomcat 9 auf Ubuntu 18.04 installiert und konfiguriert. Dieselben Anweisungen gelten für Ubuntu 16.04 und alle Ubuntu-basierten Distributionen, einschließlich Linux Mint und Elementary OS.

Voraussetzungen #

Um Pakete auf Ihrem Ubuntu-System installieren zu können, müssen Sie als Benutzer mit sudo-Berechtigungen angemeldet sein.

Schritt 1:Installieren Sie OpenJDK #

Für Tomcat muss Java installiert sein. Wir installieren OpenJDK, die standardmäßige Java-Entwicklung und -Laufzeit in Ubuntu 18.04.

Die Installation von Java ist ziemlich einfach. Beginnen Sie mit der Aktualisierung des Paketindex:

sudo apt update

Installieren Sie das OpenJDK-Paket, indem Sie Folgendes ausführen:

sudo apt install default-jdk

Schritt 2:Tomcat-Benutzer # erstellen

Aus Sicherheitsgründen sollte Tomcat nicht unter dem Root-Benutzer ausgeführt werden. Wir erstellen einen neuen Systembenutzer und eine neue Gruppe mit dem Home-Verzeichnis /opt/tomcat das den Tomcat-Dienst ausführt:

sudo useradd -r -m -U -d /opt/tomcat -s /bin/false tomcat

Schritt 3:Installieren Sie Tomcat #

Wir werden die neueste Binärversion von Tomcat 9 von der Tomcat 9-Downloadseite herunterladen.

Zum Zeitpunkt des Schreibens ist die neueste Version 9.0.27 . Bevor Sie mit dem nächsten Schritt fortfahren, sollten Sie auf der Download-Seite nach einer neuen Version suchen. Wenn es eine neue Version gibt, kopieren Sie den Link zum Core tar.gz Datei, die sich im Abschnitt „Binary Distributions“ befindet.

Laden Sie zunächst das Tomcat-Archiv in /tmp herunter Verzeichnis mit dem folgenden wget Befehl:

wget http://www-eu.apache.org/dist/tomcat/tomcat-9/v9.0.27/bin/apache-tomcat-9.0.27.tar.gz -P /tmp

Extrahieren Sie nach Abschluss des Downloads das Tomcat-Archiv und verschieben Sie es nach /opt/tomcat Verzeichnis:

sudo tar xf /tmp/apache-tomcat-9*.tar.gz -C /opt/tomcat

Um mehr Kontrolle über Tomcat-Versionen und -Updates zu haben, erstellen Sie einen symbolischen Link namens latest das zeigt auf das Installationsverzeichnis von Tomcat:

sudo ln -s /opt/tomcat/apache-tomcat-9.0.27 /opt/tomcat/latest

Wenn Sie Ihre Tomcat-Instanz später aktualisieren möchten, entpacken Sie einfach die neuere Version und ändern Sie den Symlink so, dass er auf die neueste Version verweist.

Wie wir im vorherigen Abschnitt erwähnt haben, läuft Tomcat unter tomcat Benutzer. Dieser Benutzer muss Zugriff auf das Tomcat-Installationsverzeichnis haben.

Der folgende Befehl ändert den Besitz des Verzeichnisses auf Benutzer und Gruppe Tomcat:

sudo chown -RH tomcat: /opt/tomcat/latest

Die Skripte in bin Verzeichnis muss ausführbares Flag haben:

sudo sh -c 'chmod +x /opt/tomcat/latest/bin/*.sh'

Schritt 4:Erstellen Sie eine systemd-Unit-Datei #

Um Tomcat als Dienst auszuführen, müssen Sie eine neue Unit-Datei erstellen.

Öffnen Sie Ihren Texteditor und erstellen Sie eine Datei namens tomcat.service in /etc/systemd/system/ :

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

Fügen Sie die folgende Konfiguration ein:

/etc/systemd/system/tomcat.service
[Unit]
Description=Tomcat 9 servlet container
After=network.target

[Service]
Type=forking

User=tomcat
Group=tomcat

Environment="JAVA_HOME=/usr/lib/jvm/default-java"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom -Djava.awt.headless=true"

Environment="CATALINA_BASE=/opt/tomcat/latest"
Environment="CATALINA_HOME=/opt/tomcat/latest"
Environment="CATALINA_PID=/opt/tomcat/latest/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"

ExecStart=/opt/tomcat/latest/bin/startup.sh
ExecStop=/opt/tomcat/latest/bin/shutdown.sh

[Install]
WantedBy=multi-user.target
Ändern Sie den Wert von JAVA_HOME wenn der Pfad zu Ihrer Java-Installation anders ist.

Speichern und schließen Sie die Datei und benachrichtigen Sie systemd, dass wir eine neue Unit-Datei erstellt haben:

sudo systemctl daemon-reload

Starten Sie den Tomcat-Dienst, indem Sie Folgendes ausführen:

sudo systemctl start tomcat

Überprüfen Sie den Dienststatus mit dem folgenden Befehl:

sudo systemctl status tomcat
* tomcat.service - Tomcat 9 servlet container
   Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: enabled)
   Active: active (running) since Wed 2018-09-05 15:45:28 PDT; 20s ago
  Process: 1582 ExecStart=/opt/tomcat/latest/bin/startup.sh (code=exited, status=0/SUCCESS)
 Main PID: 1604 (java)
    Tasks: 47 (limit: 2319)
   CGroup: /system.slice/tomcat.service

Wenn keine Fehler vorliegen, aktivieren Sie den automatischen Start des Tomcat-Dienstes beim Booten:

sudo systemctl enable tomcat

Schritt 5:Passen Sie die Firewall # an

Wenn Ihr Server durch eine Firewall geschützt ist und Sie von außerhalb Ihres lokalen Netzwerks auf Tomcat zugreifen möchten, müssen Sie Port 8080 öffnen .

Um Datenverkehr auf Port 8080 zuzulassen Geben Sie den folgenden Befehl ein:

sudo ufw allow 8080/tcp
Wenn Sie eine Tomcat-Anwendung in einer Produktionsumgebung ausführen, verfügen Sie normalerweise über einen Load Balancer oder Reverse Proxy. Es hat sich bewährt, den Zugriff auf Port 8080 zu beschränken nur in Ihr internes Netzwerk.

Schritt 6:Tomcat Web Management Interface konfigurieren #

Nachdem Tomcat nun installiert ist und ausgeführt wird, besteht der nächste Schritt darin, einen Benutzer mit Zugriff auf die Webverwaltungsschnittstelle zu erstellen.

Tomcat-Benutzer und -Rollen werden in der tomcat-users.xml definiert Datei. Diese Datei ist eine Vorlage mit Kommentaren und Beispielen, die beschreiben, wie Benutzer oder Rollen konfiguriert werden.

sudo nano /opt/tomcat/latest/conf/tomcat-users.xml

Um einen neuen Benutzer mit Zugriff auf die Tomcat-Weboberfläche (manager-gui und admin-gui) hinzuzufügen, müssen wir den Benutzer in der tomcat-users.xml definieren Datei, wie unten gezeigt. Stellen Sie sicher, dass Sie den Benutzernamen und das Passwort in etwas Sichereres ändern:

/opt/tomcat/latest/conf/tomcat-users.xml
<tomcat-users>
<!--
    Comments
-->
   <role rolename="admin-gui"/>
   <role rolename="manager-gui"/>
   <user username="admin" password="admin_password" roles="admin-gui,manager-gui"/>
</tomcat-users>

Standardmäßig ist die Tomcat-Webverwaltungsschnittstelle so konfiguriert, dass der Zugriff auf die Manager- und Host-Manager-Apps nur vom lokalen Host beschränkt wird.

Wenn Sie von einer Remote-IP aus auf die Weboberfläche zugreifen möchten, müssen Sie diese Einschränkungen entfernen. Dies kann verschiedene Auswirkungen auf die Sicherheit haben und wird für Produktionssysteme nicht empfohlen.

Um den Zugriff auf die Weboberfläche von überall aus zu ermöglichen, öffnen Sie die folgenden beiden Dateien und kommentieren oder entfernen Sie die gelb markierten Zeilen.

Öffnen Sie für die Manager-App die folgende Datei:

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

Öffnen Sie für die Host Manager-App die folgende Datei:

sudo nano /opt/tomcat/latest/webapps/host-manager/META-INF/context.xml
context.xml
<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>

Eine weitere Option besteht darin, den Zugriff auf die Manager- und Host-Manager-Apps nur von einer bestimmten IP aus zuzulassen. Anstatt die Blöcke zu kommentieren, kannst du einfach deine IP-Adresse zur Liste hinzufügen.

Zum Beispiel, wenn Ihre öffentliche IP-Adresse 45.45.45.45 ist Sie würden die folgende Änderung vornehmen:

context.xml
<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|45.45.45.45" />
</Context>

Die Liste der zulässigen IP-Adressen ist eine Liste, die durch einen vertikalen Strich | getrennt ist . Sie können einzelne IP-Adressen hinzufügen oder reguläre Ausdrücke verwenden.

Denken Sie daran, den Tomcat-Dienst jedes Mal neu zu starten, wenn Sie Tomcat-Konfigurationsdateien bearbeiten, damit die Änderungen wirksam werden:

sudo systemctl restart tomcat

Schritt 6:Testen Sie die Tomcat-Installation #

Öffnen Sie Ihren Browser und geben Sie Folgendes ein:http://<your_domain_or_IP_address>:8080

Vorausgesetzt, die Installation ist erfolgreich, sollte ein Bildschirm ähnlich dem folgenden erscheinen:

Das Dashboard des Tomcat-Webanwendungsmanagers ist unter http://<your_domain_or_IP_address>:8080/manager/html verfügbar . Von hier aus können Sie Ihre Anwendungen bereitstellen, die Bereitstellung aufheben, starten, stoppen und neu laden.

Sie können sich mit dem Benutzer anmelden, den Sie in Step 6 erstellt haben .

Das Tomcat Virtual Host Manager-Dashboard ist unter http://<your_domain_or_IP_address>:8080/host-manager/html verfügbar . Von hier aus können Sie virtuelle Tomcat-Hosts erstellen, löschen und verwalten.


Ubuntu
  1. So installieren Sie Tomcat 9 auf CentOS 7

  2. So installieren Sie Docker unter Ubuntu 18.04

  3. So installieren Sie Tomcat unter Ubuntu 18.04

  4. So installieren Sie Tomcat 8 auf Ubuntu 14.04

  5. So installieren Sie Tomcat unter Ubuntu 18.04

So installieren Sie Apache unter Ubuntu 20.04

So installieren Sie Tomcat 8.5 auf Ubuntu 18.04

So installieren Sie Tomcat 9 unter Ubuntu 20.04

So installieren Sie Apache Tomcat 9 auf Ubuntu 18.04 LTS

So installieren Sie Apache Tomcat unter Ubuntu 20.04 LTS

So installieren Sie Tomcat unter Ubuntu 20.04