Umzug einer PKI von Windows Server 2008 R2 auf Windows Server 2012 R2

Windows Server 2012 R2Vor kurzem haben wir unseren DHCP-Server von 2008 R2 auf 2012 R2 umgezogen, danach stand unsere PKI auf dem Plan. Die PKI lag bisher auf einem Domänencontroller unter Windows Server 2008 R2, dieses System soll auf Windows Server 2012 R2 geupdatet werden. Ein In-Place-Upgrade ist für mich keine Lösung, da das System komplett frisch installiert werden soll. Ich habe mich kurz online erkundigt, ob solch ein Umzug möglich ist und ob es Empfehlungen für die Migration gibt. Ich bin fündig geworden, und zwar direkt bei Microsoft: Microsoft TechNet: Move a CA to a Different Computer. Anhand dieser Anleitung habe ich die folgende Migration durchgeführt.

Wir beginnen mit der Sicherung unserer PKI auf dem “alten” Server. Unter Alle Aufgaben finden Sie den Punkt Zertifizierungsstelle sichern….

image

Es öffnet sich ein Assistent, der Sie durch die Sicherung führt

image

Markieren Sie unter Zu sichernde Elemente beide Optionen

image

Vergeben Sie ein Kennwort, um die Informationen zu schützen

image

Nach der Fertigstellung bekommen Sie eine Zusammenfassung der Sicherung

image

Wenn Sie nun die CA gesichert haben, müssen Sie im zweiten Schritt die Registry sichern (auf dem “alten” Server). Öffnen Sie Regedit und navigieren Sie zum folgenden Pfad

Computer\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\CertSvc\Configuration

Machen Sie einen Rechtsklick auf Configuration und wählen Sie Exportieren.

image

Wählen Sie einen Pfad zur Speicherung der Daten

image

Nachdem der Export abgeschlossen ist müssen Sie die Daten von dem “alten” Server auf den “neuen” Server kopieren bzw. verschieben. Installieren Sie nun auf dem neuen Server die neue PKI. Diese PKI muss so installiert werden wie bisher auch. Dies bedeutet: Wenn Sie vorher eine Domänen-PKI hatten, muss die neue PKI ebenfalls auf einem Domänencontroller installiert werden.

Nach der Installation bekommen Sie die Information, dass die Einrichtung der PKI noch durchgeführt werden muss. Im Assistent müssen Sie Anmeldeinformationen eingeben, um die Installation durchführen zu können.

image

Wählen Sie die Rollen aus, die Sie installieren möchten

image

Unter Installationstyp wählen Sie die Art der PKI aus, in meinem Fall Unternehmenszertifizierungsstelle.

image

Nach einem Klick auf Weiter werden Sie gefragt, ob diese PKI die Stammzertifizierungsstelle oder eine untergeordnete Zertifizierungsstelle ist. In meinem Fall wähle ich die obere Option.

image

Unter Privater Schlüssel erstellen Sie keinen neuen, sondern Sie wählen einen bereits vorhandenen Schlüssel aus.

image

Navigieren Sie zu der im Vorfeld erstellten Sicherung und wählen Sie Ihr Zertifikat aus.

image

Sie sehen Ihr Zertifikat.

image

Sie können nun wählen, an welchem Standort Ihre Daten gespeichert werden.

image

Nach einer Übersicht können Sie die Einrichtung starten.

image

Die Installation beginnt.

image

Die Installation sollte wie folgt aussehen.

image

Wenn Sie nun die PKI öffnen, sehen Sie keinerlei Zertifikate.

image

An dieser Stelle müssen Sie nun die zuvor exportierte Registry wieder importieren.

image

Wenn Sie nun die Dienste der PKI neu starten und erneut in die Ausgestellten Zertifikate gehen, sehen Sie alle Ihrer bereits ausgestellten Zertifikate.

image

