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 auslesen
org.apache.http.wire : DEBUG

exchange
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==')

exchange

Deprication of Basic Auth →