Sollten schon bei der Einrichtung eines Zweifaktor-Authentifizierungsgerätes keine Codes akzeptiert werden, die der Benutzer eingegeben hat, so sollte die Systemzeit des Servers überprüft und gegebenenfalls korrigiert werden.
Da die Tokens nur für einen kurzen Zeitraum gültig sind, kann bereits eine Abweichung von einer Minute dafür sorgen, dass die Codes als veraltet abgewiesen werden.
Wir empfehlen die automatische Synchronisation der Uhrzeit über einen NTP-Server.
Prüfen Sie zunächst bitte die Konfiguration der Variablen, die mit MAIL_
beginnen, auf Gültigkeit.
Sollten die Angaben dort korrekt sein, ist der Mail-Server wahrscheinlich so konfiguriert, dass er nur verschlüsselte Verbindungen akzeptiert, das verwendete TLS-Zertifikat jedoch von einer internen Zertifizierungsstelle signiert wurde.
Seit TTS trax 4.2 wird immer, wenn der Server eine verschlüsselte Verbindungsmöglichkeit anbietet, diese auch genutzt,
auch wenn die Umgebungsvariable MAIL_ENCRYPTION
auf null
gesetzt wurde.
Damit TTS trax über diesen Mail-Server E-Mails verschicken kann, muss die Zertifikatskette, die das Zertifikat des Mail-Servers signiert hat, an den TTS trax-Container übergeben werden.
Für die folgenden Schritte muss openSSL auf dem Server, auf dem TTS trax ausgeführt wird, installiert sein.
Navigieren Sie in das Verzeichnis Ihrer trax-Installation, z.B. /opt/deployment
. Hierbei handelt es sich um das Verzeichnis, in dem die docker-compose.yml
Ihrer TTS trax-Installation liegt.
Erstellen Sie nun im Verzeichnis certs
den Unterordner ca
(mkdir -p certs/ca
) und kopieren Sie die benötigten Zertifikate in dieses Verzeichnis.
Achten Sie hierbei darauf, dass die Zeritifkate im PEM-Format (Base64 codiert) vorliegen. Stellen Sie sicher, dass die Dateiendung der Zertifikatsdateien
.pem
oder .crt
ist.
Führen Sie nun den folgenden Befehl aus:
$ c_rehash certs/ca
Im Verzeichnis certs/ca
befinden sich, je nach Anzahl der Zertifikate, nun neben den Zertifikatsdateien eine Anzahl von symbolischen Links,
deren Name sich aus einem Hash zusammensetzt.
Im Folgenden wird angenommen, dass ein Zertifikat My-Company.crt
zusammen mit zwei Link-Dateien 1xxxxxx.0
sowie 2xxxxxx.0
erzeugt wurde.
Diese Dateien und Links müssen nun in das Verzeichnis /etc/ssl/certs
des Containers gemappt werden.
Öffnen Sie dazu die Datei docker-compose.yml
und ergänzen Sie diese um die hervorgehobenen Zeilen. Ersetzen Sie dabei entsprechend die Dateinamen und ergänzen Sie weitere Mappings, wenn mehrere Zertifikate hinterlegt wurden:
services:
trax:
image: registry.tts-trax.com/trax:5.0
restart: always
volumes:
- ./storage:/var/www/html/storage
- ./provisioning:/var/www/html/provisioning
- ./certs/ca/1xxxxxx.0:/etc/ssl/certs/1xxxxxx.0
- ./certs/ca/2xxxxxx.0:/etc/ssl/certs/2xxxxxx.0
- ./certs/ca/My-Company.crt:/etc/ssl/certs/My-Company.crt
Es ist wichtig, in diesem Fall jede Datei und jeden Link einzeln aufzuzählen. Erstellen Sie ein Mapping vom Verzeichnis certs/ca
auf /etc/ssl/certs
kann trax keine
Zertifikate von anderen Zertifizierungsstellen als der eigenen validieren.
Starten Sie nun TTS trax neu:
$ docker-compose up -d --no-deps trax
Zur einfachen Verifizierung, ob der E-Mail-Versand funktioniert, kann bspw. die Passwort vergessen-Funktionalität verwendet werden.