GNU/Linux >> LINUX-Kenntnisse >  >> Debian

So installieren Sie Tomcat 9 unter Debian 10 Linux

Apache Tomcat ist ein Java-basierter Open-Source-Anwendungsserver, der Java Servlet-, JavaServer Pages-, Java Expression Language- und Java WebSocket-Technologien implementiert. Es ist heute einer der am häufigsten verwendeten Anwendungs- und Webserver der Welt.

Dieses Tutorial erklärt, wie man Apache Tomcat 9.0 auf Debian 10 Buster installiert und die Tomcat-Webverwaltungsschnittstelle konfiguriert.

Voraussetzungen #

Die Anweisungen gehen davon aus, dass Sie als Root oder Benutzer mit sudo-Berechtigungen angemeldet sind.

Installation von OpenJDK #

Für Tomcat 9.0 muss Java SE 8 oder höher auf dem Server installiert sein.

Führen Sie den folgenden Befehl aus, um das OpenJDK-Paket zu installieren:

sudo apt install default-jdk

Erstellen eines Tomcat-Benutzers #

Das Ausführen von Tomcat als Root-Benutzer stellt ein Sicherheitsrisiko dar und wird nicht empfohlen. Wir erstellen einen neuen Benutzer, der zum Ausführen des Tomcat-Dienstes verwendet wird.

Führen Sie den folgenden Befehl aus, um einen neuen Systembenutzer und eine neue Gruppe mit einem Home-Verzeichnis von /opt/tomcat zu erstellen :

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

Tomcat wird heruntergeladen #

Zum Zeitpunkt des Schreibens ist die neueste Tomcat-Version 9.0.27 . Bevor Sie mit dem nächsten Schritt fortfahren, sollten Sie auf der Tomcat 9-Downloadseite nachsehen, ob eine neuere Version verfügbar ist.

Wechseln Sie zu /tmp Verzeichnis und laden Sie die neueste Tomcat-Binärversion herunter:

cd /tmpwget https://www-eu.apache.org/dist/tomcat/tomcat-9/v9.0.27/bin/apache-tomcat-9.0.27.tar.gz

Wenn der Download abgeschlossen ist, extrahieren Sie das gzip-Archiv:

tar -xf apache-tomcat-9.0.27.tar.gz

Verschieben Sie die Tomcat-Quelldateien dorthin in den Ordner /opt/tomcat Verzeichnis:

sudo mv apache-tomcat-9.0.27 /opt/tomcat/

Tomcat 9 wird regelmäßig aktualisiert. Um mehr Kontrolle über 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

Entpacken Sie später beim Upgrade von Tomcat einfach die neuere Version und ändern Sie den Symlink so, dass er auf die neueste Version verweist.

Ändern Sie den Besitz von /opt/tomcat Verzeichnis zu Benutzer und Gruppe tomcat , damit der Benutzer Zugriff auf das Installationsverzeichnis hat:

sudo chown -R tomcat: /opt/tomcat

Erstellen Sie die Skripte im bin Verzeichnis ausführbar:

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

SystemD-Unit-Datei wird erstellt #

Öffnen Sie Ihren Texteditor und erstellen Sie eine neue Datei namens tomcat.service mit folgendem Inhalt:

sudo nano /etc/systemd/system/tomcat.service
/etc/systemd/system/tomcat.service
[Unit]
Description=Tomcat 9.0 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"

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

Benachrichtigen Sie systemd, dass eine neue Unit-Datei existiert, und starten Sie den Tomcat-Dienst, indem Sie Folgendes eingeben:

sudo systemctl daemon-reloadsudo systemctl start tomcat

Überprüfen Sie den Status des Tomcat-Dienstes, indem Sie Folgendes eingeben:

