Ich habe nun schon mehrere Mails mit Fragen zum Exchange Backend Zertifikat bekommen,daher gibt es an dieser Stelle mal einen kleinen Beitrag dazu. In den meisten Fällen wurde das Backend Zertifikat beim Aufräumen gelöscht. Der folgende Artikel behandelt die Funktion und Notwendigkeit des Backend Zertifikats und auch die Wiederherstellung falls es versehentlich gelöscht wurde.
Was ist das Backend Zertifikat?
Bei dem Backend Zertifikat handelt es sich um ein selbst signiertes Zertifikat, welches bei der Installation eines Exchange Servers erstellt wird. Das Backend Zertifikat enthält den NetBIOS Namen und den FQDN des Exchange Servers und ist 5 Jahre gültig.
Das Zertifikat wird mit dem Anzeigenamen “Microsoft Exchange” erstellt und an den IIS Dienst gebunden:
Das Zertifikat wird von Exchange allerdings nur für die IIS Website “Exchange Back End” verwendet und ist an den Port 444 gebunden:
In der Zertifikate MMC stellt sich das Backend Zertifikat als selbstsigniertes Zertifikat dar. Hier ist zu erkennen, dass NetBIOS und FQDN als SANs (Subject Alternate Names) enthalten sind:
Wenn dieses Zertifikat gelöscht wird, ist also keine verschlüsselte Verbindung mit der Website “Exchange Back End” mehr möglich, dies wird jedoch von der Website vorausgesetzt:
Wozu dient das Exchange Backend Zertifikat?
Der IIS Server eines Exchange Servers stellt zwei Webseiten für Exchange Server bereit, die “Default Web Site” ist im Prinzip das Frontend, also die Website die auch Benutzer aufrufen, wenn sie beispielweise auf OWA zugreifen. Auch fast alle anderen Dienste werden über das Frontend dem Benutzer zugänglich gemacht (kleine Ausnahme ist Exchange UM). Die “Default Web Site” verfügt daher über das Zertifikat, welches dem Benutzer präsentiert wird.
Bei der zweiten Website handelt es sich um das “Exchange Back End”. Der Benutzer ruft das Backend nicht direkt auf, sondern das Frontend arbeitet vom Prinzip her wie ein Proxy für das Backend. Das Frontend leitet die Verbindungen der Benutzer für die unterschiedlichen Protokolle an das Backend weiter. Das Backend übernimmt die eigentliche Verarbeitung der Verbindung. Der Benutzer ruft das Backend also nicht direkt auf, sondern wird bis auf eine Ausnahme (Exchange UM) über das Frontend an das Backend weitergeleitet.
Zurück zum Backend Zertifikat: Mit dem Backend Zertifikat wird die Verbindung zwischen Frontend und Backend auf Port 444 ver- bzw. entschlüsselt. In einer Umgebung mit nur einem Exchange Server kommuniziert das Frontend des Exchange Servers also verschlüsselt mit dem Backend, hierzu wird das Backend Zertifikat benötigt. In Umgebungen mit mehreren Exchange Servern kommunizieren die Exchange Server untereinander ebenfalls über das Backend miteinander, auch hier wird das Backend Zertifikat benötigt. Ebenfalls können in Umgebungen mit mehreren Exchange Servern die Frontends auf andere Exchange Backends zugreifen.
Die Prüfung des Backend Zertifikats durch die Exchange Server ist dabei nicht so streng, wie die Prüfung von Outlook zum Frontend. Das Backend Zertifikat muss daher nur den Namen des Exchange Servers enthalten und darf auch selbst signiert sein. Der Benutzer bekommt das Backend Zertifikat nicht zu sehen, daher muss das Backend Zertifikat auch nicht durch ein gültiges Zertifikat einer öffentlichen CA ausgetauscht werden.
Beim Austausch des Backend Zertifikats durch ein öffentliches Zertifikat kann es sogar zu Problemen zwischen der Kommunikation mehrere Exchange Server kommen. Ursache ist dann meist der fehlende Exchange Server Name auf dem Backend Zertifikat.
Daher gilt: Backend Zertifikat einfach so lassen wie es ist, nicht löschen, nicht austauschen, nur erneuern wenn es abläuft.
Backend Zertifikat gelöscht, wie wiederherstellen?
Für diesen Beitrag habe ich das Backend Zertifikat des Exchange Servers gelöscht:
Da dass Zertifikat gelöscht wurde steht die “Exchange Back End” Website im IIS nun ohne Zertifikat dar, eine https Verbidnung auf Port 444 von Front End zu Backend ist folglich nicht mehr möglich:
Die Folgen: Die Exchange Management Shell verbindet sich nicht mehr, die Fehlermeldung ist allerdings wenig hilfreich:
New-PSSession : [ex1.cloud.frankysweb.de] Beim Verbinden mit dem Remoteserver „ex1.cloud.frankysweb.de“ ist folgender
Fehler aufgetreten: [ClientAccessServer=EX1,BackEndServer=ex1.cloud.frankysweb.de,RequestId=d6f8b99b-0d90-4ca5-b814-375
235837774,TimeStamp=13.03.2018 21:10:45] [FailureCategory=Cafe-SendFailure] Weitere Informationen finden Sie im
Hilfethema „about_Remote_Troubleshooting“.
Die Login Maske für das EAC wird zwar noch angezeigt, da sie vom Frontend ausgeliefert wird:
Aber nach der Eingabe von Benutzernamen und Passwort wird nur noch eine leere Seite angezeigt:
Auch im Eventlog rufen Exchange Dienste um Hilfe. Hier erhält man eine Fehlermeldung die aussagekräftig ist und in die entsprechende Richtung weißt:
Event ID: 12014
Quelle: MSExchangeFrontEndTransport
Microsoft Exchange could not find a certificate that contains the domain name EX1.cloud.frankysweb.de in the personal store on the local computer. Therefore, it is unable to support the STARTTLS SMTP verb for the connector Default Frontend EX1 with a FQDN parameter of EX1.cloud.frankysweb.de. If the connector’s FQDN is not specified, the computer’s FQDN is used. Verify the connector configuration and the installed certificates to make sure that there is a certificate with a domain name for that FQDN. If this certificate exists, run Enable-ExchangeCertificate -Services SMTP to make sure that the Microsoft Exchange Transport service has access to the certificate key.
Outlook kann in diesem Fall auch keine Verbindung mehr herstellen, also muss ein neues Zertifikat für das Backend her. Ein neues selbstsigniertes Zertifikat kann einfach über den IIS-Manager erzeugt werden.
Um ein neues Zertifikat zu erstellen, wird im IIS Manager der Punkt Serverzertifikate aufgerufen:
Unter “Aktionen” findet sich der Menüpunkt “Selbstsigniertes Zertifikat erstellen”:
Der Anzeigename spielt keine Rolle, der Ordnung halber kann hier wieder “Microsoft Exchange” eingetragen werden:
Das Zertifikat wurde erstellt und wird nun mit dem Namen “Microsoft Exchange” angezeigt:
Nun muss das Zertifikat nur noch an die Backend Website gebunden werden:
Nachdem das neue selbst erstellte Zertifikat zugewiesen wurde, verbindet sich auch die Exchange Shell wieder:
Auch ECA verbindet sich direkt wieder, ein Neustart des Servers ist in der Regel nicht nötig.