Die Apache Tomcat-Software ist eine Open-Source-Implementierung der Spezifikationen Jakarta Servlet, Jakarta Server Pages, Jakarta Expression Language, Jakarta WebSocket, Jakarta Annotations und Jakarta Authentication. Diese Spezifikationen sind Teil der Jakarta EE-Plattform und erlaubt es damit, in Java geschriebene Web-Anwendungen auf Servlet- beziehungsweise JSP-Basis auszuführen.
Hinweis - Die nachfolgenden Ausführungen erheben keinen Anspruch auf Vollständigkeit, sondern stellt eine „Basiskonfiguration“ eines Apache Tomcat als Applikation-Server dar!!!
ACHTUNG - Im Gegensatz zur Information auf der Apache Tomcat-Homepage im Bereich Which version? ist hier zwingend eine JAVA-Version jre11-openjdk mindestens erforderlich!
Ab hier werden zur Ausführung nachfolgender Befehle root-Rechte benötigt. Um der Benutzer root zu werden, melden Sie sich bitte als root-Benutzer am System an, oder wechseln mit nachfolgendem Befehl zum Benutzer root:
$ su -
Password:
Überblick
Nachfolgende Pakete können neben dem Hauptpaket des Apache Tomcat-Software zusätzlich installiert werden, je nach Bedarf und Umgebung, in der sich der Apache Tomcat befindet und laufen soll:
tomcat9 - Apache Tomcat-Software (ROOT, docs, examples, host-manager, manager)
- ist im extra-Repository von ArchLinux enthalten.
Zusätzlich sollten für den Betrieb des Apache Tomcat-Servers, nachfolgendes Paket installiert werden:
Zur Installation von Apache Tomcat-Software als pacman-Paket, ist nachfolgendes Paket mindestens erforderlich (welches bei der Installation von tomcat9, falls nicht bereits vorhanden, mit installiert wird):
Abhängigkeit von OpenJDK (Runntime Environment) und müsste nicht explizit installiert werden
jre11-openjdk - ist im extra-Repository von ArchLinux enthalten.
ACHTUNG - Für eine explizite Version z.B. jre11-openjdk muss diese zuvor jedoch installiert werden!
Voraussetzungen
Nachfolgende Voraussetzungen müssen vor der Installation von Apache Tomcat-Software erfüllt sein, damit Apache Tomcat-Software betrieben werden kann:
Installiertes JAVA z.B. OpenJDK (Runntime Environment) ab der Version 11
Installation
tomcat9
Zur Installation des Apache Tomcat-Software wird nachfolgendes Paket benötigt:
tomcat9 - ist im extra-Repository von ArchLinux enthalten
installiert werden.
Mit nachfolgendem Befehl, wird das Pakete jre9-openjdk und tomcat9 installiert:
# pacman -Qil tomcat-native
Name : tomcat-native
Version : 2.0.4-1
Description : Optional component for Tomcat to use certain native resources
for performance, compatibility
Architecture : x86_64
URL : https://tomcat.apache.org/native-doc/
Licenses : APACHE
Groups : None
Provides : None
Depends On : apr openssl
Optional Deps : None
Required By : None
Optional For : tomcat9
Conflicts With : None
Replaces : None
Installed Size : 89.97 KiB
Packager : Maxime Gauduin <alucryd@archlinux.org>
Build Date : Sat 03 Jun 2023 12:13:41 PM CEST
Install Date : Wed 02 Aug 2023 08:54:25 AM CEST
Install Reason : Explicitly installed
Install Script : No
Validated By : Signature
tomcat-native /usr/
tomcat-native /usr/lib/
tomcat-native /usr/lib/libtcnative-2.so
tomcat-native /usr/lib/libtcnative-2.so.0
tomcat-native /usr/lib/libtcnative-2.so.0.0.4
Dienst/Deamon-Start einrichten
Um den Apache Tomcat-Software, welcher als Dienst/Deamon als Hintergrundprozess läuft, auch nach einem Neustart des Servers zur Verfügung zu haben, soll der Dienst/Daemon mit dem Server mit gestartet werden, was mit nachfolgendem Befehl realisiert werden kann:
# systemctl enable tomcat9.service
Created symlink /etc/systemd/system/multi-user.target.wants/tomcat9.service → /usr/lib/systemd/system/tomcat9.service.
Eine Überprüfung, ob beim Neustart des Server der tomcat9-Dienst/Deamon wirklich mit gestartet wird, kann mit nachfolgendem Befehl erfolgen und sollte eine Anzeige, wie ebenfalls nachfolgend dargestellt ausgeben:
Nachfolgend kann mit folgendem Befehl überprüft werden, welche Java-Version die aktuell bevorzugte im Archlinux-Betriebssystem ist.
Da mehrere Versionen von Java installiert sein könnten, sollte dies auf jeden Fall überprüft werden:
# archlinux-java status
Available Java environments:
java-11-openjdk (default)
java-8-openjdk/jre
HINWEIS - Die Zeile, falls mehrere vorhanden sein sollten, mit der Ausgabe (default) ist die entscheidende:
...
java-11-openjdk (default)
...
Falls dies nicht wie oben dargestellt sein sollte, oder eine andere ebenfalls installierte Version von Java zum Einsatz kommen soll, kann mit nachfolgendem Befehl die Java-Version ausgewählt werden:
# archlinux-java set java-11-openjdk
HINWEIS - Es erfolgt bei erfolgreicher Befehlsausführung keine Ausgabe!
Nachfolgend sollen einige Änderungen bzw. Ergänzungen an dieser Konfigurationsdatei durchgeführt werden, welchen ein Kommentar, wie nachfolgend dargestellt, voransteht:
# Tachtler
Die Änderungen an der Konfigurationsdatei tomcat9.service können mit nachfolgendem Befehl bequem editiert werden:
Anschliessend können mit nachfolgendem Befehl die Änderungen übernommen werden:
# systemctl daemon-reload
/etc/tomcat9/server.xml
Die Konfigurationsdatei
/etc/tomcat9/server.xml
ist die Haupt-Konfigurationsdatei des Apache Tomcat-Applikation-Servers.
Nachfolgend sollen einige Änderungen bzw. Ergänzungen an dieser Konfigurationsdatei durchgeführt werden, welchen ein Kommentar, wie nachfolgend dargestellt, voransteht:
<!-- Tachtler -->
Hier die komplette Konfigurationsdatei
/etc/tomcat9/server.xml
mit allen Änderungen bzw. Ergänzungen, welche ebenfalls nachfolgend erklärt werden:
<?xmlversion="1.0"encoding="UTF-8"?><!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.--><!-- Note: A "Server" is not itself a "Container", so you may not define subcomponents such as "Valves" at this level. Documentation at /docs/config/server.html --><!-- Tachtler --><!-- <Server port="8005" shutdown="SHUTDOWN"> --><Serverport="8089"shutdown="DOWN2CAT"><ListenerclassName="org.apache.catalina.startup.VersionLoggerListener"/><!-- Security listener. Documentation at /docs/config/listeners.html <Listener className="org.apache.catalina.security.SecurityListener" /> --><!-- APR library loader. Documentation at /docs/apr.html --><ListenerclassName="org.apache.catalina.core.AprLifecycleListener"SSLEngine="on"/><!-- Prevent memory leaks due to use of particular java/javax APIs--><ListenerclassName="org.apache.catalina.core.JreMemoryLeakPreventionListener"/><ListenerclassName="org.apache.catalina.mbeans.GlobalResourcesLifecycleListener"/><ListenerclassName="org.apache.catalina.core.ThreadLocalLeakPreventionListener"/><!-- Global JNDI resources Documentation at /docs/jndi-resources-howto.html --><GlobalNamingResources><!-- Editable user database that can also be used by UserDatabaseRealm to authenticate users --><Resourcename="UserDatabase"auth="Container"type="org.apache.catalina.UserDatabase"description="User database that can be updated and saved"factory="org.apache.catalina.users.MemoryUserDatabaseFactory"pathname="conf/tomcat-users.xml"/></GlobalNamingResources><!-- A "Service" is a collection of one or more "Connectors" that share a single "Container" Note: A "Service" is not itself a "Container", so you may not define subcomponents such as "Valves" at this level. Documentation at /docs/config/service.html --><Servicename="Catalina"><!--The connectors can use a shared executor, you can define one or more named thread pools--><!-- <Executor name="tomcatThreadPool" namePrefix="catalina-exec-" maxThreads="150" minSpareThreads="4"/> --><!-- A "Connector" represents an endpoint by which requests are received and responses are returned. Documentation at : Java HTTP Connector: /docs/config/http.html Java AJP Connector: /docs/config/ajp.html APR (HTTP/AJP) Connector: /docs/apr.html Define a non-SSL/TLS HTTP/1.1 Connector on port 8080 --><!-- Tachtler --><!-- default: <Connector port="8080" protocol="HTTP/1.1" --><!-- default: connectionTimeout="20000" --><!-- default: redirectPort="8443" --><!-- default: maxParameterCount="1000" --><!-- default: /> --><Connectorport="8088"protocol="HTTP/1.1"address="127.0.0.1"connectionTimeout="20000"redirectPort="8443"maxParameterCount="1000"/><Connectorport="8088"protocol="HTTP/1.1"address="::1"connectionTimeout="20000"redirectPort="8443"maxParameterCount="1000"/><!-- A "Connector" using the shared thread pool--><!-- <Connector executor="tomcatThreadPool" port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" maxParameterCount="1000" /> --><!-- Define an SSL/TLS HTTP/1.1 Connector on port 8443 This connector uses the NIO implementation. The default SSLImplementation will depend on the presence of the APR/native library and the useOpenSSL attribute of the AprLifecycleListener. Either JSSE or OpenSSL style configuration may be used regardless of the SSLImplementation selected. JSSE style configuration is used below. --><!-- <Connector port="8443" protocol="org.apache.coyote.http11.Http11NioProtocol" maxThreads="150" SSLEnabled="true" maxParameterCount="1000" > <SSLHostConfig> <Certificate certificateKeystoreFile="conf/localhost-rsa.jks" type="RSA" /> </SSLHostConfig> </Connector> --><!-- Define an SSL/TLS HTTP/1.1 Connector on port 8443 with HTTP/2 This connector uses the APR/native implementation which always uses OpenSSL for TLS. Either JSSE or OpenSSL style configuration may be used. OpenSSL style configuration is used below. --><!-- <Connector port="8443" protocol="org.apache.coyote.http11.Http11AprProtocol" maxThreads="150" SSLEnabled="true" maxParameterCount="1000" > <UpgradeProtocol className="org.apache.coyote.http2.Http2Protocol" /> <SSLHostConfig> <Certificate certificateKeyFile="conf/localhost-rsa-key.pem" certificateFile="conf/localhost-rsa-cert.pem" certificateChainFile="conf/localhost-rsa-chain.pem" type="RSA" /> </SSLHostConfig> </Connector> --><!-- Define an AJP 1.3 Connector on port 8009 --><!-- Tachtler --><!-- default: --><!-- default: <Connector protocol="AJP/1.3" --><!-- default: address="::1" --><!-- default: port="8009" --><!-- default: redirectPort="8443" --><!-- default: maxParameterCount="1000" --><!-- /> --><!-- default: --><Connectorprotocol="AJP/1.3"address="127.0.0.1"port="8099"redirectPort="8443"maxParameterCount="1000"secretRequired="false"/><Connectorprotocol="AJP/1.3"address="::1"port="8099"redirectPort="8443"maxParameterCount="1000"secretRequired="false"/><!-- An Engine represents the entry point (within Catalina) that processes every request. The Engine implementation for Tomcat stand alone analyzes the HTTP headers included with the request, and passes them on to the appropriate Host (virtual host). Documentation at /docs/config/engine.html --><!-- You should set jvmRoute to support load-balancing via AJP ie : <Engine name="Catalina" defaultHost="localhost" jvmRoute="jvm1"> --><Enginename="Catalina"defaultHost="localhost"><!--For clustering, please take a look at documentation at: /docs/cluster-howto.html (simple how to) /docs/config/cluster.html (reference documentation) --><!-- <Cluster className="org.apache.catalina.ha.tcp.SimpleTcpCluster"/> --><!-- Use the LockOutRealm to prevent attempts to guess user passwords via a brute-force attack --><RealmclassName="org.apache.catalina.realm.LockOutRealm"><!-- This Realm uses the UserDatabase configured in the global JNDI resources under the key "UserDatabase". Any edits that are performed against this UserDatabase are immediately available for use by the Realm. --><RealmclassName="org.apache.catalina.realm.UserDatabaseRealm"resourceName="UserDatabase"/></Realm><Hostname="localhost"appBase="webapps"unpackWARs="true"autoDeploy="true"><!-- SingleSignOn valve, share authentication between web applications Documentation at: /docs/config/valve.html --><!-- <Valve className="org.apache.catalina.authenticator.SingleSignOn" /> --><!-- Access log processes all example. Documentation at: /docs/config/valve.html Note: The pattern used is equivalent to using pattern="common" --><ValveclassName="org.apache.catalina.valves.AccessLogValve"directory="logs"prefix="localhost_access_log"suffix=".txt"pattern="%h %l %u %t "%r" %s %b"/></Host></Engine></Service></Server>
Nachfolgend die Erklärungen zu den gemachten Änderungen bzw. Ergänzungen:
Bereich: Server
Aus Sicherheitsgründen sollte der Port und auch die Zeichenkette, mit dem der Apache Tomcat-Applikations-Servers heruntergefahren werden kann, verändert werden:
*1 Hier wird als Beispiel der Standard-Port von 8005 auf den Port 8089 abgeändert
*2 Die Zeichenkette wird von SHUTDOWN auf DOWN2CAT abgeändert
Bereich: Server | Service | Connector (HTTP)
Die Konfiguration des „Connector“ bezeichnet die Art und Weise, wie eine HTTP-Verbindung zum Apache Tomcat-Applikation-Servers hergestellt werden kann:
*1 Hier wird als Beispiel der Standard-Port von 8080 auf den Port 8088 abgeändert
*2 Verbindungen werden nur von der IP-Adresse 127.0.0.1 und ::1 (localhost) akzeptiert
WICHTIG - Die Angabe address=„127.0.0.1“ und address=„::1“ macht den Apache Tomcat-Applikation-Servers nur von der IP-Adresse 127.0.0.1 bzw ::1 (localhost) erreichbar und somit nicht mehr über ein Netzwerk (Internet/Intranet usw.) aufrufbar!
HINWEIS - Aus Sicherheitsgründen kann die Angabe address=„127.0.0.1“ und address=„::1“ sinnvoll sein, wenn der Apache Tomcat-Applikation-Servers nur über einen Apache HTTPD Serverauf dem selben Server über die Module mod_proxy_ajp oder mod_jk mit dem Protokoll AJP/1.3 angebunden ist!
Bereich: Server | Service | Connector (AJP/1.3)
Die Konfiguration des „Connector“ bezeichnet die Art und Weise, wie eine AJP/1.3-Verbindung zum Apache Tomcat-Applikation-Servers hergestellt werden kann:
*1 Hier wird als Beispiel der Connector-Port von 8009 auf den Port 8099 abgeändert
*2 Verbindungen werden nur von der IP-Adresse 127.0.0.1 akzeptiert
*3 Verbindungen werden ohne Passwort secretRequired=„false“ akzeptiert
WICHTIG - Die Angabe address=„127.0.0.1“ und address=„::1“ macht den Apache Tomcat-Applikation-Servers nur von der IP-Adresse 127.0.0.1 und ::1 (localhost) erreichbar und somit nicht mehr über ein Netzwerk (Internet/Intranet usw.) aufrufbar!
HINWEIS - Aus Sicherheitsgründen kann die Angabe address=„127.0.0.1“ und address=„::1“ sinnvoll sein, wenn der Apache Tomcat-Applikation-Servers nur über einen Apache HTTPD Serverauf dem selben Server über die Module mod_proxy_ajp oder mod_jk mit dem Protokoll AJP/1.3 angebunden ist!
/etc/tomcat9/web.xml
Die Konfigurationsdatei
/etc/tomcat9/web.xml
stellt eine Standard-Konfigurationsdatei für alle WEB-Anwendungen dar, welche keine eigene web-xml-Datei vorhalten.
Nachfolgend sollen einige Änderungen bzw. Ergänzungen an dieser Konfigurationsdatei durchgeführt werden, welchen ein Kommentar, wie nachfolgend dargestellt, voransteht:
<!-- Tachtler -->
Nachfolgend kann hier z.B. die Standard-Laufzeit einer Session, hier von 30 Minuten auf z.B. 12 Minuten geändert werden:
(Nur relevanter Ausschnitt):
<!-- ==================== Default Session Configuration ================= --><!-- You can set the default session timeout (in minutes) for all newly --><!-- created sessions by modifying the value below. --><session-config><!-- Tachtler --><!-- <session-timeout>30</session-timeout> --><session-timeout>12</session-timeout></session-config>
*1 Hier wird die Session Laufzeit von 30 Minuten auf 12 Minuten abgeändert
/etc/tomcat9/tomcat-users.xml
Die Konfigurationsdatei
/etc/tomcat9/tomcat-users.xml
stellt eine Standard-Konfigurationsdatei zur Authentifizierung der nachfolgenden, oder auch anderer Web-Anwendungen, des Apache Tomcat-Applikations-Servers dar.
Nachfolgend sollen einige Änderungen bzw. Ergänzungen an dieser Konfigurationsdatei durchgeführt werden, welchen ein Kommentar, wie nachfolgend dargestellt, voransteht:
<!-- Tachtler -->
Hier die komplette Konfigurationsdatei mit allen Änderungen bzw. Ergänzungen, welche ebenfalls nachfolgend erklärt werden:
<?xmlversion="1.0"encoding="UTF-8"?><!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.--><tomcat-usersxmlns="http://tomcat.apache.org/xml"xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"version="1.0"><!-- By default, no user is included in the "manager-gui" role required to operate the "/manager/html" web application. If you wish to use this app, you must define such a user - the username and password are arbitrary. Built-in Tomcat manager roles: - manager-gui - allows access to the HTML GUI and the status pages - manager-script - allows access to the HTTP API and the status pages - manager-jmx - allows access to the JMX proxy and the status pages - manager-status - allows access to the status pages only The users below are wrapped in a comment and are therefore ignored. If you wish to configure one or more of these users for use with the manager web application, do not forget to remove the <!.. ..> that surrounds them. You will also need to set the passwords to something appropriate.--><!-- <user username="admin" password="<must-be-changed>" roles="manager-gui"/> <user username="robot" password="<must-be-changed>" roles="manager-script"/>--><!-- The sample user and role entries below are intended for use with the examples web application. They are wrapped in a comment and thus are ignored when reading this file. If you wish to configure these users for use with the examples web application, do not forget to remove the <!.. ..> that surrounds them. You will also need to set the passwords to something appropriate.--><!-- <role rolename="tomcat"/> <role rolename="role1"/> <user username="tomcat" password="<must-be-changed>" roles="tomcat"/> <user username="both" password="<must-be-changed>" roles="tomcat,role1"/> <user username="role1" password="<must-be-changed>" roles="role1"/>--><!-- Tachtler NEW --><rolerolename="admin"/><rolerolename="admin-gui"/><rolerolename="admin-script"/><rolerolename="manager"/><rolerolename="manager-gui"/><rolerolename="manager-script"/><rolerolename="manager-jmx"/><rolerolename="manager-status"/><username="admin"password="geheim"roles="admin,admin-gui,admin-script,manager,manager-gui,manager-script,manager-jmx,manager-status"/></tomcat-users>
*1 Hier werden die Benutzer admin und manager erstellt und mit entsprechenden Rechten ausgestattet, wobei nur der Benutzer admin effektiv nutzbar ist, das dieser als einziger ein Passwort zur Authentifizierung gesetzt hat!
Es gibt ein zusätzliche Möglichkeit, die Angaben des password nicht im Klartext, sondern via SHA verschlüsselt ab zu legen.
Dazu ist mit nachfolgendem Programm (binary) zuerst wie folgt dargestellt ein Passwort-Hash zu erzeugen:
/usr/share/tomcat9/bin/digest.sh -a sha-512 -h org.apache.catalina.realm.MessageDigestCredentialHandler geheim
geheim:5a94e04064523fb6df3ec3056d4fdd90696825985ca8de2a2bd0f1d37d780810$1$ec3448a23c60f30df1f13000ec60c7fb3e2e1b0d96dd7ad4c371207c2f3e9714dd123d26126e60faa5ac34803aa9330c0ace6cd94f5c0fc361a97e71a94df5e3
Anschliessend sind zwei zusätzliche Anpassungen an den nachfolgenden Konfigurationsdateien
/etc/tomcat9/tomcat-users.xml
/etc/tomcat9/server.xml
durchzuführen.
Nachfolgend die Anpassung an der Konfigurationsdatei
Nachfolgend die Anpassung an der Konfigurationsdatei
/etc/tomcat9/server.xml
VORHER: - (Nur relevanter Ausschnitt)
<!-- Use the LockOutRealm to prevent attempts to guess user passwords via a brute-force attack --><RealmclassName="org.apache.catalina.realm.LockOutRealm"><!-- This Realm uses the UserDatabase configured in the global JNDI resources under the key "UserDatabase". Any edits that are performed against this UserDatabase are immediately available for use by the Realm. --><RealmclassName="org.apache.catalina.realm.UserDatabaseRealm"resourceName="UserDatabase"/></Realm>
NACHHER: - (Nur relevanter Ausschnitt)
<!-- Use the LockOutRealm to prevent attempts to guess user passwords via a brute-force attack --><RealmclassName="org.apache.catalina.realm.LockOutRealm"><!-- This Realm uses the UserDatabase configured in the global JNDI resources under the key "UserDatabase". Any edits that are performed against this UserDatabase are immediately available for use by the Realm. --><!-- Tachtler - NEW --><!-- default: <Realm className="org.apache.catalina.realm.UserDatabaseRealm" --><!-- default: resourceName="UserDatabase"/> --><RealmclassName="org.apache.catalina.realm.UserDatabaseRealm"resourceName="UserDatabase"><CredentialHandlerclassName="org.apache.catalina.realm.MessageDigestCredentialHandler"algorithm="sha-512"/></Realm></Realm>
WICHTIG - Diese Änderungen nur umsetzen, wenn kein LDAP-Authentifizierung JNDIRealm verwendet werden soll!
/etc/tomcat9/logging.properties
Die Konfigurationsdatei
/etc/tomcat9/logging.properties
stellt eine Standard-Konfigurationsdatei für die LOG-Schreibung alle Apache Tomcat-Web-Anwendungen (catalina, localhost, manager, host-manager) dar, falls kein anderer LOG-Mechanismus vorhanden ist.
Nachfolgend sollen einige Ergänzungen an dieser Konfigurationsdatei durchgeführt werden, welchen ein Kommentar, wie nachfolgend dargestellt, voransteht:
# Tachtler
Nachfolgend kann hier z.B. die Standard-Aufbewahrungs-Anzahl aller Apache Tomcat-Web-Anwendungen LOG-Dateien, hier von 90 (Tagen) LOG-Dateien auf max. 14 (Tage) LOG-Dateien eingestellt werden:
Hier die komplette Konfigurationsdatei mit allen Änderungen bzw. Ergänzungen, welche ebenfalls nachfolgend erklärt werden:
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
handlers= 1catalina.org.apache.juli.AsyncFileHandler, 2localhost.org.apache.juli.AsyncFileHandler, 3manager.org.apache.juli.AsyncFileHandler, 4host-manager.org.apache.juli.AsyncFileHandler, java.util.logging.ConsoleHandler
.handlers = 1catalina.org.apache.juli.AsyncFileHandler, java.util.logging.ConsoleHandler
############################################################
# Handler specific properties.
# Describes specific configuration info for Handlers.
############################################################
1catalina.org.apache.juli.AsyncFileHandler.level = FINE
1catalina.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
1catalina.org.apache.juli.AsyncFileHandler.prefix = catalina.
# Tachtler
# default: 1catalina.org.apache.juli.AsyncFileHandler.maxDays = 90
1catalina.org.apache.juli.AsyncFileHandler.maxDays = 14
1catalina.org.apache.juli.AsyncFileHandler.encoding = UTF-8
2localhost.org.apache.juli.AsyncFileHandler.level = FINE
2localhost.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
2localhost.org.apache.juli.AsyncFileHandler.prefix = localhost.
# Tachtler
# default: 2localhost.org.apache.juli.AsyncFileHandler.maxDays = 90
2localhost.org.apache.juli.AsyncFileHandler.maxDays = 14
2localhost.org.apache.juli.AsyncFileHandler.encoding = UTF-8
3manager.org.apache.juli.AsyncFileHandler.level = FINE
3manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
3manager.org.apache.juli.AsyncFileHandler.prefix = manager.
# Tachtler
# default: 3manager.org.apache.juli.AsyncFileHandler.maxDays = 90
3manager.org.apache.juli.AsyncFileHandler.maxDays = 14
3manager.org.apache.juli.AsyncFileHandler.encoding = UTF-8
4host-manager.org.apache.juli.AsyncFileHandler.level = FINE
4host-manager.org.apache.juli.AsyncFileHandler.directory = ${catalina.base}/logs
4host-manager.org.apache.juli.AsyncFileHandler.prefix = host-manager.
# Tachtler
# default: 4host-manager.org.apache.juli.AsyncFileHandler.maxDays = 90
4host-manager.org.apache.juli.AsyncFileHandler.maxDays = 14
4host-manager.org.apache.juli.AsyncFileHandler.encoding = UTF-8
java.util.logging.ConsoleHandler.level = FINE
java.util.logging.ConsoleHandler.formatter = org.apache.juli.OneLineFormatter
java.util.logging.ConsoleHandler.encoding = UTF-8
############################################################
# Facility specific properties.
# Provides extra control for each logger.
############################################################
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].handlers = 2localhost.org.apache.juli.AsyncFileHandler
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/manager].handlers = 3manager.org.apache.juli.AsyncFileHandler
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].level = INFO
org.apache.catalina.core.ContainerBase.[Catalina].[localhost].[/host-manager].handlers = 4host-manager.org.apache.juli.AsyncFileHandler
# For example, set the org.apache.catalina.util.LifecycleBase logger to log
# each component that extends LifecycleBase changing state:
#org.apache.catalina.util.LifecycleBase.level = FINE
# To see debug messages in TldLocationsCache, uncomment the following line:
#org.apache.jasper.compiler.TldLocationsCache.level = FINE
# To see debug messages for HTTP/2 handling, uncomment the following line:
#org.apache.coyote.http2.level = FINE
# To see debug messages for WebSocket handling, uncomment the following line:
#org.apache.tomcat.websocket.level = FINE
*1 Hier wird die Anzahl der LOG-Dateien von 90 (Tagen) LOG-Dateien auf 14 (Tage) LOG-Dateien abgeändert
Zugriffsbeschränkung "localhost" aufheben
Falls der Zugriff auf die mit installierten Web-Anwendungen des Apache Tomcat-Applikation-Server unter dem Verzeichnis
auch von einer Browser, welcher nicht auf dem selben Server läuft, sprich auf den IP-Adressen
127.0.0.1
::1
sind nachfolgende Schritte erforderlich.
ACHTUNG - Die Konfiguration von address=„127.0.0.1“ und address=„::1“ darf NICHT in den einzelnen Konnektoren durchgeführt werden!!!
WICHTIG - Die Angabe address=„127.0.0.1“ und address=„::1“ macht den Apache Tomcat-Applikation-Servers nur von der IP-Adresse 127.0.0.1 und ::1 (localhost) erreichbar und somit nicht mehr über ein Netzwerk (Internet/Intranet usw.) aufrufbar!
HINWEIS - Aus Sicherheitsgründen kann die Angabe address=„127.0.0.1“ und address=„::1“ sinnvoll sein, wenn der Apache Tomcat-Applikation-Servers nur über einen Apache HTTPD Serverauf dem selben Server über die Module mod_proxy_ajp oder mod_jk mit dem Protokoll AJP/1.3 angebunden ist!
context.xml
Jeder der installierten Web-Anwendungen des Apache Tomcat-Applikation-Server unter dem Verzeichnis
/var/lib/tomcat9/webapps/
hat im jeweiligen Verzeichnis
/var/lib/tomcat9/webapps/docs/META-INF/
/var/lib/tomcat9/webapps/examples/META-INF/
/var/lib/tomcat9/webapps/host-manager/META-INF/
/var/lib/tomcat9/webapps/manager/META-INF/
eine Konfigurationsdatei mit dem Namen
context.xml
welche durch eine Beschränkung dafür sorgt, das die jeweilige installierten Web-Anwendungen des Apache Tomcat-Applikation-Server nur von den IP-Adressen
127.0.0.1
::1
erreichbar ist.
Um Änderungen an den originalen Konfigurationsdateien context.xml zu vermeiden, können diese mit nachfolgenden Befehlen in das Verzeichnis
/etc/tomcat9/Catalina/localhost
kopiert und gleichzeitig umbenannt werden, um so den Inhalt entsprechend abändern zu können und damit auch diese Konfigurationsdatei dann jeweils angezogen wird und nicht mehr die originale.
# cp -a /var/lib/tomcat9/webapps/docs/META-INF/context.xml /etc/tomcat9/Catalina/localhost/docs.xml
# cp -a /var/lib/tomcat9/webapps/examples/META-INF/context.xml /etc/tomcat9/Catalina/localhost/examples.xml
# cp -a /var/lib/tomcat9/webapps/host-manager/META-INF/context.xml /etc/tomcat9/Catalina/localhost/host-manager.xml
# cp -a /var/lib/tomcat9/webapps/manager/META-INF/context.xml /etc/tomcat9/Catalina/localhost/manager.xml
Anschliessend kann jede so neu entstandene Konfigurationsdatei wie folgt angepasst werden.
/etc/tomcat9/Catalina/localhost/docs.xml
<?xmlversion="1.0"encoding="UTF-8"?><!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.--><ContextantiResourceLocking="false"><!-- Tachtler - disabled --><!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> --></Context>
/etc/tomcat9/Catalina/localhost/examples.xml
<?xmlversion="1.0"encoding="UTF-8"?><!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.--><ContextantiResourceLocking="false"><!-- Tachtler - disabled --><!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> --></Context>
/etc/tomcat9/Catalina/localhost/host-manager.xml
<?xmlversion="1.0"encoding="UTF-8"?><!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.--><ContextantiResourceLocking="false"privileged="true"><CookieProcessorclassName="org.apache.tomcat.util.http.Rfc6265CookieProcessor"sameSiteCookies="strict"/><!-- Tachtler - disabled --><!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> --><ManagersessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/></Context>
/etc/tomcat9/Catalina/localhost/manager.xml
<?xmlversion="1.0"encoding="UTF-8"?><!-- Licensed to the Apache Software Foundation (ASF) under one or more contributor license agreements. See the NOTICE file distributed with this work for additional information regarding copyright ownership. The ASF licenses this file to You under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.--><ContextantiResourceLocking="false"privileged="true"><CookieProcessorclassName="org.apache.tomcat.util.http.Rfc6265CookieProcessor"sameSiteCookies="strict"/><!-- Tachtler - disabled --><!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> --><ManagersessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/></Context>
Update von /var/lib/tomcat9/webapps/ROOT verhindern
/ect/pacman.conf
Falls eine eigene Web-Anwendung als ROOT.war deployed werden soll, kann nachfolgendes Problem beim updaten des Apache Tomcat-Applikation-Server auftreten.
Da mit jedem Update des Apache Tomcat-Applikation-Server auch die Standard-Web-Anwedung, welche sich im Verzeichnis
/var/lib/tomcat9/webapps/ROOT
befindet, ebenfalls wieder mit installiert wird, kommt es in diesem Fall zum dem Problem, das dadurch die eigene Web-Anwendung, welche ebenfalls als ROOT.war deployed wurde, überschrieben wird, bzw. die Standard-Web-Applikation einfach zusätzlich in das Verzeichnis kopiert wird.
Um dies zu verhindern, können beim Updaten mittels des Paket-Managers Pacman, genauer gesagt beim entpacken des jeweiligen Pakets, Dateien und sogar ganze Verzeichnisse ausgenommen werden.
Nachfolgende Konfiguration in der Pacman-Konfigurationsdatei /etc/pacman.conf kann dies bewirken:
(Nur relevanter Ausschnitt)
#
# GENERAL OPTIONS
#
[options]
# Tachtler - NEW -
NoExtract=var/lib/tomcat9/webapps/ROOT/*
HINWEIS - !!! Kein führendes /-Zeichen am Anfang der Pfadangabe setzen !!!
Erster Start
Nachdem alle vorhergehenden Konfigurationsschritte erfolgreich durchgeführt worden sind, kann der Apache Tomcat-Applikation-Server mit nachfolgendem Befehle gestartet werden:
# systemctl start tomcat9.service
Nachfolgender Befehl kann zur Überprüfung, ob der Apache Tomcat-Applikation-Server gestartet wurde, genutzt werden:
# systemctl status tomcat9.service
● tomcat9.service - Tomcat 9 servlet container
Loaded: loaded (/usr/lib/systemd/system/tomcat9.service; enabled; preset: >
Drop-In: /etc/systemd/system/tomcat9.service.d
└─override.conf
Active: active (running) since Fri 2023-08-04 05:18:42 CEST; 8s ago
Process: 1211 ExecStart=/usr/bin/jsvc -Dcatalina.home=${CATALINA_HOME} -Dca>
Main PID: 1217 (jsvc)
Tasks: 70 (limit: 4655)
Memory: 175.3M
CPU: 5.102s
CGroup: /system.slice/tomcat9.service
├─1214 jsvc.exec -Dcatalina.home=/usr/share/tomcat9 -Dcatalina.bas>
├─1216 jsvc.exec -Dcatalina.home=/usr/share/tomcat9 -Dcatalina.bas>
└─1217 jsvc.exec -Dcatalina.home=/usr/share/tomcat9 -Dcatalina.bas>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.jasp>
INFO: At least one JAR was scanned for >
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.cata>
INFO: Deployment of web application dir>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.cata>
INFO: Deploying web application directo>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.jasp>
INFO: At least one JAR was scanned for >
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.cata>
INFO: Deployment of web application dir>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.coyo>
INFO: Starting ProtocolHandler ["http-n>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.coyo>
INFO: Starting ProtocolHandler ["http-n>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.coyo>
INFO: Starting ProtocolHandler ["ajp-ni>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.coyo>
INFO: Starting ProtocolHandler ["ajp-ni>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.cata>
INFO: Server startup in [1735] millisec>
LOG-Ausgaben
Mit nachfolgendem Befehl, kann die LOG-Ausgabe des Apache Tomcat-Applikation-Servers überprüft werden:
# journalctl -eu tomcat9.service
und sollte eine Ausgabe, in etwa wie die nachfolgende erzeugen:
Aug 04 05:18:42 server systemd[1]: Starting Tomcat 9 servlet container...
Aug 04 05:18:42 server systemd[1]: tomcat9.service: Can't open PID file /run/to>
Aug 04 05:18:42 server systemd[1]: tomcat9.service: Supervising process 1217 wh>
Aug 04 05:18:42 server systemd[1]: Started Tomcat 9 servlet container.
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: Server version name: Apache Tom>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: Server built: Jan 20 197>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: Server version number: 9.0.78.0
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: OS Name: Linux
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: OS Version: 6.1.39-2-l>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: Architecture: amd64
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: Java Home: /usr/lib/j>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: JVM Version: 11.0.20+8
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: JVM Vendor: Oracle Cor>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: CATALINA_BASE: /usr/share>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: CATALINA_HOME: /usr/share>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: Command line argument: -Dcatalina>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: Command line argument: -Dcatalina>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: Command line argument: -Djava.io.>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: Command line argument: -Xms128m
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: Command line argument: -Xmx1024m
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: Command line argument: -Dcommons.>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: Command line argument: -Dcommons.>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: Command line argument: -Dcommons.>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: Command line argument: abort
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: Loaded Apache Tomcat Native libra>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: APR capabilities: IPv6 [true], se>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: APR/OpenSSL configuration: useApr>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: OpenSSL successfully initialized >
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.coyo>
INFO: Initializing ProtocolHandler ["ht>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.coyo>
INFO: Initializing ProtocolHandler ["ht>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.coyo>
INFO: Initializing ProtocolHandler ["aj>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.coyo>
INFO: Initializing ProtocolHandler ["aj>
Aug 04 05:18:42 server jsvc.exec[1216]: Aug 04, 2023 5:18:42 AM org.apache.cata>
INFO: Server initialization in [601] mi>
Aug 04 05:18:43 server jsvc.exec[1216]: Aug 04, 2023 5:18:43 AM org.apache.cata>
INFO: Starting service [Catalina]
Aug 04 05:18:43 server jsvc.exec[1216]: Aug 04, 2023 5:18:43 AM org.apache.cata>
INFO: Starting Servlet engine: [Apache >
Aug 04 05:18:43 server jsvc.exec[1216]: Aug 04, 2023 5:18:43 AM org.apache.cata>
INFO: Deploying web application directo>
Aug 04 05:18:43 server jsvc.exec[1216]: Aug 04, 2023 5:18:43 AM org.apache.jasp>
INFO: At least one JAR was scanned for >
Aug 04 05:18:43 server jsvc.exec[1216]: Aug 04, 2023 5:18:43 AM org.apache.cata>
INFO: Deployment of web application dir>
Aug 04 05:18:43 server jsvc.exec[1216]: Aug 04, 2023 5:18:43 AM org.apache.cata>
INFO: Deploying web application directo>
Aug 04 05:18:43 server jsvc.exec[1216]: Aug 04, 2023 5:18:43 AM org.apache.jasp>
INFO: At least one JAR was scanned for >
Aug 04 05:18:43 server jsvc.exec[1216]: Aug 04, 2023 5:18:43 AM org.apache.cata>
INFO: Deployment of web application dir>
Aug 04 05:18:43 server jsvc.exec[1216]: Aug 04, 2023 5:18:43 AM org.apache.cata>
INFO: Deploying web application directo>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.jasp>
INFO: At least one JAR was scanned for >
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.cata>
INFO: ContextListener: contextInitializ>
Aug 04, 2023 5:18:44 AM org.apache.cata>
INFO: SessionListener: contextInitializ>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.cata>
INFO: ContextListener: attributeAdded('>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.cata>
INFO: Deployment of web application dir>
Aug 04, 2023 5:18:44 AM org.apache.cata>
INFO: Deploying web application directo>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.jasp>
INFO: At least one JAR was scanned for >
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.cata>
INFO: Deployment of web application dir>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.cata>
INFO: Deploying web application directo>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.jasp>
INFO: At least one JAR was scanned for >
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.cata>
INFO: Deployment of web application dir>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.coyo>
INFO: Starting ProtocolHandler ["http-n>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.coyo>
INFO: Starting ProtocolHandler ["http-n>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.coyo>
INFO: Starting ProtocolHandler ["ajp-ni>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.coyo>
INFO: Starting ProtocolHandler ["ajp-ni>
Aug 04 05:18:44 server jsvc.exec[1216]: Aug 04, 2023 5:18:44 AM org.apache.cata>
INFO: Server startup in [1735] millisec>
IP/Port-Listen
Mit nachfolgendem Befehl kann überprüft werden auf welchen IP-Adressen (sollte in diesem Beispiel NUR 127.0.0.1 und :.1 sein) und auf welchen Ports der Apache Tomcat-Applikation-Server horcht:
Interner Link zu: Apache Tomcat 9 Server Archlinux - Logging - log4j
Diese Website verwendet Cookies. Durch die Nutzung der Website stimmen Sie dem Speichern von Cookies auf Ihrem Computer zu. Außerdem bestätigen Sie, dass Sie unsere Datenschutzbestimmungen gelesen und verstanden haben. Wenn Sie nicht einverstanden sind, verlassen Sie die Website.Weitere Information
tachtler/apache_tomcat_9_server_archlinux.txt · Zuletzt geändert: 2024/03/05 15:46 von klaus