Get-ExchangeCertificate が空の出力を表示する問題を修正する方法

Exchange Server の証明書を確認したいと思います。サインインして Exchange 管理センターで確認すると、すべて問題ないようです。しかし、Get-ExchangeCertificate コマンドレットを実行すると、空の出力が表示されます。なぜこのようなことが起こっているのでしょうか?この記事では、Get-ExchangeCertificate コマンドレットで空の出力が表示される問題を修正する方法を説明します。

組織内で 2 台の Exchange Server (EX01-2019/EX02-2019) が実行されています。を実行しましょうGet-ExchangeCertificate両方の Exchange サーバー上のコマンドレット。

Get-ExchangeCertificate

Exchange Server 上の出力EX01-2019そしてEX02-2019空の出力を示します。

Thumbprint                                Services   Subject
----------                                --------   -------

これはなぜ発生するのでしょうか?また、Get-ExchangeCertificate コマンドレットの実行時に空の出力が表示される場合の解決策は何ですか?

Get-ExchangeCertificate のソリューションで空の出力が表示される

シリアル化されたペイロード署名が有効になっており、Exchange 認証証明書が欠落しているか破損しているため、空の出力が表示されます。 Exchange 認証証明書のみが欠落または破損しており、シリアル化されたペイロードの署名が有効になっていない場合は、Get-ExchangeCertificate コマンドレットの出力に値が表示されます。

注記:2023 年 11 月の Exchange Server セキュリティ更新プログラム以降、PowerShell シリアル化ペイロードの証明書署名がデフォルトで有効になりました。

この問題を解決するには、Exchange サーバーに新しい Exchange 認証証明書をインストールする必要があります。

Exchange 認証証明書が既にあり、Get-ExchangeCertificate を実行すると空の出力が表示される場合は、証明書が破損していることを意味します。

重要:Exchange Auth 証明書をインストールしましたか?有効になるまでに 24 時間かかる場合があります。したがって、待って後で確認する必要があります。

1. Microsoft Exchange Server 認証証明書を確認します。

認証証明書として構成された証明書が有効 (期限切れではない) であり、組織内のすべての Exchange サーバー (エッジ トランスポート ロールと Exchange 管理ツール ロールを除く) で使用できることが非常に重要です。

ダウンロードMonitorExchangeAuthCertificate.ps1PowerShell スクリプトを作成し、フォルダーに配置しますC:スクリプト

Exchange 管理シェルを起動し、以下のコマンドを実行して Exchange 認証証明書の状態を確認します。

注記:スクリプトを実行するには、組織管理役割グループのメンバーである必要があります。このスクリプトは、メールボックスの役割を実行している Exchange Server 上の管理者特権の Exchange 管理シェル (EMS) コマンド プロンプトから実行する必要があります。このスクリプトは、Exchange 管理ツールのみのマシンでは実行できません。

C:Scripts.MonitorExchangeAuthCertificate.ps1

出力には、Exchange Auth 証明書を新しい証明書に置き換える必要があることが示されています。

Monitor Exchange Auth Certificate script version 23.11.22.1714
The script was run without parameter therefore, only a check of the Auth Certificate configuration is performed and no change will be made

Current Auth Certificate thumbprint: 4010E939A05777DC08A4196830125B2AF2BDFBC1
Current Auth Certificate is valid for -1 day(s)
Exchange Hybrid was detected in this environment

The actively used Auth Certificate is missing on the following servers:
EX01-2019.exoip.local, EX02-2019.exoip.local

Test result: The Auth Certificate in use must be replaced by a new one.

Log file written to: C:Program FilesMicrosoftExchange ServerV15LoggingAuthCertificateMonitoringAuthCertificateMonitoringLog_20231201153933.txt

2. Exchange 認証証明書を更新する

以下のコマンドを実行して、Microsoft Exchange 認証証明書を更新します。

C:scripts.MonitorExchangeAuthCertificate.ps1 -ValidateAndRenewAuthCertificate $true -IgnoreHybridConfig $true -Confirm:$false

出力には、更新アクションが正常に実行されたことが示されています。

