Inhaltsverzeichnis

Das STARTTLS-Zertifikat läuft in Kürze ab

Auf den ersten Geburtstag des Exchange-Servers macht Sie dieser vehement mit etlichen Fehlermeldungen aufmerksam. Sie finden im Exchange Logfile zB diese Meldung:

Event: 12018; Source: MSExchangeTransport

Protokollname:     Application
Quelle:            MSExchangeTransport
Datum:             10.03.2014 13:23:38
Ereignis-ID:       12018
Aufgabenkategorie: TransportService
Ebene:             Fehler
Schlüsselwörter:   Klassisch
Benutzer:          Nicht zutreffend
Computer:          EXC.DOMAIN.local
Beschreibung:
Das STARTTLS-Zertifikat läuft in Kürze ab. Betreff: mail.domain.de, Fingerabdruck: 3AA13AE50E62EF9B345F60FF06D7D31235872853,
verbleibende Stunden: 239. Führen Sie das Cmdlet 'New-ExchangeCertificate' aus, um ein neues Zertifikat zu erstellen.

Mit dem Powershell Cmdlet »Get-ExchangeCertificate« können Sie sich die installierten Zertifikate anzeigen und damit das ablaufende Zertifikat identifizieren:

[PS] C:\Windows\system32>Get-ExchangeCertificate| fl Name, Thum*, Services, Status, Not*


Thumbprint : 7588292EB5EFA3A5595384CB58B4C6EFB8B6610E
Services   : None
Status     : Valid
NotAfter   : 19.03.2023 15:39:41
NotBefore  : 21.03.2013 15:39:41

Thumbprint : 3AA13AE50E62EF9B345F60FF06D7D31235872853
Services   : IIS, SMTP
Status     : Valid
NotAfter   : 20.03.2014 11:24:57
NotBefore  : 20.03.2013 11:14:57

Thumbprint : 68A72AB383573117589036CBCA606DD2ABE973A9
Services   : None
Status     : Valid
NotAfter   : 20.03.2018 00:59:59
NotBefore  : 20.03.2013 01:00:00

Thumbprint : E2E4060619F072704AFA4FC7DD145CD6EDEE499CE
Services   : IMAP, POP, SMTP
Status     : Valid
NotAfter   : 19.03.2018 11:37:51
NotBefore  : 19.03.2013 11:37:51

Zertifikatsanforderung erstellen

Die Basis eines jeden Zertifikats stellt die Zertifikatsanforderung und eines dazugehörigen Schlüsselpaares dar. Die codierte Zertifikatsanforderung enthält diesen Schlüssel bereits und wird zB auf einem Exchange Server 2010 in der Powershell mit folgenden Kommando erstellt und in die flüchtige Variable »$CSR« geschrieben. Das folgende Kommando erstellt ein Zertifikat für die FQDNs: outlook.domain.de, autodiscover.domain.de, autodiscover.domain.local, werden keine alternativen Namen benötigt, lässt man den Schalter »-DomainName« mit seinen Werten einfach weg:

[PS] C:\Windows\system32>$CSR = New-ExchangeCertificate -GenerateRequest -SubjectName "C=DE, O=MyCompany AG, CN=outlook.domain.de, OU=EDV, S=BY" -DomainName outlook.domain.de, autodiscover.domain.de, autodiscover.domain.local -PrivateKeyExportable $true

Note: Zur Zeit der Erstellung dieser Doku war eine Anleitung von Microsoft mit der falschen Syntax1) ein Show Stopper in unserem Setup. Wenn Sie alternative Antragstellernamen (»-DomainName«) verwenden, müssen Sie ebenfalls den Common Name (»CN=«) in diese Liste zusätzlich mit aufnehmen!

Im zweiten Schritt wird der Inhalt der Variable »$CSR« in die Textdatei »C:\orgfiles\certrequest_20150312.txt« geschrieben:

[PS] C:\Windows\system32>Set-Content -Path "C:\orgfiles\certrequest_20150312.txt" -Value $CSR

C:\orgfiles\certrequest_20150312.txt

