Konfigurieren von Apache Tomcat#
Wenn Sie Ihre Allegra-Installation dem Internet aussetzen, ist es normalerweise am besten, mit einem Apache HTTP-Server oder IIS-Server als Frontend für Allegra zu arbeiten. Wenn Sie andere Anwendungen unterstützen, die nicht auf demselben Tomcat-Server wie Allegra laufen, aber über denselben Apache HTTP-Server, können Sie Single Sign On verwenden, ohne eine große SSO-Lösung installieren zu müssen.
Allegra benötigt mehr Speicher als die Standardinstallationen von Apache Tomcat bereitstellen.
Auf Linux-Systemen können diese Einstellungen wie folgt in der Datei
/etc/default/tomcat9
geändert werden:
JAVA_OPTS="-Djava.awt.headless=true -DJENKINS_HOME=/home/jenkins \\
-DALLEGRA_HOME="/home/trackplus" -DLATEX_HOME="/usr/bin" \\
-XX:PermSize=384M -XX:MaxPermSize=550M -Xms512M -Xmx1624M \\
-XX:+UseConcMarkSweepGC"
Auf Windows-Systemen können Sie diese Parameter in der Tomcat-Manager-Anwendung hinzufügen.
Um Allegra auf einem Tomcat-Server hinter einem Apache-Webserver zu betreiben, müssen Sie die folgenden Konfigurationspunkte beachten.
Suchen Sie die Konfigurationsdatei Ihres Apache-Webservers (
httpd.conf
ist der Standardname). Nehmen wir an, das Verzeichnis, in dem sie sich befindet, istAPACHE_DIR/conf
.Fügen Sie am Ende der Datei folgende Zeile hinzu:
Include <APACHE_DIR> /conf/track.conf
Stellen Sie sicher, dass die folgenden Module irgendwo in Ihrer Apache-Webserver-Konfiguration geladen sind:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
Erstellen oder ändern Sie die Datei
<APACHE_DIR>/conf/track.conf
. Für die Basisauthentifizierung sollte sie wie folgt aussehen:
<Location ~ "/(track|websvn|crm|otherApps)">
AuthName "Steinbeis GmbH & Co. KG Login"
AuthType Basic
AuthUserFile <APACHE_DIR>/conf/.htpasswd
AuthGroupFile /dev/null
require valid-user
</Location>
ProxyPreserveHost On
ProxyPass /track ajp://localhost:9008/track
ProxyPassReverse /track ajp://localhost:9008/track
In einer realen Umgebung würden Sie hier etwas wie LDAP-Authentifizierung oder SSPI verwenden,
was eine Authentifizierung über Ihre Windows-PC-Anmeldung ohne weitere Kennwortabfrage ermöglichen
würde. Wir verwenden hier nur die Basisauthentifizierung, weil sie einfach einzurichten ist und es
Ihnen ermöglicht, Ihre Installation schnell zu testen.
Um die Passwortdatei für die Basisauthentifizierung zu erstellen, öffnen Sie eine Befehlsshell und geben Sie ein:
htpasswd -c <APACHE_DIR>/conf/.htpasswd firstUserLoginName
htpasswd <APACHE_DIR>/conf/.htpasswd secondUserLoginName
und so weiter.
Vergewissern Sie sich, dass Sie die container-basierte Authentifizierung in Allegra aktiviert haben (siehe LDAP und SSO).
Suchen Sie die Tomcat-Server-Konfigurationsdatei
server.xml
, normalerweise unter<TOMCAT_DIR>/conf
. Stellen Sie sicher, dass Sie einen Eintrag wie diesen haben:
<!-- Define an AJP 1.3 Connector on port 9008 -->
<Connector port="9008" protocol="AJP/1.3" tomcatAuthentication="false"
redirectPort="8443"/>
Dies sollte es ermöglichen Allegra mit SSO hinter einem Apache Webserver laufen.
Warnung
Dies ist keine vollständige Beschreibung für die Einrichtung einer sicheren Produktionsumgebung.
Insbesondere sollten Sie den Standard-Zugangsport (80 oder 8080) in server.xml
deaktivieren und
SSL-verschlüsselte Verbindungen von Ihrem Apache-Webserver zu den Browsern für den /track-Speicherort
erzwingen.