An dieser Stelle ist die Migration abgeschlossen, Sie können nun die alte PKI ausschalten. Prüfen Sie Ihre PKI auf Funktionalität, und wenn alles so läuft wie gewünscht können Sie die alte Zertifizierungsstelle komplett entfernen.

Teilen:

Jan Kappen

Jan Kappen ist ausgebildeter Fachinformatiker in der Richtung Systemintegration. Er hat seine Ausbildung im Sommer 2008 abgeschlossen und arbeitet seitdem bei der Rachfahl IT-Solutions GmbH & Co. KG. Jan Kappen ist unter anderen MCITP Server Administrator, Enterprise Administrator und Enterprise Messaging Administrator 2010 sowie MCTS für System Center Virtual Machine Manager 2008, Windows Server 2008 Active Directory, Windows Server Virtualization und Windows Server 2008 Network Infrastructure. Im April 2015 wurde Jan Kappen im Bereich "File System Storage" für seine Expertise und seine Community-Arbeit mit dem MVP Award von Microsoft ausgezeichnet.

14 Kommentare:

  1. Hallo Jan, vielen Dank für die Doku.

    Allerdings habe ich eine Frage. Ich habe eine CA, die ich von 2003 Server auf 2008 (kein R2!) per InPlace damals upgedatet habe. Das System lief jetzt einige Jahre problemlos. Jetzt möchte gerne auf 2012 R2 updaten.
    Der alte Server heißt zert1.intern.domain.de (zumindest so ähnlich ;-).
    Jetzt habe ich einen 2012 r2 aufgesetzt, der heißt zertneu.intern.domain.de.
    Ich habe alle Schritte wie oben bisher durchgeführt bzgl. Backup der alten CA.
    Darf denn der neue Server anders heißen als der alte Server?? Das würde natürlich bedeuten, dass der alte Server (nur Memberserver, kein DC! auf dem die CA läuft) erst aus der Domäne raus muss und der neue dann in die Domäne gefahren wird. Aber das wäre mir zu riskant, wenn da was schief laufen würde.

    Oder kann ich den neuen CA-Server problemlos anders benennen?
    Frage ist nur, weil der exportierte Reg-Key, der nachher auf dem neuen Server zusammengeführt werden soll den alten Namen beinhaltet. Und was ist mit den bereits ausgestellten Zertifikaten, die auf den alten CA-Namen ausgestellt wurden???

    Herzlichen Dank für eine kurze Rückmeldung.

  2. Muss die neue CA den gleichen Computernamen haben wie die alte? Wenn ja, muss ja der alte Server vor Installation des neuen Servers aus der Domäne gefahren werden. Wir haben einen Memberserver als CA, aber wie sollte das gehen wenn die CA auf einem Domänencontroler läuft?
    Gibt es übrigens einen sinnvollen Grund, die CA auf einem DC zu betreiben??

    Viele Grüße
    Marcus

  3. Hallo Marcus,
    der neue Server kann meines Wissens nach anders heißen als der alte, das sollte kein Problem sein. Wenn die PKI mit dem beschriebenen Weg umgezogen wird ändert sich nichts an den Zertifikaten, da ja die Quelle weiterhin existiert.
    Gruß, Jan

  4. Hallo Jan, vielen Dank für die Rückmeldung.
    Ich hatte auch nochmal recherchiert, da unser CA-Umzug etwas gedrängt hat.
    Es ist in der Tat so, dass der neue CA-Server einen anderen Namen haben kann/darf, allerdings muss die CA natürlich den gleichen Namen behalten.

    Allerdings habe ich gesehen, dass in dem Registrierungs-Export der FQN des alten Servernamens drin steht. Diesen müssten man dann ggf. nach dem Import auf dem neuen Server manuell anpassen, wenn der neue Server einen anderen namen hat. (Bsp: Alter Server: alteCA.meinedomain.de, müsste dann editiert werden auf neueCA.meinedomain.de).

    Das war mir dann doch etwas unbehaglich. Daher habe ich es wie folgt gemacht.
    Backup der alten CA wie in der super Anleitung beschriben + Export Registrykey.

    Alten Server (2008 32bit Standard) ausgeschaltet, neuen Server (2012 R2) mit gleichem Namen wie alter Server in die Domäne gefahren.
    Rolle + Features für CA installiert, Backup der alten CA eingespielt, Registrykey importiert, Dienste neu gestartet – fertig.

    Läuft alles super – man musste auch keine manuellen Anpassungen an der Firewall auf 2012 R2 vornehmen.

    Also nochmal vielen Dank für deine Anleitung! Hat uns sehr geholfen.

    Viele Grüße
    Marcus

  5. Hallo Marcus,
    Ich stehe durchaus vor einem ähnlichem Problem, allerdings habe ich das Problem das sich die aktuelle CA auf einem 2003 (32bit) befindet (DC).
    Ich will sie auf einen 2012R2 (64bit) migrieren (kein DC sondern nur Member – also als Standalone VM), lese aber immer wieder das dies nicht direkt geht.
    von in Place updates halte ich nicht viel, weil doch immer wieder Altlasten mitgeschleppt werden, und man bei späteren Problemen nie sicher sagen kann ob es ein mitgeschlepptes Problem ist.
    Daher habe ich nun überlegt wie es wohl am pragmatischsten wäre.
    Eine ganz wichtige Sache ist eben auch das der neue Server (2012R2) möglichst nicht den gleichen Namen haben darf, wie der alte 2003er DC. Jetzt habe ich aber überall gelesen das der Name des Servers sich nicht ändern darf, da dieser ja in den Zertifikaten vermerkt ist.
    Das wiederum wiederspricht aber deiner Aussage vom 12.März 2014 – welche mir aber sehr entgegen käme. Kann die Zertifizierungstelle auf dem Server einen anderen Namen haben, wie der Server selbst? Ist das seit 2012R2 möglich?
    Meinetwegen kann die Zertifizierungsstelle selbst ja den alten Namen tragen aber eben der Server nicht.
    Ideal wäre natürlich wenn der Name der Zertifizierungstelle natürlich umbenannt werden kann.
    Hast Du vielleicht Tipps zur Vorgehensweise.
    meine aktuelle Idee ist die gute alte Backup Strategie des 2003er…aufspielen auf 2008R2 64bit… und dann wieder Backup der 2008er und einspielen auf den 2012er….
    Nur das mit dem Namen…. das ist noch problematisch.
    Unklar ist auch ob der neue Server ein DC sein muss, weil ja der alte Server mit CA ein DC war.

    Ich habe auch schon überlegt sämtliche Zertifikate stillzulegen, und nochmal auf 2012 neuanzufangen, allerdings sind mir nicht alle Zertifkate 100% bekannt und mögliche Ausfälle unüberschaubar.

    Bei der Gelegenheit noch eine Frage: Kann man irgendwie erkenne welches Zertifikat wie oft/wann das letzte – mal genutzt wird/wurde?

    Vielen Danke für das reindenken in mein Problem.

  6. Hallo,
    ist zwar schon ein wenig her mit dem letzten Post hier. Aber dennoch will ich euch meine Erfahrungen nicht vorenthalten. Ich habe dank deiner Anleitung auch einen Umzug vollzogen, wobei sich der Servername geändert hatte. Funktioniert bisher ohne weitere Probleme. (Musste in der Registry die FQDN ändern, aber ansonsten ok) Nur leider hat er trotz import die ausgestellten Zertifikate nicht angezeigt. Nach langem hin und her, war es dann das Kontextmenü in der certsrv.msc was mirt half. Hier habe ich unter „Alle Aufgaben –> Zertifizierungsstelle wiederherstellen“ den Assistenten durchgeklickt und schon ging Alles.

    U.a. kostet es mich eine Neuinstallation, da ich gem. Anleitung die Zertifikatsrolle „Zertifizierungsstellen-Webregistrierung“ nicht installieren konnte. Ich erhielt immer den FehlerCode 0x80070057 beim Konfigurieren. Also lieber Beides gleichzeitig installieren!
    Vielleicht hilft es ja jemanden.

    Vielen Dank jedenfalls für Deine Mühe.

  7. Um den FehlerCode 0x80070057 beim Konfigurieren der Zertifikatsrolle „Zertifizierungsstellen-Webregistrierung“ zu beheben, folgendes Flag mithilfe einer Admin-CMD setzen:

    certutil -setreg config\setupstatus 0x6001

    Quelle:
    http://social.technet.microsoft.com/wiki/contents/articles/12035.ad-certification-authority-web-enrollment-configuration-failed-0x80070057-win32-87.aspx

  8. Immer wieder eine tolle Anleitung, nur mit dem einfachen einspielen des Regschlüssel ist es bei mir nicht gewesen, ich habe danach auch noch über „Zertifikatsstelle wiederherstellen“ am neuen Server ausführen müssen, danach waren die Zertifikate auch wieder da.

  9. Hallo Jan, eine wirklich tolle Anleitung!
    Ich stehe vor einer Aufgabe, in der ich in einer relativ großen Kundenumgebung die PKI von einem DC 2012R2 auf einen Memberserver 2012R2 übertragen muss (soll). Nun lese ich allerdings hier, dass dies nicht ohne Weiteres möglich ist. Ist das so oder gibt es dazu mittlerweile einen Workaround??
    Gruß, Stefan

  10. Danke @Jan

    Musste gerade von einem Windows 2008 (non R2) auf Windows 2016 die PKI migrieren. Dies klappt in einem Durchgang nicht (mehr). Ich habe erst die PKI von 2008 auf 2012 R2 gehoben und danach von 2012 R2 auf 2016. Mit gleicher Anleitung wie oben, gut zu wissen!

  11. Hallo,

    ich habe auch anhand Deiner Anleitung von 2008R2 auf 2016 migriert, allerdings erhalte ich bei den Zertifikatvorlagen einen Fehler „Die Vorlageninformationen konnten nicht geladen werden. Hast du eine Idee? Danke

  12. Hallo mir geht es genauso wie duerener. Beim Versuch sich die Zertifikatsvorlagen im der MMC anzuschauen wir folgende Fehlermeldung angezeigt“Die Vorlageninformationen konnten nicht geladen werden“

    Hat da jemand schon eine Lösung oder eine Idee an was es liegen könnte?

  13. Hallo,

    ich hatte das gleiche Problem wie duerener + andrebus.
    Nach einer Migration von 2008R2 nach 2016 fehlten in der MMC auch die Vorlagen.
    Ebenfalls fehlte im AD der Eintrag unter „Enrollment Services“
    (ADSIEDIT: CN=Configuration | CN=Services | CN=Public Key Services | CN=Enrollment Services)
    Erst als ich versuchte das root Zertifikat im AD neu zu registrieren (certutil -dspublish -f path\RootCAcert.crt RootCA)
    habe ich festgestellt, dass mein migriertes root Zertifikat beschädigt war.

    Die Lösung war dann einfach: In der certsrv-MMC das Zertifizierungsstellenzertifikat erneuern.
    Danach war dann auch der Wert unter „Enrollment Services“ plötzlich da und nach
    Neustart der certsrv-MMC wurden endlich auch die Vorlagen wieder angezeigt.

    Hoffe da hilft auch bei anderen.

  14. Mir hat die Anleitung heute sehr gut weiter geholfen. Der Umzug war innerhalb von nicht einmal einer Stunde vollzogen (inkl .lesen). Danke auch an Dominik, dessen Tipp mit dem wiederherstellen der zertifikatsstelle ich auch sehr gut gebrauchen konnte!

    Vielen Dank für den hilfreichen Content!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert