Import or install a certificate on an Exchange server
1 つ以上の Exchange サービスの暗号化を有効にするには、Exchange サーバーで証明書を使用する必要があります。 内部の Exchange サーバー間の SMTP 通信は、Exchange サーバーにインストールされている既定の自己署名入り証明書によって暗号化されます。 内部または外部のクライアント、サーバー、またはサービスとの通信を暗号化するには、Exchange 組織に接続するすべてのクライアント、サービス、およびサーバーによって自動的に信頼される証明書を使用する可能性が高くなります。 詳細については、「Exchange サービスの証明書要件」を参照してください。
Exchange 管理センター (EAC) または Exchange 管理シェル の Exchange サーバー上に証明書をインポート (インストール) できます。
Exchange サーバーにインポート可能な証明書ファイルの種類は次のとおりです。
PKCS #12 証明書ファイル: これらは、.cer、.crt、.der、.p12、または .pfx ファイル名拡張子を持ち、ファイルに秘密キーまたは信頼チェーンが含まれているときにパスワードを必要とするバイナリ証明書ファイルです。 Examples of these types of files include:
EAC または Export-ExchangeCertificate と PrivateKeyExportable パラメーター値を使用して他の Exchange サーバーからエクスポートされた自己署名証明書
$true
。 詳細については、「Export a certificate from an Exchange server」を参照してください。証明機関 (Active Directory 証明書サービスなどの内部 CA、または 商用 CA) によって発行された証明書。
他のサーバー (Skype for Business Server など) からエクスポートされた証明書。
PKCS #7 証明書ファイル: これらは、.p7b または .p7c ファイル名拡張子を持つテキスト証明書ファイルです。 これらのファイルには、
-----BEGIN CERTIFICATE-----
と-----END CERTIFICATE-----
、または-----BEGIN PKCS7-----
と-----END PKCS7-----
というテキストが含まれています。 証明機関には、実際のバイナリの証明書ファイルと共にインストールする必要もある証明書ファイルのチェーンが含まれる場合があります。
注:
証明書管理タスクは、Exchange Server 2016 CU23 および Exchange Server 2019 CU12 の EAC から削除されます。 Exchange Management Shell プロシージャを使用して、これらのバージョンから証明書をエクスポートまたはインポートします。
事前に必要な知識
予想所要時間 : 5 分。
EAC では、UNC パス (
\\<Server>\<Share>\
または\\<LocalServerName>\c$\
) から証明書ファイルをインポートする必要があります。 Exchange 管理シェル では、ローカル パスを指定できます。EAC では、複数の Exchange サーバーに証明書ファイルを同時にインポートすることができます (手順のステップ 4)。
オンプレミスの Exchange 組織で Exchange 管理シェルを開く方法については、「 Open the Exchange Management Shell」をご覧ください。
この手順を実行する際には、あらかじめアクセス許可が割り当てられている必要があります。 必要なアクセス許可を確認するには、「クライアント とモバイル デバイスのアクセス許可 」トピックの「クライアント アクセス サービスのセキュリティ」エントリを参照してください。
このトピックの手順で使用可能なキーボード ショートカットについては、「Exchange 管理センターのキーボード ショートカット」を参照してください。
ヒント
問題がある場合は、 Exchange Server、Exchange Online、Exchange Online Protection。 必要な作業 シェルを使用して送信者フィルターを有効または無効にする
EAC を使用して 1 つ以上の Exchange サーバーに証明書をインポートする
EAC を開き、[サーバー>Certificates] に移動します。
[サーバーの選択] ボックスの一覧で、証明書をインストールする Exchange サーバーを選択し、[その他のオプション] をクリックして、[Exchange 証明書のインポート] を選択します。
[Exchange 証明書のインポート] ウィザードが開きます。 [このウィザードは、ファイルから証明書をインポートします] ページで、次の情報を入力します。
インポート元のファイル: 証明書ファイルの UNC パスとファイル名を入力します。 たとえば、
\\FileServer01\Data\Fabrikam.cer
のように指定します。パスワード: 証明書ファイルに秘密キーまたは信頼チェーンが含まれている場合、ファイルはパスワードで保護されます。 ここにパスワードを入力します。
完了したら、[次へ] をクリックします。
[この証明書を適用するサーバーを指定する] ページで、[追加] アイコンをクリック
[サーバーの選択] ページで、証明書をインストールする Exchange サーバーを選択し、 [追加 - >] をクリックします。 必要な回数だけこの手順を繰り返します。 サーバーの選択が完了したら、[OK] をクリック します。
完了したら、 [完了] をクリックします。 次の手順については、[次の手順] セクションを参照してください。
Exchange 管理シェル を使用して証明書を Exchange サーバーにインポートする
証明書ファイルをインポートするには、次の構文を使用します。
Import-ExchangeCertificate -FileData ([System.IO.File]::ReadAllBytes('<FilePathOrUNCPath>')) [-Password (Read-Host "Enter password" -AsSecureString)] [-PrivateKeyExportable <$true | $false>] [-Server <ServerIdentity>]
この構文は、次の種類の証明書ファイルで使用します。
- バイナリ証明書ファイル (.cer、.crt、.der、.p12、または .pfx ファイル名拡張子を持つ PKCS #12 ファイル)。
- 証明書ファイルのチェーン (.p7b または .p7c ファイル名拡張子を持つ PKCS #7 テキスト ファイル)。
次の使用例は、ローカル Exchange サーバー上のパスワード P@ssw0rd1によって保護されている証明書ファイル \\FileServer01\Data\Fabrikam.pfx
をインポートします。 パスワードの入力を求められます。
Import-ExchangeCertificate -FileData ([System.IO.File]::ReadAllBytes('\\FileServer01\Data\Fabrikam.pfx')) -Password (Read-Host "Enter password" -AsSecureString)
次の使用例は、証明書ファイル \\FileServer01\Data\Chain of Certificates.p7b
のチェーンをインポートします。
Import-ExchangeCertificate -FileData ([System.IO.File]::ReadAllBytes('\\FileServer01\Data\Chain of Certificates.p7b'))
構文とパラメーターの詳細については、「 Import-ExchangeCertificate」を参照してください。
注:
- 証明書をインポートする各 Exchange サーバーでこの手順を繰り返す必要があります (サーバーでコマンドを実行するか、 サーバー パラメーターを使用します)。
- FileData パラメーターは、証明書ファイルがコマンドを実行している Exchange サーバー上にあり、証明書をインポートするのと同じサーバーである場合に、ローカル パスを受け入れます。 それ以外の場合は、UNC パスを使用します。
- インポートするサーバーから証明書をエクスポートできるようにするには、 PrivateKeyExportable パラメーターと値
$true
を使用する必要があります。
正常な動作を確認する方法
Exchange サーバーに証明書が正常にインポート (インストール) されたことを確認するには、次のいずれかの手順を使用します。
EAC at Servers>Certificates で、証明書をインストールしたサーバーが選択されていることを確認します。 対象の証明書は、証明書のリストで [状態] 値が [有効] となって表示されているはずです。
証明書をインストールしたサーバーの Exchange 管理シェル で、次のコマンドを実行します。
Get-ExchangeCertificate | where {$_.Status -eq "Valid"} | Format-List FriendlyName,Subject,CertificateDomains,Thumbprint,NotBefore,NotAfter
次の手順
サーバーに証明書をインストールした後、Exchange サーバーで暗号化のためにその証明書を使用するためには、その前に 1 つ以上の Exchange サービスに証明書を割り当てる必要があります。 詳細については、「 証明書を Exchange Server サービスに割り当てる」を参照してください。