MBAM – Zertifikats Probleme!

Im Oktober 2012 hat Microsoft die neue MDOP 2012 Version und somit MBAM v2 freigegeben. Inzwischen sind andere Punkte abgearbeitet und es ist Zeit sich mit der neuen Version zu beschäftigen. Aufgrund der Vorinstallation erscheint mir ein Update von 1.0 auf 2.0 sinnvoll. Nach dem Starten meiner Entwicklungsumgebungen musste ich feststellen, die ursprünglich installierte Version funktioniert nicht. Ein Blick in das Ereignislog zeigte ein Fehler im Zertifikat an. Es war abgelaufen… grummel.

Server VSS Writer was unable to connect to the SQL data store
Server VSS Writer was unable to connect to the SQL data store

Die Fehlermeldung im Detail:

Error Caught in Application_Error event

Error in: https://mbam.schmid.local/Hardware.aspx

Error Message: Das Remotezertifikat ist laut Validierungsverfahren ungültig.

Stack Trace:    bei System.Net.Security.SslState.StartSendAuthResetSignal(ProtocolToken message, AsyncProtocolRequest asyncRequest, Exception exception)

bei System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)

bei System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)

bei System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)

bei System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)

bei System.Net.Security.SslState.ProcessReceivedBlob(Byte[] buffer, Int32 count, AsyncProtocolRequest asyncRequest)

bei System.Net.Security.SslState.StartReceiveBlob(Byte[] buffer, AsyncProtocolRequest asyncRequest)

bei System.Net.Security.SslState.ForceAuthentication(Boolean receiveFirst, Byte[] buffer, AsyncProtocolRequest asyncRequest)

bei System.Net.Security.SslState.ProcessAuthentication(LazyAsyncResult lazyResult)

bei System.Threading.ExecutionContext.runTryCode(Object userData)

bei System.Runtime.CompilerServices.RuntimeHelpers.ExecuteCodeWithGuaranteedCleanup(TryCode code, CleanupCode backoutCode, Object userData)

bei System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state)

bei System.Net.TlsStream.ProcessAuthentication(LazyAsyncResult result)

bei System.Net.TlsStream.Write(Byte[] buffer, Int32 offset, Int32 size)

bei System.Net.PooledStream.Write(Byte[] buffer, Int32 offset, Int32 size)

bei System.Net.ConnectStream.WriteHeaders(Boolean async)

Dummerweise hatte ich Vergessen den Computer in die Gruppe aufzunehmen die das Zertifikat automatisch neu registrieren darf! Also Computer in die AD Gruppe aufgenommen und kurze Zeit später war das Zertifikat für die Serverauthentifizierung da. Dieses im IIS hinterlegt und der Fehler war erledigt. Beim Versuch Recoverykey zu erstellen kam das nächste Problem. Die Verbindung zum SQL Server war nicht möglich. Natürlich fehlte auf dem SQL Server das Zertifikat! Also SQL Server in die entsprechende Gruppe aufgenommen, kurz gewartet und Zertifikat ist da also alles gut! Blöderweise nicht, den MBAM wählt bei der Installation ein Zertifikat für die Verschlüsselung der Kommunikation aus bzw. bietet dem Administrator diese Möglichkeit. Das große Problem ist nun, wo speichert das System diese Information ab? Mein Zertifikat ist abgelaufen und somit wertlos.
In der Datenbank scheidet aus da die Kommunikation zum Frontend Server verschlüsselt ist. Bleibt also nur noch die Registry. Da es sich um eine Computereinstellung handelt kann es nur unter HKLM liegen. Kurz gesucht… Bingo!
Unter HKLM -> Software -> Microsoft -> Microsoft BitLocker Administration and Monitoring -> Setup liegt die Zeichenfolge NetCert.  Über die MMC das neue Zertifikat öffnen und dort den Inhalt des Fingerabdrucks kopieren. Schnell die Leerzeichen entfernen und in NetCert einfügen. Wer eine 2. Tier  oder 3. Tier Installation hat muss dies auf allen Servern nachholen. Den Report Server, falls dort ebenfalls mit SSL gearbeitet wird, nicht vergessen.

MBAM Zertifikat für verschlüsselte Kommunikation ersetzen
MBAM Zertifikat für verschlüsselte Kommunikation ersetzen

Sind die Änderungen erledigt erfolgt der Neustart der Server. Ab diesem Zeitpunkt stand das System wieder voll im Saft und ich konnte den Recovery Key aus der Datenbank wiederherstellen.

Wer MBAM Produktiv einsetzt sollte den Zertifikatsstatus prüfen. Wer eine automatische Registrierung verwendet ist auf der sicheren Seite. Ohne gültige Zertifikate keine MBAM Verschlüsselung der Clients und keine Möglichkeit zur Durchführung eines Recovery!!!

Yeah, Recovery funktioniert wieder!
Yeah, Recovery funktioniert wieder!