Lokaler Exchange ohne SMG
Einleitung
Die Konfiguration eines lokalen Exchange-Servers ohne SMG kann leicht fehlschlagen. Aus diesem Grund haben wir häufig auftretende Ursachen identifiziert und entsprechende Lösungen erfasst. Um die grundlegende Konnektivität zu überprüfen, sind vier Schritte durchzuführen.
Logfile analyse
Hier benötigt Sie die Log vom Reverseproxy (zB nGinx) für die weitere Analyse
bei Linux liegt die Log in folgendem Verzeichniss
/var/log/nginx/relution_access.log
für Windows zB in ihrem nGinx Installationspfad
/nGinx/logs/relution_access.log
Werden auf dem Endgerät die Mails abgerufen, sollte in der Log ein Hinweis zu folgender URL enthalten sein
/Microsoft-Server-ActiveSync
Fehlerbehebung
Wenn in der Log nichts eingetragen wird, muss die URL im Browser eingegeben werden ob dieser generell erreichbar ist.
https://myexchange.com/Microsoft-Server-ActiveSync
Bei aufrufen muss ein Eintrag im nGinx Log hinterlassen werden, ist dieser nicht zu finden muss die Infrastruktur geprüft werden. Ist der Eintrag zu finden, sind vermutlich die Einstellung der Exchange Konfiguration in der Relution Richtlinie nicht korrekt gesetzt oder ungültig.
Prüfen der Verbindung
Mit einem Curl Befehl kann die Verbindung von Relution zum Exchange Server geprüft werden:
curl https://outlook.XXX.de/Microsoft-Server-ActiveSync --user Ihre-Exchange-Domäne\\Exchangeuser@Domain.de:ExchangePWvomUser --verbose --http1.1 -i
Es könnte eine Ausgabe mit einem Zertifikatsfehler wie dargestellt kommen:
Trying 172.16.105.109:443...
Connected to outlook.XXX.de (172.000.000.000) port 443 (#0)
schannel: disabled automatic use of client certificate
ALPN: offers http/1.1
schannel: SEC_E_UNTRUSTED_ROOT (0x80090325) - *Die Zertifikatkette wurde von einer nicht vertrauenswürdigen Zertifizierungsstelle ausgestellt.*
Closing connection 0
curl: (60) schannel: SEC_E_UNTRUSTED_ROOT (0x80090325) - *Die Zertifikatkette wurde von einer nicht vertrauenswürdigen Zertifizierungsstelle ausgestellt.*
More details here: https://curl.se/docs/sslcerts.html
Wird die Fehlermeldung wie oben angezeigt, ist das Zertifikat der CA nicht im Betriebssystem des Servers hinterlegt,je nach Betriebssystem muss das Zertifikat daher entsprechend installiert werden.
Beispiel für Relution in Docker →
HTTPS Kommunikation auslesen
Im Springboot Admin kann man die HTTPS Kommunikation zwischen Relution und dem Exchange prüfen und in der Logfile auslesenorg.apache.http.wire : DEBUG
Eine Kommunikation muss vom Gerät angestoßen werden um die Log mit Hinweisen zur Ursache zu füllen.Das Loglevel muss nach der Analyse wieder auf INFO
gestellt werden.
Log auswerten
Anschließend kann durch das erhöhte Loglevel nach auffälligen Hinweisen gesucht werden. Sind beispielsweise die User und Usercredentials nicht korrekt, scheitert der Login und eine “401 Unauthorized”-Meldung wird eingetragen, die in basic Auth so aussehen kann: dGVzdHVzZXI6NDcxMQ==
Diese können Sie im Browser in der Console decodieren und so das übermittelte Passwort sowie der User vergleichen
atob('dGVzdHVzZXI6NDcxMQ==')