Donnerstag, 28. Februar 2013

Exchange 2013 in einer .local Domäne

Exchange 2010 oder 2013 arbeiten bekanntlich mit SAN-Zertifikaten. Dies sind Zertifikate die mehrere URLs enthalten. Üblicherweise enthalten die Zertifikate für Exchange 2013 / 2010 folgende Namen:
- owa.mydomain.com
- autodiscover.mydomain.com
- FQDN aller Exchange Server
- smtp.mydomain.com

Wenn ich nun eine .local-Domäne habe, also meine interne Domäne auf .local oder eine andere nicht offizielle Endung endet, muss ich als FQDN des Exchange Servers auch meinechange.meineinternedomain.local im Zertifikat haben.

Ab dem Jahr 2015 wird es nicht mehr erlaubt sein nicht offizielle URLs in einem öffentlichen Zertifikat zu integrieren. Das heisst, wenn ich heute ein offizielles Zertifikat bestelle dürfen keine nicht offiziellen URLs (oder solche die ich nicht besitze) mehr im Zertifikat enthalten sein.

Dies stellt ein Problem dar, weil Outlook per Default sich über den FQDN des Exchange Server verbindet. Wenn ich nun also das offizielle Zertifikat im Exchange Server implementiert habe, erscheint beim öffnen des Outlooks eine Zertifikatsfehlermeldung.

Dies kann mit folgenden Konfigurationsschritten umgangen werden:

Die internen und externen URLs für die virtuellen Verzeichnisse auf dem Exchange Server müssen auf die externen URLs eingestellt werden:


Diese Einstellung muss für alle virtuellen Verzeichnisse gemacht werden. für die gelb markierten virtuellen Verzeichnisse in der folgenden Grafik kann dies über die Exchange Verwaltungswebsite gemacht werden:



Natürlich müssen wir nun auch noch dafür sorgen, dass interne Clients die "externe" URL auch auflösen können. Dazu werden auf dem internen DNS-Server eigene Zonen für diese URL erstellt:



Darin wir dann ein leerer A-Record mit der IP des Exchange Servers erstellt:


Dies reicht aber noch nicht, um die Zertifikatsfehlermeldungen beim öffnen des Outlooks los zu werden. Das Problem ist nun noch der Autodiscover Dienst.

Wenn man über die Exchange Verwaltungsseite das virtuelle Verzeichnis für Autodiscover öffnet, gibt es keine Möglichkeit interne oder externe URLs zu definieren. Dies muss über die Exchange Shell gesetzt werden. Schauen wir uns zuerst einmal an, was per Default als interne URL gesetzt ist. Dies können wir mit folgendem Befehl:

Get-ClientAccessServer | FL AutoDiscoverServiceInternalUri

Hier wird die interne URL zum Autodiscoverdienst ausgegeben. Diese muss nun auf die externe URL umgestellt werden:

Set-ClientAccessServer -Identity <Netbiosname des Exchange Servers> -AutoDiscoverServiceInternalUri "https://autodiscover.mydomain.com/autodiscover/autodiscover.xml

Aber auch jetzt gibt es noch Zertifikatsfehlermeldungen beim öffenen des Outlook. Dies liegt daran, dass im IIS noch nicht auf beiden Websites (Frontend - und Backendwebsite) das offizielle Zertifikat zugewiesen ist.

Als letzter Schritt muss also noch auf beiden Webs im ISS unter "Bindings" das offizielle Zertifikat zugewiesen werden.

4 Kommentare:

  1. Besten Dank für die Blog.
    Etwas habe ich jedoch noch immer nicht verstanden. Damit ein Exchange 2013 und Outlook 2013 ohne Fehlermeldungen funktionieren, benötigt es zwingend Zertifikate. Bisher habe ich ein Zertifikat (mail.domain.ch). Damit komme ich ohne Fehlermeldung auf OWA.
    Ist es möglich mit nur einem Zertifikat, die Fehlermeldung beim Öffnen vom Outlook (Sicherheitshinweis: autodiscover.domain.ch; Der Name ... stimmt nicht mit dem Namen der Website überein) zu umgehen oder ist zwingend ein SAN- oder Wildcart-Zertifikat nötig? Oder habe ich im ISS bei den Bindings etwas falsch?
    Lg Matthias

    AntwortenLöschen
  2. Hallo Mathias
    Du brauchst ein SAN oder Wildcardzertifikat. Dies lässt sich nicht umgehen, weil Outlook oder Mobiles die automatische Konfigurationseinstellungen über die URL autodiscover.mydomain.ch sucht.

    AntwortenLöschen
  3. Besten Dank! Du hast mir damit einen Eimer voll Arbeit erspart.
    Wo darf ich dir im Gegenzug den Eimer mit Bier hinschicken?

    AntwortenLöschen