—--BEGIN NEW CERTIFICATE REQUEST—--
MIID5jCCAs4CAQAwWjELMAkGA1UECAwCQlkxDDAKBgNVBAsMA0VEVjEbMBkGA1UE
AwwSb3V0bG9vay5rYXN0bmVyLmRlMRMwEQYDVQQKDApLYXN0bmVyIEFHMQswCQYD
VQQGEwJpQQO+h4HQ8axJP0NllMnQtmjmNvTa7jG9GdivmU9RDBK371pERTCCASIw
DQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAKNqmPqPrNxRJMquSRtspLeMU4Ul
OtjXVTPQ5TGl/en6wU8iWSJwaFJH/78AwHM0bN0qIlvMy4ljTaSyiGf+PtxkwrD0
XbOrAT/Hlv/uKgrr1eFIDUp4hVn4w44b2HB/DEoWJdxweeU8oYo16WQra4RAUnTG
pr3eI8bRWqF1TGpOot50I9bpCivkApiC40z5K+FpZ2UuHHuY8hrF8MS3urCV+ORI
GlHiUQq0sb+fTrzNxD3zYeBfxPgKNX1yWUJ/vvpK0JpQ9w5D3JkvJxrc59/qZ4T3
GIYZPLKx+TUCAwEAAaCCAUUwGgYKKwYBBAGCNw0CAzEMFgo2LjEuNzYwMS4yMEwG
CSqGSIb3DQEJDjE/MD0wDgYDVR0PAQH/BAQDAgWgMAwGA1UdEwEB/wQCMAAwHQYD
VR0OBBYEFF1bDTdBU3s+FBE3kndcT28IfrqFMGUGCSsGAQQBgjcVFDFYMFYCAQUM
GFVOSVZFUlNFLTIuS0FTVE5FUi5sb2NhbAwTS0FTVE5FUlxVTklWRVJTRS0yJAwi
TWljcm9zb2Z0LkV4Y2hhbmdlLlNlcnZpY2VIb3N0LmV4ZTByBgorBgEEAYI3DQIC
MWQwYgIBAR5aAE0AaQBjAHIAbwBzAG8AZgB0ACAAUgBTAEEAIABTAEMAaABhAG4A
bgBlAGwAIABDAHIAeQBwAHQAbwBnAHIAYQBwAGgAaQBjACAAUAByAG8AdgBpAGQA
ZQByAwEAMA0GCSqGSIb3DQBVw5xIZX3+lALxvKYhWdjVABRyChRZQEBBQUAA4IBA
qeYOjVdzTt1NKvEQHtMj2sDBbGkyICKHffWkJnz7lNpPy++eA0H7fBgEmRD+9Ban
68BSumC32Ko8UXiEgwL5UmwZazNeALhGRH57uwXyKd8AwUMb4TLb3RcYhVPp2CjW
tFKSv2K3h9Kk+YgGX0I0lEfXfpMJWI9zcjBLOpRKnlQoI2HtYjrYxVOtNyUfWYK0
ZZzPS4dTyzg7opDdySP6m1XPw+muuKoPJX4GqQxx7aCUSr7E9m1ZeV72jXd/vZcE
+0ixnwXhbUJ0whXllEZ8pBvU1Yvv/EPnfJWN+x01+nPQL4LsY9xYrYTr
—--END NEW CERTIFICATE REQUEST—--

Diesen Request reichen Sie in Ihrer Zertifizierungsstelle ein und laden das ausgestellte Zertifikat herunter…

Zertifikat installieren

Sie haben nun das fertig ausgestellte und von der Zertifikatsstelle signierte Zertifikat erhalten und auf Ihrem Exchange Server 2010 abgespeichert. Installieren Sie das Zertifikat mit folgenden Powershell-Kommando in den lokalen Zertifikatsspeicher des Exchangeservers:

[PS] C:\Windows\system32>Import-ExchangeCertificate -FileData ([Byte[]]$(Get-Content -Path C:\orgfiles\Cert_2015\outlook.kastner.de_2015.cer -Encoding byte -ReadCount 0))

Thumbprint                                Services   Subject
----------                                --------   -------
54703CA96E63686C4612342A893C8441234B7AD4  ......     CN=outlook.domain.de, OU=EDV, O=MyCompany AG, S=BY, C=DE

Zertifikat aktivieren

Mit dem Vorgang des Imports befindet sich das Zertifikat bislang erst im lokalem Zertifikatsspeicher des Exchangeservers, Sie können das mit folgenden Powershellkommando überprüfen:

[PS] C:\Windows\system32>Get-ExchangeCertificate| fl Name, Thum*, Services, Status, Not*


Thumbprint : 54703CA96E63686C4612342A893C8441234B7AD4
Services   : None
Status     : Valid
NotAfter   : 12.03.2018 11:01:31
NotBefore  : 12.03.2015 10:51:31

Thumbprint : 538EB8D67AFFA413E7BD414C65EFB3D7FBB766FC
Services   : SMTP
Status     : Valid
NotAfter   : 19.08.2019 01:59:59
NotBefore  : 19.08.2014 02:00:00

Thumbprint : F42B9E80A7870F8E99601016FEEF5746A2E49DF9
Services   : IIS, SMTP
Status     : Valid
NotAfter   : 17.03.2015 16:25:39
NotBefore  : 17.03.2014 16:15:39

Thumbprint : 7588292EB40A48B4C6EFB8B6610E5EFA35119538
Services   : None
Status     : Valid
NotAfter   : 19.03.2023 15:39:41
NotBefore  : 21.03.2013 15:39:41

Thumbprint : 68A72A58903439CA606DD2ABE973A9B38D1B3117
Services   : SMTP
Status     : Valid
NotAfter   : 20.03.2018 00:59:59
NotBefore  : 20.03.2013 01:00:00

Thumbprint : E2E4064A44FC7DD145BC8EDEE499CE0619F07270
Services   : IMAP, POP, SMTP
Status     : Valid
NotAfter   : 19.03.2018 11:37:51
NotBefore  : 19.03.2013 11:37:51

Um dieses Zertifikat nun zu aktivieren, weisen Sie es einem Dienst zu:

[PS] C:\Windows\system32>Enable-ExchangeCertificate -Server MTA-2 -Service "IIS" -Thumbprint 54703CA96E63686C4612342A893C8441234B7AD4

That's the way it works - it's all done
prontosystems.org - we are connecting more than computers

pronto 2015/03/12 14:33