Monitor Exchange Auth Certificate script version 23.11.22.1714
Mode: Testing and replacing or importing the Auth Certificate (if required)
Renewal scenario: The Auth Certificate in use must be replaced by a new one.
WARNING: Waiting for service 'Microsoft Exchange Service Host (MSExchangeServiceHost)' to start...

The renewal action was successfully performed - the new Auth Certificate will become active on: 12/01/2023 15:43:41
Please ensure to run the Hybrid Configuration Wizard (HCW) as soon as the new Auth Certificate becomes active.

Log file written to: C:Program FilesMicrosoftExchange ServerV15LoggingAuthCertificateMonitoringAuthCertificateMonitoringLog_20231201154320.txt

注記:Exchange ハイブリッド構成を使用している場合は、新しい認証証明書がアクティブになったらすぐにハイブリッド構成ウィザードを再実行する必要があります。これは、次の手順で Exchange Auth 証明書を確認した後で行ってください。

3. Exchange 認証証明書を確認する

MonitorExchangeAuthCertificate.ps1 スクリプトを実行して、Exchange 認証証明書を確認します。

C:ScriptsMonitorExchangeAuthCertificate.ps1

出力には、認証証明書が有効であることが示されています。

Monitor Exchange Auth Certificate script version 23.11.22.1714
The script was run without parameter therefore, only a check of the Auth Certificate configuration is performed and no change will be made

Current Auth Certificate thumbprint: 6789B2FE30740132E2DDBF147023E7485F476526
Current Auth Certificate is valid for 1826 day(s)
Exchange Hybrid was detected in this environment

Test result: No renewal action is required

Log file written to: C:Program FilesMicrosoftExchange ServerV15LoggingAuthCertificateMonitoringAuthCertificateMonitoringLog_20231201155121.txt

4. Get-ExchangeCertificate コマンドレットを実行します。

Get-ExchangeCertificate コマンドレットを実行し、出力に空の出力ではなく値が表示されることを確認します。

Get-ExchangeCertificate

すべての証明書が出力に表示され、見栄えがよくなります。

Thumbprint                                Services   Subject
----------                                --------   -------
6789B2FE30740132E2DDBF147023E7485F476526  ....S..    CN=Microsoft Exchange Server Auth Certificate
804F01FADE7DF2AA309277F6BD0F96CF4B3C9B62  IP.WS..    CN=EX02-2019
6BC65424EC1FA8803CDE86F6286518FDB639BFB6  .......    CN=CLIUSR
7EB920C8E05D8DBD0E1CF0C06A584C879F674E60  .......    CN=WMSvc-SHA2-EX02-2019
0014716C6390CFFBA0794248EE248D40129D7020  .......    CN=CLIUSR

5. ハイブリッド構成ウィザードの再実行

Exchange ハイブリッド環境を使用している場合は、ハイブリッド構成ウィザードを再実行する必要があります。

6. Exchange Server 証明書のステータスを確認する

Exchange Health Checker スクリプトを実行し、証明書の状態を確認します。

[PS] C:scripts>Get-ExchangeServer | ?{$_.AdminDisplayVersion -Match "^Version 15"} | .HealthChecker.ps1; .HealthChecker.ps1 -BuildHtmlServersReport -HtmlReportFile "ExchangeAllServersReport.html"; .ExchangeAllServersReport.html

新しい Exchange 認証証明書をインストールした直後の様子は次のとおりです。すべての証明書ステータスは次のように表示されます。未知

もっと詳しく知る:Windows 11で空のヘルプアプリを修正する方法

最大 24 時間を与えて、ヘルス チェッカー スクリプトを再度実行します。すべての証明書ステータスは次のように表示されます。有効

それでおしまい!

結論

Get-ExchangeCertificate が空の出力を表示する問題を修正する方法を学習しました。 MonitorExchangeAuthCertificate.ps1 PowerShell スクリプトを実行し、Exchange Server 認証証明書を置き換えます。最大 24 時間待ちます。その後、すべての証明書が有効であるように見え、出力は機能します。

この記事は楽しかったですか? 「Exchange Server に証明書をインポートする方法」もお勧めします。ぜひフォローしてこの記事をシェアしてください。

Related Posts