Die Verlängerung eines bestehenden öffentlichen Zertifikates unter Exchange 2010 (SP2) ist ohne Änderung des Privaten Schlüssels interessanter als gedacht. Das Erstellen einer neuen Zertifikatsanforderung oder einer Verlängerungsanforderung ist in der EMC kein Problem (Serverkonfiguration -> oben Server auswählen -> unten rechte MT auf das ablaufende Zertifikate und ‚erneuern‘ auswählen), aber was tun wenn man schon ein Zertifikat besitzt, das die Zertifizierungsstelle direkt verlängert? Diese liefert das Zertifikat in der Regel als DER (respektive PEM) aus und man muss dieses „nur“ noch in den Exchange importieren.
Exchange den Request nach dem „Abschließen der Anforderung“ immer noch als solchen an und lässt es auch nicht zu, diesem Zertifikate zuzuordnen, weil der Private Schlüssel fehlt:
Was man in der MMC -> Snap-In hinzufügen -> Zertifikate -> Lokales Computerkonto auch sehen kann:
Die EMC scheint an dieser Stelle ihre eigenen Voraussetzungen für eine erfolgreiche Zertifikatsverlängerung eines bestehenden Zertifikates ohne Änderungen nicht zu erfüllen. Di zugehörigen Anleitungen und TechNet Artikel verweisen immer auf „New-ExchangeCertificate“, das aber einen neuen Request oder gleich ein selbstsigniertes Zertifikat erstellen möchte.
Lösung – Zertifikat mit Schlüssel importieren
- Das neue Zertifikat (praktisch immer ein .DER oder .PEM) herunterladen und auf dem Server speichern.
- MMC öffnen -> Zertifikate -> Lokaler Computer
- Den Konsolenstamm öffnen Zertifikate -> „Eigene Zertifikate“ -> Zertifikate.
- Hier ein das Zertifikat importieren (rechte MT -> Alle Aufgaben -> Importieren).
- Das heruntergeladene Zertifikat suchen und importieren; dieses wird jetzt unter den Zertifikaten angezeigt, aber (noch) ohne den privaten Schlüssel darin.
-
Die Seriennummer dieses Zertifikates besorgen (Zertifikat öffnen –> Details -> Seriennummer):
-
An der Kommandozeile (cmd) dieses Zertifikat reparieren: certutil –repairstore my „<Seriennummer>“
-
Jetzt hat das Zertifikat auch einen privaten Schlüssel:
- Und dieses Zertifikat kann jetzt (einschließlich des Privaten Schlüssels und der ganzen Zertifikatskette) exportiert werden: Rechte MT -> Alle Aufgaben -> Exportieren -> JA, mit privatem Schlüssel -> .PFX Datei (MIT Privatem Schlüssel und dem ganzen Zertifizierungspfad)
-
Diese darf nun schlussendlich in den Exchange importiert werden:
Import-ExchangeCertificate -FileData ([Byte[]]$(Get-Content -Path "C:meine-neue-schluesseldatei.pfx" -Encoding byte -ReadCount 0)) -Password:(Get-Credential).password
- Und schon ist das Zertifikat im Exchange, kann für Dienste verwendet werden und dann das alte ersetzen.
Zuguterletzt, nach dem ändern der Dienste, kann das alte Zertifikat in der EMC endlich gelöscht werden.
*Lebensretter! Danke!
Funktioniert immer noch ohne Probleme so, vielen Dank!
vielen lieben Dank, dieser Tipp hat mir viel Frust erspart
Klappt auch 10 Jahre später noch wunderbar. Danke! 🙂