Zusammenfassung
Ab dem Sicherheitsupdate (SU) vom Januar 2023 für Microsoft Exchange Server haben wir ein neues Feature eingeführt, mit dem Administratoren das zertifikatbasierte Signieren von PowerShell-Serialisierungsnutzlasten konfigurieren können. Dieses Feature muss manuell von einem Exchange Server-Administrator aktiviert werden, nachdem das SU auf allen Exchange-basierten Servern installiert wurde. Dieser Artikel enthält die Schritte zum Aktivieren der zertifikatbasierten Signatur von PowerShell-Serialisierungsdaten in Exchange Server.
Voraussetzungen
Voraussetzungen für die Aktivierung dieses Features:
- Stellen Sie sicher, dass auf allen Exchange-basierten Servern in Ihrer Umgebung die SU vom Januar 2023 oder eine neuere SU installiert ist. Wenn Sie diese Funktion aktivieren, bevor Sie alle Server aktualisieren, können Deserialisierungsfehler auftreten und andere Probleme auslösen.
- Stellen Sie sicher, dass ein gültiges Exchange Server-Authentifizierungszertifikat konfiguriert und auf allen Exchange-basierten Servern (mit Ausnahme von Edge-Transport-Servern) konfiguriert und verfügbar ist, bevor und nachdem Sie die Zertifikatsignatur aktivieren.
Sie können das MonitorExchangeAuthCertificate.ps1 Skript ausführen, um auf Exchange-basierten Servern in Ihrer Umgebung nach einem gültigen Authentifizierungszertifikat zu suchen. Das Skript überprüft auch, ob das Authentifizierungszertifikat in weniger als 60 Tagen abläuft, und kann Ihnen helfen, das Zertifikat zu rotieren. Weitere Informationen zu MonitorExchangeAuthCertificate.ps1finden Sie unter Exchange-AuthCertificate überwachen
Informationen zum manuellen Überprüfen der Verfügbarkeit und Gültigkeit von Authentifizierungszertifikaten finden Sie unter Verfügbarkeit und Gültigkeit von Authentifizierungszertifikaten.
Es wird dringend empfohlen, das MonitorExchangeAuthCertificate.ps1 Skript zu verwenden (oder bei Bedarf ein neues zu erstellen). Dies liegt daran, dass das Skript auch ein abgelaufenes Authentifizierungszertifikat erneuern kann. Das Skript enthält einen manuellen Ausführungsmodus (überprüfen Sie die Verfügbarkeit des Authentifizierungszertifikats, oder überprüfen Sie und ergreifen Sie ggf. erforderliche Maßnahmen). Das Skript enthält auch einen Automatisierungsmodus, der mit dem Windows-Taskplaner funktioniert.
Lösung
Für Server, auf denen Exchange Server 2019 oder Exchange Server 2016 (aktualisiert auf die SU vom Januar 2023 oder höher) ausgeführt wird
Führen Sie das folgende cmdlet in Exchange-Verwaltungsshell (EMS) auf einem Server aus, auf dem Exchange Server in Ihrer Umgebung ausgeführt wird:
New-SettingOverride -Name "EnableSigningVerification" -Component Data -Section EnableSerializationDataSigning -Parameters @("Enabled=true") -Reason "Enabling Signing Verification"Dieses Cmdlet aktiviert auf allen Servern, auf denen Exchange Server 2019, 2016 oder 2013 in Ihrer Umgebung ausgeführt wird, das Zertifikatsignieren von PowerShell-Serialisierungsnutzlasten. Sie müssen das Cmdlet nicht auf jedem Server ausführen.
Aktualisieren Sie das VariantConfiguration-Argument , indem Sie das folgende Cmdlet ausführen:
Get-ExchangeDiagnosticInfo -Process Microsoft.Exchange.Directory.TopologyService -Component VariantConfiguration -Argument RefreshUm die neuen Einstellungen anzuwenden, starten Sie den World Wide Web Publishing-Dienst und den Windows-Prozessaktivierungsdienst (WAS) neu. Führen Sie dazu das folgenden Cmdlet aus:
Restart-Service -Name W3SVC, WAS -ForceHinweis
Starten Sie diese Dienste nur auf dem Exchange Server-basierten Server neu, auf dem das Cmdlet "Einstellungen außer Kraft setzen" ausgeführt wird.
Für Server unter Exchange Server 2013
Wenn Ihre Umgebung über Server verfügt, auf denen Microsoft Exchange Server 2013 ausgeführt wird, müssen Sie auf jedem Server einen Registrierungsschlüssel konfigurieren. Legen Sie die folgenden Einstellungen fest.
Registrierungsschlüssel:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\ExchangeServer\v15\Diagnostics
Wert: EnableSerializationDataSigning
Typ: Zeichenfolge
Daten: 1
Führen Sie das folgende Cmdlet aus, um den Registrierungswert auf einem Server mit Exchange Server 2013 zu erstellen:
- New-ItemProperty -Path HKLM:\SOFTWARE\Microsoft\ExchangeServer\v15\Diagnostics -Name "EnableSerializationDataSigning" -Value 1 -Type String
Um die neuen Einstellungen anzuwenden, starten Sie den World Wide Web Publishing-Dienst und den Windows-Prozessaktivierungsdienst (WAS) neu. Führen Sie dazu das folgenden Cmdlet aus:
- Restart-Service -Name W3SVC, WAS -Force
Hinweis
Starten Sie diese Dienste auf allen Exchange Server 2013-basierten Servern in Ihrer Umgebung neu, auf denen Registrierungsänderungen vorgenommen wurden.
Bekannte Probleme
Wenn die Möglichkeit zum Signieren von Serialisierungsdaten aktiviert ist, verhindert ein abgelaufenes Authentifizierungszertifikat, dass das Cmdlet Get-ExchangeCertificate Zertifikatdetails zurückgibt.
Nachdem das Sicherheitsupdate vom Januar 2023 oder Februar 2023 für Microsoft Exchange Server 2019, 2016 oder 2013 installiert und die Zertifikatsignatur der PowerShell-Serialisierungsnutzlast aktiviert wurde, werden die Exchange-Toolbox und die Warteschlangenanzeige nicht gestartet. Weitere Informationen finden Sie unter Exchange-Toolbox und Warteschlangenanzeige schlagen fehl, nachdem das Zertifikatsignieren der PowerShell-Serialisierungsnutzlast aktiviert wurde (KB5023352).
Wenn die Möglichkeit zum Signieren von Serialisierungsdaten aktiviert ist, gibt das Cmdlet Get-ExchangeCertificate keinen sichtbaren Wert zurück, wenn es auf einem Computer ausgeführt wird, auf dem die Exchange-Verwaltungstools installiert sind, aber keine andere Exchange Server-Rolle vorhanden ist. Dies geschieht unabhängig davon, ob das Authentifizierungszertifikat gültig ist.
Einige der Skripts, die in Exchange Server enthalten sind (z. B. RedistributeActiveDatabases.ps1), funktionieren nicht ordnungsgemäß, wenn die folgenden Bedingungen erfüllt sind:
- Das Feature zum Signieren der PowerShell-Serialisierungsnutzlast ist aktiviert.
- Sie verwenden nicht die Standardsicherheitsgruppen, die von Exchange RBAC bereitgestellt werden.
- Der Benutzer, der das Skript ausführt, ist kein Mitglied der Rollengruppe "Organisationsverwaltung".