Seminarinhalt
Apache Tomcat ist der verbreiteste auf Open Source basierende Servletcontainer und stellt eine Umgebung zur Ausführung von Java-Code auf Webservern bereit. Es handelt sich um einen in Java geschriebenen Servlet-Container, der mithilfe des JSP-Compilers Jasper auch JavaServer Pages in Servlets übersetzen und ausführen kann. Dazu kommt ein kompletter HTTP-Server der vor allem zur Entwicklung eingesetzt wird, während in Produktion zumeist ein Apache Web-Server vor Tomcat geschaltet wird.
Dieser Kurs richtet sich an Administrator*innen von Webservern und Entwickler*innen welche einen Tomcat Server implementieren bzw. betreuen wollen.
Das Training wird auf SUSE Linux Enterprise Server durchgeführt, jedoch kann das erlernte Wissen auch auf anderen Tomcat Plattformen angewendet werden.
Das Training wird auf SUSE Linux Enterprise Server durchgeführt, jedoch kann das erlernte Wissen auch auf anderen Tomcat Plattformen angewendet werden.
Programm
Grundlagen
Tomcat Server Architektur
Webapplikationen
Tomcat Logging und Monitoring
Tomcat und Apache HTTP Server Anbindung
Tomcat Persistent Session Manager
Tomcat Sicherheit
Virtuelle Hosts
- JAVA Komponenten im Detail (JVM, JRE, JDK)
- Webapplikationen mit Java-Servlets und Java Server Pages (JSP)
- Unterschiede bei den Tomcat-Versionen 7.0, 8.0, 9.0
- Tomcat Installation unter Linux (SLES, CentOS, Debian)
- Starten und Stoppen des Servers
Tomcat Server Architektur
- Tomcat Architekturprinzip
- CATALINA_HOME und CATALINA_BASE
- Aufbau der Tomcat Verzeichnisstruktur
- Konfigurationsdateien (tomcat.conf, catalina.policy, catalina.properties, context.xml, logging.properties ,server.xml, tomcat-users.xml, web.xml)
- Konfiguration der Elemente : Server, Service, Engine, Connector, Host, Context , Logger, Valve, JNDI
- Konfiguration des Servers mit der Admin Applikation und der server.xml
- Connector Einstellungen (HTTP, HTTPS, AJP)
- SSL via JSSE und APR
- JAVA Keystore für SSL Zertifikate einrichten
Webapplikationen
- Aufbau von Webapplikationen
- Konfiguration mit dem Deployment-Descriptor web.xml
- Eigene Webapplikationen packen und im Server deployen
- Die Tomcat Manager Applikation
- Webapplikationen mit dem Manager deployen, starten, stoppen und entfernen
- Webapplikationen mit Authentifizierung und SSL absichern
Tomcat Logging und Monitoring
- Loggen von Zugriffen mit Valves
- Einrichten eines File-Logger für Webapplikationen
- Tomcat Monitoring Werkzeuge
- Java Management Extensions (JMX)
Tomcat und Apache HTTP Server Anbindung
- Tomcat auf Port 80 verfügbar machen (rinetd, iptables, Apache HTTP Server)
- Funktionsunterschiede der Apache Connectoren mod_jk, mod_proxy und mod_proxy_ajp
- Apache Server Anbindung via mod_proxy_http
- Apache Server Anbindung via mod_proxy_ajp
- Apache Server Anbindung vai mod_jk (JkMount, workers.properties
- Load Balancing mit Apache Webserver und mod_jk (worker.type=lb)
- Monitoring des Load Balancing mit Status Worker
Tomcat Persistent Session Manager
- Auslagern von inactiven Sessions
- Session Restore bei einem Neustart
Tomcat Sicherheit
- Authentifikation Realms und Sicherheit
- Authentifizierung via JDBC Realms (MySQL, MariaDB)
- Absicherung mit SSL
- Benutzer Lockout
Virtuelle Hosts
- Implementierungsvarianten (Apache Web Server, Tomcat)
- Einrichten von virtuellen Hosts in Tomcat
- Virtuelle Hosts mit eigener JVM (Tomcat Instanzen)
- Load Balancing zwischen Tomcat Instanzen
Zielgruppen
Linux Administrator*innen
Vorkenntnisse
- Administrationserfahrungen im Linux Bereich
- Grundkentnisse in Apache Administration sind vorteilhaft