Exchange サーバーから証明書をエクスポートする
Exchange サーバーから証明書をエクスポートして、バックアップにしたり、またはその他のクライアント、デバイスまたはサーバー上に証明書をインポートしたりすることができます。 Exchange 管理センター (EAC) または Exchange 管理シェル の証明書をエクスポートできます。 結果として作成される証明書ファイルは、証明書の秘密キーを含むパスワードで保護されたバイナリ PKCS #12 ファイルであり、他のサーバー上へのインポート (インストール) に適しています。
注:
証明書管理タスクは、Exchange Server 2016 CU23 および Exchange Server 2019 CU12 の EAC から削除されます。 Exchange Management Shell プロシージャを使用して、これらのバージョンから証明書をエクスポートまたはインポートします。
事前に必要な知識
予想所要時間 : 5 分。
EAC では、証明書ファイルを UNC パス (
\\<Server>\<Share>\
または\\<LocalServerName>\c$\
) にエクスポートする必要があります。 Exchange 管理シェル では、ローカル パスを指定できます。オンプレミスの Exchange 組織で Exchange 管理シェルを開く方法については、「 Open the Exchange Management Shell」をご覧ください。
この手順を実行する際には、あらかじめアクセス許可が割り当てられている必要があります。 必要なアクセス許可を確認するには、「クライアント とモバイル デバイスのアクセス許可 」トピックの「クライアント アクセス サービスのセキュリティ」エントリを参照してください。
このトピックの手順で使用可能なキーボード ショートカットについては、「Exchange 管理センターのキーボード ショートカット」を参照してください。
ヒント
問題がある場合は、 Exchange Server、Exchange Online、Exchange Online Protection。 必要な作業 シェルを使用して送信者フィルターを有効または無効にする
EAC を使用して証明書をエクスポートする
EAC を開き、[サーバー>Certificates] に移動します。
[サーバーの選択] ボックスの一覧で、証明書を含む Exchange サーバーを選択し、[その他のオプション] をクリックして、[Exchange 証明書のエクスポート] を選択します。
[Exchange 証明書のエクスポート] ページで、次の情報を入力します。
エクスポートするファイル: 証明書ファイルの UNC パスとファイル名を入力します。 たとえば、
\\FileServer01\Data\Fabrikam.pfx
のように指定します。パスワード: 秘密キーを使用して証明書をエクスポートする場合は、パスワードを指定する必要があります。 秘密キーと一緒に証明書をエクスポートすると、他のサーバー上に証明書をインポートできます。
完了したら、[OK] をクリックします。
Exchange 管理シェル を使用して証明書をエクスポートする
他のクライアントまたはサーバーにインポートできるバイナリ証明書ファイルをエクスポートするには、次の構文を使用します。
$cert = Export-ExchangeCertificate -Thumbprint <Thumbprint> -BinaryEncoded -Password (Read-Host "Enter password" -AsSecureString) [-Server <ServerIdentity>]
[System.IO.File]::WriteAllBytes('<FilePathOrUNCPath>\<FileName>.pfx', $cert.FileData)
この例では、次の設定を使用して証明書をローカル Exchange サーバーからファイルにエクスポートします。
- 拇印の値
5113ae0233a72fccb75b1d0198628675333d010e
を持つ証明書は、コマンドを実行しているのと同じサーバー上のC:\Data\Fabrikam.pfx
ファイルにエクスポートされます。 - エクスポートされた証明書ファイルは DER (Base64 ではなく) でエンコードされます。
- パスワードの入力を求められます。
$cert = Export-ExchangeCertificate -Thumbprint 5113ae0233a72fccb75b1d0198628675333d010e -BinaryEncoded -Password (Read-Host "Enter password" -AsSecureString)
[System.IO.File]::WriteAllBytes('C:\Data\Fabrikam.pfx', $cert.FileData)
保留中の証明書要求 (証明書署名要求または CSR とも呼ばれます) をエクスポートするには、次の構文を使用します。
$txtcert = Export-ExchangeCertificate -Thumbprint <Thumbprint> [-Server <ServerName>]
[System.IO.File]::WriteAllBytes('<FilePathOrUNCPath>\<FileName>.req', [System.Text.Encoding]::Unicode.GetBytes($txtcert))
この例では、保留中の証明書要求をローカル Exchange サーバーから次の設定のファイルにエクスポートします。
- 拇印の値を持つ証明書
72570529B260E556349F3403F5CF5819D19B3B58
ファイル\\FileServer01\Data\Fabrikam.req
にエクスポートされます。 - エクスポートされた証明書ファイルは Base64 でエンコードされています。
$txtcert = Export-ExchangeCertificate -Thumbprint 72570529B260E556349F3403F5CF5819D19B3B58
[System.IO.File]::WriteAllBytes('\\FileServer01\Data\Fabrikam.req', [System.Text.Encoding]::Unicode.GetBytes($txtcert))
構文とパラメーターの詳細については、「 Export-ExchangeCertificate」を参照してください。
注:
- 証明機関に証明書要求を再送信する必要があり、元の証明書要求ファイルが見つからない場合は、保留中の証明書要求をエクスポートできます。
- 証明書要求をエクスポートする場合、通常、Password パラメーターまたは BinaryEncoded スイッチを使用する必要はないため、要求を .req ファイルに保存します。
- エクスポートされた保留中の証明書要求を別のサーバーにインポートすることはできません。
正常な動作を確認する方法
証明書が Exchange サーバーから正常にエクスポートされたことを確認するには、別のサーバーに証明書ファイルをインポートしてください。 詳細については、「 Exchange サーバーに証明書をインポートまたはインストールする」を参照してください。