Apache Tomcat ist ein Open-Source-Webserver und Servlet-Container, der von der Apache Software Foundation (ASF) entwickelt wurde. Tomcat implementiert das Java Servlet und die JavaServer Pages (JSP)-Spezifikationen von Oracle und stellt eine „reine Java“-HTTP-Webserverumgebung zum Ausführen der Java-Codes bereit.
Apache Tomcat enthält Tools zur Konfiguration und Verwaltung, kann aber auch durch Bearbeiten von XML-Konfigurationsdateien konfiguriert werden.
Hier ist die Schritt-für-Schritt-Anleitung zur Installation von Apache Tomcat 9.0/8.5 auf RHEL 7/CentOS 7.
Voraussetzungen
Öffnen Sie ein Terminal und wechseln Sie zum Root-Benutzer.
su -
Tomcat erfordert, dass Java auf Ihrem Computer installiert ist. Sie können entweder Oracle JDK oder OpenJDK installieren.
LESEN :So installieren Sie Oracle JAVA 8 auf CentOS 7 / RHEL 7
Für diesen Beitrag verwende ich OpenJDK.
yum install -y java-1.8.0 wget
Sie können es auch überprüfen, indem Sie den folgenden Befehl ausführen.
java -version
Ausgabe:
openjdk version "1.8.0_212" OpenJDK Runtime Environment (build 1.8.0_212-b04) OpenJDK 64-Bit Server VM (build 25.212-b04, mixed mode)
Tomcat-Dienstkonto erstellen
Als Best Practice sollte Tomcat nicht als Root-Benutzer ausgeführt werden. Erstellen Sie also einen normalen Benutzer zum Ausführen des Tomcat-Dienstes.
groupadd tomcat useradd -g tomcat -d /opt/tomcat -s /bin/nologin tomcat
Apache Tomcat herunterladen und einrichten
Laden Sie die neueste Version von Apache Tomcat von der Website herunter und speichern Sie sie in Ihrem Arbeitsverzeichnis.
Browser
Apache Tomcat 9:
Apache Tomcat 9.0 herunterladen
Apache Tomcat 8.5:
Apache Tomcat 8.5 herunterladen
Terminal
### Apache Tomcat 9.0 ### wget https://www-us.apache.org/dist/tomcat/tomcat-9/v9.0.19/bin/apache-tomcat-9.0.19.tar.gz ### Apache Tomcat 8.5 ### wget https://www-us.apache.org/dist/tomcat/tomcat-8/v8.5.40/bin/apache-tomcat-8.5.40.tar.gz
Extrahieren Sie das Tomcat-Archiv und verschieben Sie es in die gewünschte Datei (/opt/tomcat ) Verzeichnis.
tar -zxvf apache-tomcat-*.tar.gz mv apache-tomcat-*/* /opt/tomcat/
Ändern Sie den Eigentümer des Verzeichnisses, damit Tomcat-Benutzer Dateien darin schreiben können.
chown -R tomcat:tomcat /opt/tomcat/
Apache Tomcat starten
Handbuch
Apache Tomcat kann mit dem mitgelieferten Skript gestartet und gestoppt werden. Starten Sie den Apache Tomcat.
cd /opt/tomcat/bin/ sh startup.sh
Sie erhalten die folgende Ausgabe.
Using CATALINA_BASE: /opt/tomcat Using CATALINA_HOME: /opt/tomcat Using CATALINA_TMPDIR: /opt/tomcat/temp Using JRE_HOME: /usr Using CLASSPATH: /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar Tomcat started.
Stoppen Sie den Apache Tomcat.
cd /opt/tomcat/bin/ sh shutdown.sh
Systemd
Wir können systemd auch so konfigurieren, dass der Tomcat-Dienst gestartet wird. Überspringen Sie den folgenden Schritt, falls Sie systemd nicht zum Verwalten des Tomcat-Dienstes verwenden möchten.
Die systemd-Dienstdatei von Tomcat erfordert einen Java-Speicherort. Führen Sie also den folgenden Befehl aus, um die auf Ihrem System verfügbaren Java-Versionen aufzulisten.
alternatives --list | grep ^java
Ausgabe:
java manual /usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64/jre/bin/java
Derzeit habe ich Java 1.8 auf meinem System.
Erstellen Sie eine Tomcat-Systemd-Dienstdatei. Grüne hängen von der Umwelt ab , ändern Sie sie also entsprechend.
vi /etc/systemd/system/tomcat.service
Fügen Sie die folgenden Informationen zur Tomcat-Systemdienstdatei hinzu.
[Unit] Description=Apache Tomcat Web Application Container Wants=network.target After=network.target [Service] Type=forking Environment=JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.212.b04-0.el7_6.x86_64/ Environment=CATALINA_PID=/opt/tomcat/temp/tomcat.pid Environment=CATALINA_HOME=/opt/tomcat Environment='CATALINA_OPTS=-Xms512M -Xmx1G -Djava.net.preferIPv4Stack=true' Environment='JAVA_OPTS=-Djava.awt.headless=true' ExecStart=/opt/tomcat/bin/startup.sh ExecStop=/opt/tomcat/bin/shutdown.sh SuccessExitStatus=143 User=tomcat Group=tomcat UMask=0007 RestartSec=10 Restart=always [Install] WantedBy=multi-user.target
Systemd-Daemon neu laden.
systemctl daemon-reload
So starten Sie den Tomcat-Dienst; ausführen:
systemctl start tomcat
Überprüfen Sie den Status von Tomcat, führen Sie Folgendes aus:
systemctl status tomcat
Aktivieren Sie den automatischen Start des Tomcat-Dienstes beim Systemstart, führen Sie Folgendes aus:
systemctl enable tomcat
Verifizieren Sie Apache Tomcat
Standardmäßig läuft Tomcat auf Port Nr. 8080. Verwenden Sie den Befehl netstat, um zu überprüfen, ob der Dienst Port 8080 überwacht oder nicht.
netstat -antup | grep 8080
Ausgabe:
tcp6 0 0 :::8080 :::* LISTEN 2428/java
Firewall
Möglicherweise müssen Sie Port 8080 zulassen in der Firewall, damit wir von externen Netzwerken aus auf Tomcat zugreifen können.
firewall-cmd --permanent --add-port=8080/tcp firewall-cmd --reload
Apache Tomcat-Webbenutzeroberfläche konfigurieren
Tomcat kann über den Web Manager verwaltet werden. Mit Web Manager können wir
- Neue Anwendung bereitstellen, bereitstellen
- Neue Anwendung im angegebenen Kontext bereitstellen
- Listen Sie die aktiven oder inaktiven Anwendungen auf
- Starten und stoppen Sie die Webanwendungen
Außerdem verfügt Tomcat über einen Host Manager, um seine virtuellen Hosts zu verwalten.
Sowohl der Web- als auch der Host-Manager sind passwortgeschützt, für den Zugriff sind Benutzername und Passwort erforderlich. Nur der Benutzer mit der „manager-gui “ und „admin-gui ” Rolle darf zugreifen.
Diese Benutzer und Rollen sind in tomcat-users.xml definiert .
vi /opt/tomcat/conf/tomcat-users.xml
Platzieren Sie die folgenden beiden Zeilen direkt über der letzten Zeile.
<role rolename="admin-gui,manager-gui"/> <user username="admin" password="tomcat" roles="manager-gui,admin-gui"/>
Aus Sicherheitsgründen ist der Web- und Host-Manager nur von localhost aus zugänglich, d. h. vom Server selbst.
Wenn Sie von Remote-Systemen auf den Web- und Host-Manager zugreifen möchten, müssen Sie Ihr Quellnetzwerk zur Zulassungsliste hinzufügen. Bearbeiten Sie dazu die beiden folgenden Dateien.
vi /opt/tomcat/webapps/manager/META-INF/context.xml vi /opt/tomcat/webapps/host-manager/META-INF/context.xml
Aktualisieren Sie die folgende Zeile in beiden Dateien mit der Quell-IP, von der aus Sie auf den Web- und Host-Manager zugreifen. .* ermöglicht jedem den Zugriff auf den Web- und Host-Manager.
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|.*" />
ODER
Sie können auch nur einen Teil Ihres Netzwerks zulassen. Zum Beispiel:Um nur das Netzwerk 10.20.0.0/24 zuzulassen, können Sie die folgenden Werte verwenden.
allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1|10.20.*" />
Starten Sie den Tomcat-Dienst neu.
systemctl restart tomcat
Zugriff auf Tomcat
Öffnen Sie den Webbrowser und zeigen Sie auf
http://ip.add.re.ss:8080Sie sollten jetzt die Standardseite von Tomcat erhalten.
Tomcat 9.0:

Tomcat 8.5:

Web Manager:– Anmeldung erforderlich. Benutzername:admin, Passwort:tomcat

Hier können Sie eine neue Anwendung bereitstellen, eine Anwendung in einem bestimmten Kontext bereitstellen, eine Anwendung starten, stoppen, neu laden und die Bereitstellung rückgängig machen.

Sie können auch den Tomcat überprüfen Serverstatus .

Host-Manager:– Anmeldung erforderlich. Benutzername:admin, Passwort:tomcat

Hier können Sie virtuelle Hosts von Tomcat verwalten.

Das ist alles.