MakeCert を使用したポイント対サイト接続の証明書の生成とエクスポート

ポイント対サイト接続では、認証に証明書を使用します。 この記事では、MakeCert を使用した自己署名ルート証明書の作成方法とクライアント証明書の生成方法について説明します。 別の証明書の手順が必要な場合は、証明書 - Powershell または証明書 - Linux の記事を参照してください。

証明書を作成するには、Windows 10 以降の PowerShell の手順を使用することをお勧めしますが、別の方法として、これらの MakeCert の手順も提供しています。 いずれかの方法を使用して生成した証明書は、サポートされている任意のクライアント オペレーティング システムにインストールできます。 ただし、MakeCert には次の制限事項があります。

  • MakeCert は非推奨となっています。 これは、任意の時点でこのツールが削除される可能性があることを意味します。 MakeCert が利用できなくなった場合も、MakeCert を使用してすでに生成されたすべての証明書に影響はありません。 MakeCert は、検証メカニズムとしてではなく、証明書の生成にのみ使用されます。

自己署名ルート証明書の作成

次の手順では、MakeCert を使用して自己署名証明書を作成する方法を説明します。 これらの手順は、デプロイ モデル固有のものではありません。 リソース マネージャーとクラシックの両方で有効です。

  1. MakeCert をダウンロードし、インストールします。

  2. インストール後、makecert.exe ユーティリティは通常、C:\Program Files (x86)\Windows Kits\10\bin<arch> で見つかります。 ただし、別の場所にインストールされている場合もあります。 管理者としてコマンド プロンプトを開き、MakeCert ユーティリティの場所に移動します。 次の例を使って、適切な場所に調整できます。

    cd C:\Program Files (x86)\Windows Kits\10\bin\x64
    
  3. コンピューターの個人証明書ストアで証明書を作成し、インストールします。 次の例は、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 ファイルをエクスポートし、必要な証明書データを取得するのに役立ちます。

  1. 証明書の .cer ファイルを取得するには、[ユーザー証明書の管理] を開きます。

    自己署名ルート証明書を探して右クリックします (通常は "Certificates - Current User\Personal\Certificates" にあります)。 [すべてのタスク] ->[エクスポート] の順にクリックします。 証明書のエクスポート ウィザードが開きます。

    "Current User\Personal\Certificates" に証明書が見つからない場合は、誤って "Certificates - Current User" ではなく "Certificates - Local Computer" を開いている可能性があります。

    [証明書] ウィンドウを示すスクリーンショット。[すべてのタスク] の [エクスポート] が選択されています。

  2. ウィザードで [次へ] をクリックします。

  3. [いいえ、秘密キーをエクスポートしません] を選択して、 [次へ] をクリックします。

    [秘密キーをエクスポートしません] を示すスクリーンショット。

  4. [エクスポート ファイルの形式] ページで [Base-64 encoded X.509 (.CER)] を選択し、 [次へ] をクリックします。

    Base-64 でエンコードされたエクスポートを示すスクリーンショット。

  5. [エクスポートするファイル] で、 [参照] をクリックして証明書をエクスポートする場所を選択します。 [ファイル名] に証明書ファイルの名前を指定します。 次に、 [次へ] をクリックします。

  6. [完了] をクリックして、証明書をエクスポートします。

  7. 「エクスポートは成功しました」という確認メッセージが表示されます。

  8. 証明書をエクスポートした場所に移動し、メモ帳などのテキストエディタを使用して開きます。 証明書を必要な Base-64 エンコードの X.509 (.CER) 形式でエクスポートした場合、次の例のようなテキストが表示されます。 青くハイライトされた部分には、コピーして Azure にアップロードする情報が含まれています。

    CER ファイルをメモ帳で開いたところを示すスクリーンショット。証明書データが強調表示されています。

    ファイルがこの例に似ていない場合は、通常、Base-64 エンコードの X.509 (.CER) 形式を使用してエクスポートしなかったことを意味します。 また、メモ帳以外のテキスト エディターを使用している場合、一部のエディターではバックグラウンドで意図しない書式設定が行われる可能性があることに注意してください。 これにより、この証明書から Azure にテキストをアップロードすると問題が発生する可能性があります。

エクスポートした .cer ファイルは Azure にアップロードする必要があります。 手順については、ポイント対サイト接続の構成に関するページをご覧ください。 信頼されたルート証明書を追加するには、記事のこのセクションをご覧ください。

自己署名証明書と証明書を保存するための秘密キーのエクスポート (省略可能)

