← Frankys Web GitHub Kontakt

Autodiscover Check

Exchange Autodiscover prüfen: DNS-Einträge, Zertifikat und ein anonymer Endpunkt-Test auf Port 443.

Autodiscover ist der Weg, über den Outlook für eine E-Mail-Adresse den zuständigen Exchange-Server samt aller Endpunkte findet, ohne dass der Nutzer Servernamen eintippt. Schlägt Autodiscover fehl, lässt sich ein Exchange-Postfach in Outlook nicht oder nur mit Zertifikatswarnungen einrichten. Dieser Check prüft die drei Bausteine, auf die Outlook nacheinander zugreift: DNS, TLS-Zertifikat und die Autodiscover-Antwort selbst.

Was dieses Werkzeug prüft

DNS: die Einträge autodiscover.<domain> (A/CNAME) und _autodiscover._tcp.<domain> (SRV), dazu der MX-Hinweis. Endpunkt: daraus wird genau ein HTTPS-Ziel auf Port 443 gewählt (der autodiscover-Host, sonst das SRV-Ziel, sonst die Domain selbst) und getestet. Am Endpunkt wird das TLS-Zertifikat geprüft (Kette, Laufzeit und ob es den Autodiscover-Hostnamen als SAN führt, was Outlook zwingend verlangt) und ein AutodiscoverV1-Aufruf mit NTLM Type 1 gemacht. Ein gesunder Exchange antwortet mit 401 und den angebotenen Authentifizierungsverfahren im WWW-Authenticate-Header. Microsoft 365 wird erkannt (CNAME auf autodiscover.outlook.com oder MX auf mail.protection.outlook.com) und ohne Verbindungstest nur als Hinweis gemeldet.

Das Ergebnis lesen

Grün heißt: ein Autodiscover-Ziel im DNS auffindbar, ein Zertifikat, das den Namen abdeckt, und eine 401-Antwort mit sinnvollen Auth-Verfahren. Eine 401 ist hier das erwünschte Ergebnis: der Endpunkt soll eine Anmeldung verlangen. Als Härtungsbefund ausgewiesen werden angebotenes NTLM/Negotiate (interne Namen im Type-2-Token), eine alte Windows-Build-Nummer und ein veralteter Exchange-Build aus dem X-OWA-Version-Header. Ein nicht abgedeckter Hostname oder ein abgelaufenes Zertifikat ist ein Fehler, ebenso ein dedizierter Endpunkt, der sich gar nicht wie Exchange verhält.

Grundlagen

Autodiscover ist ein Microsoft-Protokoll ([MS-OXDSCLI]), kein RFC-Standard. Der SRV-Eintrag _autodiscover._tcp folgt dem allgemeinen SRV-Format aus RFC 2782. Die Regel, dass ein Zertifikat den angesprochenen Hostnamen als Subject Alternative Name führen muss, kommt aus RFC 6125. Dieser Test sendet ausschließlich den ersten Aushandlungsschritt und nie Zugangsdaten; AutodiscoverV2 und beliebige weitere Endpunkte werden bewusst nicht geprüft.

Typische Fehlerbilder und wie man sie behebt

  • Kein Autodiscover-Eintrag im DNS. Einen autodiscover.<domain>-Record (A oder CNAME auf den Exchange-Namen) anlegen, alternativ einen SRV-Record _autodiscover._tcp mit Ziel und Port 443. Ohne das rät Outlook nur und landet oft auf der falschen Adresse.
  • Outlook zeigt eine Zertifikatswarnung. Fast immer deckt das Zertifikat autodiscover.<domain> nicht ab. Ein Zertifikat verwenden, das alle Namen als SAN führt (autodiscover., mail., owa.), oder die Autodiscover-Antwort so setzen, dass sie auf einen abgedeckten Namen zeigt.
  • Endpunkt liefert 200 ohne Anmeldung. Der AutodiscoverV1-Pfad ist dann anonym erreichbar und gibt eventuell interne Einstellungen preis. Vor-Authentifizierung am Reverse-Proxy oder die Windows-Authentifizierung in IIS aktivieren.
  • Veralteter Exchange-Build. Der aus X-OWA-Version abgeleitete Build liegt hinter dem aktuellen Cumulative Update. Das jeweils aktuelle CU plus das letzte Sicherheitsupdate einspielen; ältere Builds enthalten in der Regel bekannte Lücken.
  • SRV-Record vorhanden, wird aber ignoriert. Outlook nutzt SRV nur, wenn autodiscover.<domain> nicht direkt auflöst. Das Ziel des SRV-Records muss zudem per HTTPS mit gültigem Zertifikat erreichbar sein.

Ausführlicher Hintergrund im Blogartikel Exchange 2016: Umfangreiches Whitepaper zu Autodiscover auf frankysweb.de.

Häufige Fragen

Wird eine Anmeldung versucht?
Nein. Der Test sendet nur den ersten Aushandlungsschritt (NTLM Type 1), liest die Antwort des Servers und bricht ab. Es werden nie Zugangsdaten oder ein Type-3-Token gesendet.
Autodiscover funktioniert nicht, wo fange ich an?
Der Reihe nach: löst autodiscover.<domain> auf, hat der Zielhost ein gültiges Zertifikat mit genau diesem Namen als SAN, und antwortet der AutodiscoverV1-Pfad mit 401 und einem Auth-Verfahren. Der erste Punkt, der hier rot ist, ist die Ursache.
Warum ist eine 401-Antwort ein gutes Zeichen?
Der AutodiscoverV1-Endpunkt soll eine Anmeldung verlangen. Eine 401 mit WWW-Authenticate ist die erwartete Antwort auf einen anonymen Aufruf; eine vollständige Antwort ohne Anmeldung wäre eine Fehlkonfiguration.
Outlook zeigt eine Zertifikatswarnung beim Einrichten, warum?
Das TLS-Zertifikat auf autodiscover.<domain> muss genau diesen Namen als SAN enthalten. Ein Zertifikat nur für mail.<domain> oder owa.<domain> führt zur Warnung. Abhilfe: ein Zertifikat mit allen Namen als SAN.
Wie kommt der Test an die Exchange-Version?
On-Premises-Exchange sendet den Build auf vielen Versionen im Header X-OWA-Version mit, auch in der 401-Antwort des Autodiscover-Endpunkts. Daraus liest der Test die Version (2013 / 2016 / 2019 / SE) und ob sie noch Sicherheitsupdates bekommt.
Meine Domain nutzt Microsoft 365, warum kommt kein Testergebnis?
Bei Exchange Online läuft Autodiscover über die Microsoft-Infrastruktur (CNAME auf autodiscover.outlook.com bzw. MX auf mail.protection.outlook.com). Dort gibt es für einen externen Test nichts zu prüfen; angezeigt wird nur der erkannte Zustand.