In diesem Kapitel erfahren Sie am Beispiel der Referenzumgebung "Debian Linux 12 (bookworm)", wie Sie die Drittanbieter-Software, welche als Infrastruktur für den Betrieb der PPP-Webanwendung benötigt wird, installieren können.
Sollten Sie die PPP-Webanwendung auf einer anderen Betriebssystem-Plattform installieren wollen, können Sie sich an den Ausführungen in diesem Kapitel orientieren und die für Ihre Plattform notwendigen Schritte analog vornehmen. Plattformspezifische Einstellungen und Pfade der Referenzumgebung (z.B. Standard-Ports, Pfade zu Konfigurations- und Datenverzeichnissen von Diensten etc.) werden teilweise in den folgenden Kapiteln dieses Dokuments benötigt. Damit Sie später ggf. die notwendigen Anpassungen für Ihre jeweilige Plattform bzw. Betriebssystem-Version selbst vornehmen können, sind am Ende der einzelnen Installationsschritte jeweils die relevanten "Annahmen" der Debian-Referenzumgebung dokumentiert.
Voraussetzungen
In dieser Anleitung zur Installation und Konfiguration der PPP und der vor ihr vorausgesetzten Drittanbieter-Software gehen wir davon aus, dass die folgenden Voraussetzungen auf dem Zielsystem der PPP-Installation bereits erfüllt sind. Die nötigen Schritte hierzu werden nicht im Rahmen dieses Dokuments beschrieben. Sollten Sie Hilfe bei der Durchführung dieser Schritte benötigen, finden Sie jedoch Hinweise auf weiterführende Informationsquellen:
Es ist eine Minimal-Installation von Debian Linux 12 für die Hardware-Plattform des Zielsystems (hier: 64 Bit/AMD64) installiert (vgl. https://www.debian.org/releases/stable/installmanual, https://www.debian.org/releases/stable/amd64/apa.de.html)
Es sind die Pakete der Programmgruppe „Standard (Standard-System)“ installiert (vgl. https://www.debian.org/releases/stable/amd64/apbs04.de.html#preseed-pkgsel)
Die Netzwerkverbindung des Systems (inkl. Zugang zum Internet) ist vollständig eingerichtet und funktionsfähig.
Das Debian-Paketverwaltungssystem „apt“ ist so konfiguriert, dass die Pakete aus den offiziellen Paketquellen problemlos nachinstalliert werden können (vgl. https://www.debian.org/doc/manuals/debian-reference/ch02.en.html#_debian_package_management_prerequisites).
Sie können sich mit einem Administrator-Benutzerkonto (d.h. Benutzerkonto „root“ oder ein Benutzerkonto mit vergleichbaren Rechten) in das Zielsystem einloggen (Konsolen-Login). Dies kann entweder durch einen lokalen Login erfolgen oder über einen entfernten Login, z. B. per SSH. In letzterem Fall muss zusätzlich vorab ein SSH-Server auf dem Zielsystem konfiguriert worden sein (vgl. https://wiki.debian.org/SSH).
Ist dem Zielsystem eine Firewall vorgeschaltet, so ist sichergestellt, dass der externe Zugriff auf die Ports 80 sowie – falls SSL-verschlüsselte Verbindungen zur PPP möglich sein sollen – zusätzlich auf Port 443 möglich ist. Erfolgt die Wartung des Systems per SSH-Verbindung, ist zusätzlich der entsprechende Port des SSH-Servers (i.d.R. 22) in der Firewall freigeschaltet.
Installation von Drittanbietersoftware mittels Debian-Paketverwaltung
Die benötigte Drittanbieter-Software wird über das Debian-Paketverwaltungswerkzeug „apt“ installiert.
Stellen Sie sicher, dass auch die nicht freien Paket-Quellen in Ihre Paketliste vorhanden sind. Die Datei "/etc/apt/sources.list" sollte mindestens folgenden Inhalt haben:
deb http://deb.debian.org/debian bookworm main contrib non-free-firmware deb http://deb.debian.org/debian bookworm-updates main contrib non-free-firmware deb http://security.debian.org/debian-security bookworm-security main contrib non-free-firmware
Um sicherzustellen, dass bei den folgenden Installationsschritten die jeweils aktuellsten verfügbaren Paketversionen installiert werden und dass alle Sicherheitsupdates für bereits installierte Debian-Pakete installiert sind, führen Sie die folgenden Konsolen-Befehle aus:
# Paket-Quellen aktualisieren apt update # Installierte Pakete auf den aktuellsten Stand bringen apt upgrade
Installation erforderlicher Tools
apt install unzip
Installation erforderlicher Schriftarten
apt install ttf-mscorefonts-installer fontconfig dpkg-reconfigure fontconfig
Installation von MariaDB
Führen Sie zur Installation des MySQL-Servers sowie des Kommandozeilen-Clients, den Sie zur Administration des Servers benötigen, die folgenden Konsolen-Befehle aus:
apt install mariadb-server mariadb-client
Zugangsdaten MariaDB-Administrator-Zugang
Ab MariaDB 10.4 wird die Unix-Socket-Authentifizierung standardmäßig angewendet und es ist normalerweise nicht erforderlich, ein root-Passwort zu erstellen.
Bei der Standard-Installation wird der MariaDB-Server auf Port 3306 eingerichtet. Verbindungen über diesen Port sind in der Standardeinstellung nur lokal möglich, da der Dienst an die IP-Adresse 127.0.0.1 gebunden ist.
Im Rahmen der Installation werden folgende Verzeichnisse eingerichtet und konfiguriert:
Konfigurationsverzeichnis: /etc/mysql
Datenverzeichnis: /var/lib/mysql
Basisverzeichnis: /usr
Das Starten und Stoppen des Dienstes erfolgt über systemctl start/stop mariadb
Installation des Java Runtime Environments (JRE)
Als Java-Laufzeitumgebung wird die Eclipse Temurin™-JRE aus den Adoptium-Debian-Paketquellen installiert.
Stellen Sie sicher, dass die erforderlichen Pakete vorhanden sind
apt install wget apt-transport-https
Laden Sie den Eclipse Adoptium GPG-Schlüssel herunter
mkdir -p /etc/apt/keyrings wget -O - https://packages.adoptium.net/artifactory/api/gpg/key/public | tee /etc/apt/keyrings/adoptium.asc
Konfigurieren Sie das Eclipse Adoptium apt-Repository
echo "deb [signed-by=/etc/apt/keyrings/adoptium.asc] https://packages.adoptium.net/artifactory/deb $(awk -F= '/^VERSION_CODENAME/{print$2}' /etc/os-release) main" | tee /etc/apt/sources.list.d/adoptium.list
Installieren Sie die Termurin-JRE-Version 11
apt update apt install temurin-11-jre
Installation des Tomcat-Servers
Wir empfehlen den Tomcat-Server aus den offiziellen Debian-Paketquellen zu installieren, da die hierüber verfügbare Version 10.x alle Anforderungen für den Betrieb der PICTURE-Prozessplattform erfüllt und Sicherheitsupdates vom Debian-Security-Team bereitgestellt und über die Standard-Mechanismen des Betriebssystems installiert werden können.
apt install tomcat10 tomcat10-admin
Fügen Sie die JAVA_HOME-Umgebungsvariable für die Ausführung des Tomcat 10 hinzu
Für den Start des Tomcat muss eine Override-Konfiguration für systemd angelegt werden, in der die o.g. JRE-Installation anzugegeben ist
systemctl edit tomcat10
Dadurch wird unter /etc/systemd/system/tomcat10.service.d eine Datei override.conf angelegt, die Sie wie folgt editieren und speichern
[Service] Environment=JAVA_HOME=/usr/lib/jvm/temurin-11-jre-amd64
Starten Sie den Tomcat 10 neu
systemctl restart tomcat10
Richten Sie abschließend den Administrator-Zugang für die Tomcat-Manager-Webanwendung ein:
Um den Zugang zu der Tomcat-Manager-Webanwendung so sicher wie möglich zu gestalten, empfiehlt es sich eine Digest-Authentifizierung zu konfigurieren. In den folgenden Schritten wird beschrieben, wie Sie Ihre Tomcat-Installation so konfigurieren können, dass Ihr Passwort sicher gespeichert wird. Mehr über diese Methode erfahren Sie auf den folgenden Seiten: https://tomcat.apache.org/tomcat-10.1-doc/realm-howto.html
Konfigurieren Sie den Tomcat10-Server so, dass das verschlüsselte Password genutzt wird
nano /var/lib/tomcat10/conf/server.xml
Ändern Sie die Server-Konfiguration im Abschnitt <Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase">
<Realm className="org.apache.catalina.realm.UserDatabaseRealm" resourceName="UserDatabase"> <CredentialHandler className="org.apache.catalina.realm.SecretKeyCredentialHandler" algorithm="PBKDF2WithHmacSHA512" keyLength="256" saltLength="128" iterations="210000"/> </Realm>
Erstellen Sie ein verschlüsseltes Password
/usr/share/tomcat10/bin/digest.sh -a PBKDF2WithHmacSHA512 -i 210000 -s 128 -k 256 -h org.apache.catalina.realm.SecretKeyCredentialHandler 'StrengGeheimesPasswort!2342'
Das verschlüsselte Password entnehmen Sie dann der Ausgabe des o.g. Befehls (Ausgabe des Befehls Klartext-Passwort : Verschlüsseltes Password)
StrengGeheimesPasswort!2342:020f44bf8c87e929c914629b15b353325dfcdfd26a868901e8ea6f287bde63b323e58a1dce49592ae5aa7b5026f1a88a7c286c0dc7ec3be6d1836577f7d2b484eb2b651383d04c8853eef78d5e603619e57a85d6ff5646970c14a0fa46eddacb848e9ccfdbeacd
Editieren Sie nun die Benutzer-Konfiguration
nano /etc/tomcat10/tomcat-users.xml
Ersetzen Sie die Beispiel-Konfiguration durch folgende Einstellungen.
Beispiel tomcat-users.xml
<tomcat-users> <role rolename="manager-gui"/> <user username="admin" password="020f44bf8c87e929c914629b15b353325dfcdfd26a868901e8ea6f287bde63b323e58a1dce49592ae5aa7b5026f1a88a7c286c0dc7ec3be6d1836577f7d2b484eb2b651383d04c8853eef78d5e603619e57a85d6ff5646970c14a0fa46eddacb848e9ccfdbeacd591be5ec8ae87bab5dc390424f4be1e202962c477c2eb71a5c$210000$fe07a19dd783bf284995bb2524b363450f913f8e5147f1afef4ea4a5dfdec60a" roles="manager-gui"/> </tomcat-users>
Nehmen Sie die nötigen individuellen Anpassungen bzgl. Benutzername und Passwort vor und ergänzen Sie nach Bedarf weitere "<user>"-Elemente für zusätzlich benötigte Benutzerkonten.
Der Tomcat-Server ist nun fertig eingerichtet und kann mit dem Befehl "systemctl start tomcat10" gestartet und mit "systemctl stop tomcat10" gestoppt werden. Der Server läuft standardmäßig auf Port 8080.
Im Rahmen der Installation wurden die folgenden Pfade konfiguriert:
CATALINA_HOME (Speicherort für Binaries, Bibliotheken etc.): /usr/share/tomcat10
CATALINA_BASE (Speicherort für Anwenderdaten wie Webanwendungen und deren Konfigurations- und Laufzeitdaten): /var/lib/tomcat10
Konfigurationsdateien des Servers: /etc/tomcat10
Benutzer-Konten für HTTP-Authentifizierung in Tomcat-Webanwendungen (z.B. Webadmin-GUI): /etc/tomcat10/tomcat-users.xml
Installation einer Schriftart für den Ausdruck von Unicode-Zeichen
Damit in den PDF-Exporten alle Zeichen des Unicode-Zeichensatzes verwendet werden können (z.B. kyrillische, arabische oder asiatische Zeichen, Emoijs etc.), ist zusätzlich die Installation einer True-Type-Schriftart erforderlich, die Repräsentationen aller in Unicode vorgesehenen Zeichen enthält. Die besten Ergebnisse lassen sich hier mit der Schriftart "Arial Unicode" erzielen, da diese den Unicode-Zeichensatz komplett abdeckt. Um von der Prozessplattform verwendet werden zu können, muss die Schriftarten-Datei "ARIALUNI.TTF" (Achtung: Großschreibung beachten) in dem Verzeichnis abgelegt werden, das in der Datei-"config.xml" der PICTURE-Prozessplattform im Abschnitt "applicationSettings -> directorySettings -> fontDirectory" konfiguriert ist.
Auf Grund der Lizenzbedingungen des Rechteinhabers ist die Schriftart "Arial Unicode" nicht im Lieferumfang der PICTURE-Prozessplattform enthalten und muss separat lizensiert werden. Falls Sie über keine Lizenz zur Verwendung der Schriftart „Arial Unicode“ auf Ihrem Linux-System verfügen, können Sie anstelle von „Arial Unicode“ auch die Schriftart „Arimo Regular“ verwenden. Diese ist metrikkompatibel zu Arial Unicode und ist unter einer freien Lizenz verfügbar (vgl. https://github.com/google/fonts). Sie können die entsprechende TTF-Datei unter https://github.com/googlefonts/noto-fonts/raw/master/hinted/ttf/Arimo/Arimo-Regular.ttf?raw=true herunterladen. Legen Sie diese Datei dann unter dem Namen „ARIALUNI.TTF“ (sic!) im o.g. Schriften-Verzeichnis Verzeichnis ab.
cd /usr/local/share/fonts wget https://github.com/googlefonts/noto-fonts/raw/master/hinted/ttf/Arimo/Arimo-Regular.ttf?raw=true -O ARIALUNI.TTF