自己署名ルート証明書をエクスポートし、安全に保管することもできます。 後から別のコンピューターにインストールして、さらに多くのクライアント証明書を生成したり、別の .cer ファイルをエクスポートしたりできます。 自己署名ルート証明書を .pfx としてエクスポートするには、ルート証明書を選択し、「クライアント証明書をエクスポートする」と同じ手順を実行します。

クライアント証明書の作成とインストール

自己署名証明書をクライアント コンピューターに直接インストールすることはしません。 自己署名証明書からクライアント証明書を生成し、 生成したクライアント証明書をエクスポートして、クライアント コンピューターにインストールします。 これらの手順は、デプロイ モデル固有のものではありません。 リソース マネージャーとクラシックの両方で有効です。

クライアント証明書の生成

ポイント対サイトで VNet に接続するすべてのクライアント コンピューターには、クライアント証明書がインストールされている必要があります。 自己署名ルート証明書からクライアント証明書を生成し、そのクライアント証明書をエクスポートしてインストールします。 クライアント証明書がインストールされていない場合は、認証が失敗します。

次の手順では、自己署名ルート証明書からクライアント証明書を生成する方法を示しています。 同じルート証明書から複数のクライアント証明書を生成できます。 次の手順を使用してクライアント証明書を生成すると、証明書の生成に使用したコンピューターにクライアント証明書が自動的にインストールされます。 クライアント証明書を別のクライアント コンピューターにインストールする場合は、その証明書をエクスポートできます。

  1. 自己署名証明書の作成に使用した同じコンピューターで、管理者としてコマンド プロンプトを開きます。

  2. クライアント証明書を生成するには、サンプルを変更して実行します。

    • "P2SRootCert" を、クライアント証明書を生成している自己署名ルートの名前に変更します。 必ずルート証明書の名前を使用してください。これは、自己署名ルートの作成時に指定した 'CN=' の値です。
    • P2SChildCert を、生成するクライアント証明書の名前に変更します。

    下の例を変更せずに実行すると、ルート証明書 P2SRootCert から生成された個人用証明書ストアに P2SChildcert という名前のクライアント証明書が作成されます。

    makecert.exe -n "CN=P2SChildCert" -pe -sky exchange -m 96 -ss My -in "P2SRootCert" -is my -a sha256
    

クライアント証明書のエクスポート

クライアント証明書を生成すると、このクライアント証明書は、生成に使用したコンピューターに自動的にインストールされます。 クライアント証明書を別のクライアント コンピューターにインストールする場合は、まずクライアント証明書をエクスポートする必要があります。

  1. クライアント証明書をエクスポートするには、 [ユーザー証明書の管理] を開きます。 生成したクライアント証明書は、既定では "Certificates - Current User\Personal\Certificates" にあります。 エクスポートするクライアント証明書を右クリックして、 [すべてのタスク][エクスポート] の順にクリックし、証明書のエクスポート ウィザードを開きます。

    証明書ウィンドウを示すスクリーンショット。[すべてのタスク] と [エクスポート] が選択されています。

  2. 証明書のエクスポート ウィザードで [次へ] をクリックして続行します。

  3. [はい、秘密キーをエクスポートします] を選び、 [次へ] をクリックします。

    [はい、秘密キーをエクスポートします] の選択を示すスクリーンショット。

  4. [エクスポート ファイルの形式] ページでは、既定値をそのまま使用します。 [証明のパスにある証明書を可能であればすべて含む] がオンになっていることを確認します。 この設定はさらに、クライアント認証が成功するために必要なルート証明書情報もエクスポートされます。 これがないと、クライアントは信頼されたルート証明書を持っていないので、クライアント認証は失敗します。 次に、 [次へ] をクリックします。

    [エクスポート ファイルの形式] ページのスクリーンショット。

  5. [セキュリティ] ページでは、秘密キーを保護する必要があります。 パスワードを使用する場合は、この証明書に設定したパスワードを必ず記録しておくか、覚えておいてください。 次に、 [次へ] をクリックします。

    パスワードが入力され、確認されたことを示すスクリーンショット。

  6. [エクスポートするファイル] で、 [参照] をクリックして証明書をエクスポートする場所を選択します。 [ファイル名] に証明書ファイルの名前を指定します。 次に、 [次へ] をクリックします。

  7. [完了] をクリックして、証明書をエクスポートします。

エクスポートしたクライアント認定資格証のインストール

クライアント証明書をインストールするには、クライアント証明書のインストールに関するページを参照してください。

次のステップ

引き続きポイント対サイト構成を使用します。

P2S のトラブルシューティング情報については、Azure ポイント対サイト接続のトラブルシューティングに関するページを参照してください。