MakeCert を使用したポイント対サイト接続の証明書の生成とエクスポート
この記事では、MakeCert を使用した自己署名ルート証明書の作成方法とクライアント証明書の生成方法について説明します。 この記事の手順は、.pfx および .cer ファイルを作成するためのものです。 別の証明書の手順については、「PowerShell - .pfx および .cer 証明書ファイル」または「Linux- OpenSSL - .pem 証明書ファイル」を参照してください。
「Windows 10 以降の PowerShell の手順」を使用して証明書を作成することをお勧めします。 これらの MakeCert に関する手順はオプションの手法として提供しています。 どちらの方法で生成した証明書も、サポートされている任意のクライアント オペレーティング システムにインストールできます。 MakeCert には以下の制限事項があります。
- MakeCert は非推奨となっています。 これは、任意の時点でこのツールが削除される可能性があることを意味します。 MakeCert が利用できなくなった場合も、MakeCert を使用して生成済みの証明書に影響はありません。 MakeCert は、検証メカニズムとしてではなく、証明書の生成にのみ使用されます。
自己署名ルート証明書の作成
次の手順では、MakeCert を使用して自己署名証明書を作成する方法を説明します。 これらの手順は、デプロイ モデル固有のものではありません。 リソース マネージャーとクラシックの両方で有効です。
MakeCert をダウンロードし、インストールします。
インストール後、makecert.exe ユーティリティは通常、C:\Program Files (x86)\Windows Kits\10\bin<arch> で見つかります。 ただし、別の場所にインストールされている可能性もあります。 管理者としてコマンド プロンプトを開き、MakeCert ユーティリティの場所に移動します。 次の例を使って、適切な場所に調整できます。
cd C:\Program Files (x86)\Windows Kits\10\bin\x64
コンピューターの個人証明書ストアで証明書を作成し、インストールします。 次の例は、P2S を構成するときに Azure にアップロードする、対応する .cer ファイルを作成します。 'P2SRootCert' と 'P2SRootCert.cer' を証明書に使う名前に置き換えます。 証明書は 'Current User\Personal\Certificates' にあります。
makecert -sky exchange -r -n "CN=P2SRootCert" -pe -a sha256 -len 2048 -ss My
公開キー (.cer) のエクスポート
自己署名ルート証明書を作成した後、(秘密鍵ではなく) ルート証明書の .cer ファイルをエクスポートします。 後で、ファイルに含まれる必要な証明書データを Azure にアップロードします。 次の手順は、自己署名ルート証明書の .cer ファイルをエクスポートし、必要な証明書データを取得するのに役立ちます。
証明書の .cer ファイルを取得するには、[ユーザー証明書の管理] を開きます。
自己署名ルート証明書を探して右クリックします (通常は Certificates - Current User\Personal\Certificates にあります)。 [すべてのタスク] ->[エクスポート] を選びます。 証明書のエクスポート ウィザードが開きます。
"Current User\Personal\Certificates" に証明書が見つからない場合は、誤って Certificates - Current User ではなく Certificates - Local Computer を開いた可能性があります。
ウィザードで [次へ] を選択します。
[いいえ、秘密キーをエクスポートしません] を選択して、[次へ] を選択します。
[エクスポート ファイルの形式] ページで [Base-64 encoded X.509 (.CER)] を選んでから、[次へ] を選びます。
[エクスポートするファイル] で、 [参照] をクリックして証明書をエクスポートする場所を選択します。 [ファイル名] に証明書ファイルの名前を指定します。 次に、 [次へ] を選択します。
[完了] を選択して、証明書をエクスポートします。
"エクスポートは成功しました" という確認メッセージが表示されます。
証明書をエクスポートした場所に移動し、メモ帳などのテキストエディタを使用して開きます。 必要な Base-64 エンコード X.509 (.CER) 形式で証明書をエクスポートした場合、次の例のようなテキストが表示されます。 青くハイライトされた部分には、コピーして Azure にアップロードする情報が含まれています。
ファイルがこの例に似ていない場合は、通常、Base-64 エンコードの X.509 (.CER) 形式を使用してエクスポートしなかったことを意味します。 また、メモ帳以外のテキスト エディターを使用している場合、一部のエディターではバックグラウンドで意図しない書式設定が行われる可能性があることに注意してください。 これにより、この証明書から Azure にテキストをアップロードすると問題が発生する可能性があります。
エクスポートした .cer ファイルは Azure にアップロードする必要があります。 手順については、ポイント対サイト接続の構成に関するページをご覧ください。 信頼されたルート証明書を追加するには、記事のこのセクションをご覧ください。
自己署名証明書と証明書を保存するための秘密キーのエクスポート (省略可能)
自己署名ルート証明書をエクスポートし、安全に保存しておくことが必要な場合もあります。 後から別のコンピューターにインストールして、さらに多くのクライアント証明書を生成したり、別の .cer ファイルをエクスポートしたりできます。 自己署名ルート証明書を .pfx としてエクスポートするには、ルート証明書を選択し、「クライアント証明書をエクスポートする」と同じ手順を実行します。
クライアント証明書の作成とインストール
自己署名証明書をクライアント コンピューターに直接インストールすることはしません。 自己署名証明書からクライアント証明書を生成し、 生成したクライアント証明書をエクスポートして、クライアント コンピューターにインストールします。 これらの手順は、デプロイ モデル固有のものではありません。 リソース マネージャーとクラシックの両方で有効です。
クライアント証明書の生成
ポイント対サイトで VNet に接続するすべてのクライアント コンピューターには、クライアント証明書がインストールされている必要があります。 自己署名ルート証明書からクライアント証明書を生成し、そのクライアント証明書をエクスポートしてインストールします。 クライアント証明書がインストールされていない場合は、認証が失敗します。
次の手順では、自己署名ルート証明書からクライアント証明書を生成する方法を示しています。 同じルート証明書から複数のクライアント証明書を生成できます。 次の手順を使用してクライアント証明書を生成すると、証明書の生成に使用したコンピューターにクライアント証明書が自動的にインストールされます。 クライアント証明書を別のクライアント コンピューターにインストールする場合は、その証明書をエクスポートできます。
自己署名証明書の作成に使用した同じコンピューターで、管理者としてコマンド プロンプトを開きます。
クライアント証明書を生成するには、サンプルを変更して実行します。
- "P2SRootCert" を、クライアント証明書を生成している自己署名ルートの名前に変更します。 必ずルート証明書の名前を使用してください。これは、自己署名ルートの作成時に指定した 'CN=' の値です。
- P2SChildCert を、生成するクライアント証明書の名前に変更します。
下の例を変更せずに実行すると、ルート証明書 P2SRootCert から生成された個人用証明書ストアに P2SChildcert という名前のクライアント証明書が作成されます。
makecert.exe -n "CN=P2SChildCert" -pe -sky exchange -m 96 -ss My -in "P2SRootCert" -is my -a sha256
クライアント証明書のエクスポート
クライアント証明書を生成すると、このクライアント証明書は、生成に使用したコンピューターに自動的にインストールされます。 クライアント証明書を別のクライアント コンピューターにインストールする場合は、まずクライアント証明書をエクスポートする必要があります。
クライアント証明書をエクスポートするには、 [ユーザー証明書の管理] を開きます。 生成したクライアント証明書は、既定では "Certificates - Current User\Personal\Certificates" にあります。 エクスポートするクライアント証明書を右クリックして、 [すべてのタスク] 、 [エクスポート] の順にクリックし、証明書のエクスポート ウィザードを開きます。
証明書のエクスポート ウィザードで [次へ] をクリックして続行します。
[はい、秘密キーをエクスポートします] を選び、 [次へ] をクリックします。
[エクスポート ファイルの形式] ページでは、既定値をそのまま使用します。 [証明のパスにある証明書を可能であればすべて含む] がオンになっていることを確認します。 この設定はさらに、クライアント認証が成功するために必要なルート証明書情報もエクスポートされます。 これがないと、クライアントは信頼されたルート証明書を持っていないので、クライアント認証は失敗します。 次に、 [次へ] をクリックします。
[セキュリティ] ページでは、秘密キーを保護する必要があります。 パスワードを使用する場合は、この証明書に設定したパスワードを必ず記録しておくか、覚えておいてください。 次に、 [次へ] をクリックします。
[エクスポートするファイル] で、 [参照] をクリックして証明書をエクスポートする場所を選択します。 [ファイル名] に証明書ファイルの名前を指定します。 次に、 [次へ] をクリックします。
[完了] をクリックして、証明書をエクスポートします。
エクスポートしたクライアント認定資格証のインストール
クライアント証明書をインストールするには、クライアント証明書のインストールに関するページを参照してください。
次のステップ
引き続きポイント対サイト構成を使用します。
- Resource Manager デプロイメント モデルの手順については、ネイティブ Azure 証明書認証を使用した P2S の構成に関するページを参照してください。
- クラシック デプロイメント モデルの手順については、VNet へのポイント対サイト VPN 接続の構成 (クラシック) に関する記事を参照してください。
P2S のトラブルシューティング情報については、Azure ポイント対サイト接続のトラブルシューティングに関するページを参照してください。