sudo systemctl status tomcat
● tomcat.service - Tomcat 9.0 servlet container
   Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: 
   Active: active (running) since Sat 2019-11-09 13:53:51 PST; 5s ago
  Process: 5752 ExecStart=/opt/tomcat/latest/bin/startup.sh (code=exited, status
 Main PID: 5759 (java)

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

sudo systemctl enable tomcat

Sie können Tomcat wie jeden anderen systemd-Unit-Dienst starten, stoppen und neu starten:

sudo systemctl start tomcatsudo systemctl stop tomcatsudo systemctl restart tomcat

Firewall anpassen #

Wenn auf Ihrem Debian-System eine Firewall läuft und Sie von außerhalb Ihres lokalen Netzwerks auf die Tomcat-Schnittstelle zugreifen möchten, müssen Sie den Port 8080 öffnen :

sudo ufw allow 8080/tcp

Wenn Sie eine Tomcat-Anwendung in einer Produktionsumgebung ausführen, haben Sie höchstwahrscheinlich einen Load Balancer oder Reverse-Proxy, und es ist eine bewährte Methode, den Zugriff auf Port 8080 nur auf Ihr internes Netzwerk zu beschränken.

Konfigurieren der Tomcat-Webverwaltungsschnittstelle #

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

Tomcat-Benutzer und ihre Rollen sind in der tomcat-users.xml definiert Datei.

Wenn Sie die Datei öffnen, werden Sie feststellen, dass sie mit Kommentaren und Beispielen gefüllt ist, die beschreiben, wie die Datei konfiguriert wird:

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

Wir werden den neuen Benutzer in der tomcat-users.xml definieren Datei, wie unten gezeigt. Der Benutzer hat Zugriff auf die Tomcat-Weboberfläche (Manager-GUI und Admin-GUI). 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 erlaubt die Tomcat-Webverwaltungsschnittstelle nur den Zugriff vom localhost. Wenn Sie von einer Remote-IP oder von einem anderen Ort aus auf das Webinterface zugreifen möchten, was nicht empfohlen wird, da dies ein Sicherheitsrisiko darstellt, können Sie die folgenden Dateien öffnen und die folgenden Änderungen vornehmen.

Wenn Sie von überall auf die Weboberfläche zugreifen müssen, öffnen Sie die folgenden Dateien und kommentieren oder entfernen Sie die gelb markierten Zeilen:

/opt/tomcat/latest/webapps/manager/META-INF/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>
/opt/tomcat/latest/webapps/host-manager/META-INF/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>

Wenn Sie nur von einer bestimmten IP auf die Weboberfläche zugreifen müssen, fügen Sie Ihre öffentliche IP zur Liste hinzu, anstatt die Blöcke zu kommentieren. Nehmen wir an, Ihre öffentliche IP ist 32.32.32.32 und Sie möchten den Zugriff nur von dieser IP zulassen:

/opt/tomcat/latest/webapps/manager/META-INF/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|32.32.32.32" />
</Context>
/opt/tomcat/latest/webapps/host-manager/META-INF/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|32.32.32.32" />
</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.

Starten Sie den Tomcat-Dienst neu, damit die Änderungen wirksam werden:

sudo systemctl restart tomcat

Testen Sie die Installation #

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

Wenn die Installation erfolgreich ist, wird ein Bildschirm ähnlich dem folgenden angezeigt:

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.

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.


Debian
  1. So installieren Sie Logstash unter Debian Linux

  2. So installieren Sie Tomcat 9 unter Debian 9 Stretch Linux

  3. So installieren Sie Elasticsearch unter Debian Linux

  4. So installieren Sie VirtualBox unter Debian Linux

  5. So installieren Sie Tomcat 8 auf Debian 8

So installieren Sie sudo unter Debian oder Ubuntu Linux

So installieren Sie MariaDB 10 unter Debian 11 Bullseye Linux

So installieren Sie NextCloud unter Debian 11 Bullseye Linux

So installieren Sie Tomcat auf Debian 10 Buster

So installieren Sie Go unter Debian 11

So installieren Sie Apache Tomcat unter Debian 10