ネイティブ Azure 証明書認証を使用した VNet へのポイント対サイト接続の構成:PowerShellConfigure a Point-to-Site connection to a VNet using native Azure certificate authentication: PowerShell

この記事では、Windows、Linux、または Mac OS X が実行されている個々のクライアントを Azure VNet に対して安全に接続する方法を紹介します。This article helps you securely connect individual clients running Windows, Linux, or Mac OS X to an Azure VNet. ポイント対サイト VPN 接続は、自宅や会議室でのテレワークなど、リモートの場所から VNet に接続する場合に便利です。Point-to-Site VPN connections are useful when you want to connect to your VNet from a remote location, such when you are telecommuting from home or a conference. VNet への接続を必要とするクライアントがごく少ない場合は、サイト対サイト VPN の代わりに P2S を使用することもできます。You can also use P2S instead of a Site-to-Site VPN when you have only a few clients that need to connect to a VNet. ポイント対サイト接続に、VPN デバイスや公開 IP アドレスは必要ありません。Point-to-Site connections do not require a VPN device or a public-facing IP address. P2S により、SSTP (Secure Socket トンネリング プロトコル) または IKEv2 経由の VPN 接続が作成されます。P2S creates the VPN connection over either SSTP (Secure Socket Tunneling Protocol), or IKEv2. ポイント対サイト VPN について詳しくは、「ポイント対サイト VPN について」を参照してください。For more information about Point-to-Site VPN, see About Point-to-Site VPN.

コンピューターを Azure VNet に接続する - ポイント対サイト接続の図

アーキテクチャArchitecture

ポイント対サイトのネイティブ Azure 証明書認証接続には、以下のものが必要となります。これらの要素をこの演習で構成していきます。Point-to-Site native Azure certificate authentication connections use the following items, which you configure in this exercise:

  • RouteBased VPN ゲートウェイ。A RouteBased VPN gateway.
  • Azure にアップロードされた、ルート証明書の公開キー (.cer ファイル)。The public key (.cer file) for a root certificate, which is uploaded to Azure. 証明書をアップロードすると、その証明書は信頼された証明書と見なされ、認証に使用されます。Once the certificate is uploaded, it is considered a trusted certificate and is used for authentication.
  • ルート証明書から生成されたクライアント証明書。A client certificate that is generated from the root certificate. VNet に接続する予定の各クライアント コンピューターにインストールされるクライアント証明書です。The client certificate installed on each client computer that will connect to the VNet. この証明書はクライアントの認証に使用されます。This certificate is used for client authentication.
  • VPN クライアント構成。A VPN client configuration. VPN クライアント構成ファイルには、クライアントが VNet に接続するために必要な情報が含まれています。The VPN client configuration files contain the necessary information for the client to connect to the VNet. このファイルを使用すると、オペレーティング システムにネイティブな既存の VPN クライアントが構成されます。The files configure the existing VPN client that is native to the operating system. 接続する各クライアントは、構成ファイルの設定を使って構成する必要があります。Each client that connects must be configured using the settings in the configuration files.

開始する前にBefore you begin

注意

この記事は、新しい Azure PowerShell Az モジュールを使用するために更新されました。This article has been updated to use the new Azure PowerShell Az module. AzureRM モジュールはまだ使用でき、少なくとも 2020 年 12 月までは引き続きバグ修正が行われます。You can still use the AzureRM module, which will continue to receive bug fixes until at least December 2020. Az モジュールと AzureRM の互換性の詳細については、「Introducing the new Azure PowerShell Az module (新しい Azure PowerShell Az モジュールの概要)」を参照してください。To learn more about the new Az module and AzureRM compatibility, see Introducing the new Azure PowerShell Az module. Az モジュールのインストール手順については、Azure PowerShell のインストールを参照してください。For Az module installation instructions, see Install Azure PowerShell.

Azure サブスクリプションを持っていることを確認します。Verify that you have an Azure subscription. Azure サブスクリプションをまだお持ちでない場合は、MSDN サブスクライバーの特典を有効にするか、無料アカウントにサインアップしてください。If you don't already have an Azure subscription, you can activate your MSDN subscriber benefits or sign up for a free account.

この記事では、PowerShell コマンドレットを使用します。This article uses PowerShell cmdlets. コマンドレットを実行するには、Azure でホストされ、ブラウザーを介して使用される対話型のシェル環境である Azure Cloud Shell を使用できます。To run the cmdlets, you can use Azure Cloud Shell, an interactive shell environment hosted in Azure and used through the browser. Azure Cloud Shell には、Azure PowerShell コマンドレットが事前にインストールされています。Azure Cloud Shell comes with the Azure PowerShell cmdlets pre-installed.

この記事に含まれるコードを Azure Cloud Shell で実行するには、Cloud Shell セッションを開き、コード ブロック上の [コピー] ボタンを使ってコードをコピーし、Ctrl + Shift + V キー (Windows と Linux) または command + Shift + V キー (macOS) を押して Cloud Shell セッションに貼り付けます。To run any code contained in this article on Azure Cloud Shell, open a Cloud Shell session, use the Copy button on a code block to copy the code, and paste it into the Cloud Shell session with Ctrl+Shift+V on Windows and Linux, or Cmd+Shift+V on macOS. テキストを貼り付けても自動的には実行されません。コードを実行するには、Enter キーを押します。Pasted text is not automatically executed, so press Enter to run code.

Azure Cloud Shell は次の方法で起動できます。You can launch Azure Cloud Shell with:

コード ブロックの右上隅にある [使ってみる] を選択します。Select Try It in the upper-right corner of a code block. テキストが自動的に Cloud Shell にコピーされるわけでは__ありません__。This doesn't automatically copy text to Cloud Shell. Azure Cloud Shell の [使ってみる] の例
ブラウザーで shell.azure.com を開きます。Open shell.azure.com in your browser. Azure Cloud Shell の起動ボタンLaunch Azure Cloud Shell button
Azure Portal の右上隅にあるメニューの [Cloud Shell] ボタンを選択します。Select the Cloud Shell button on the menu in the upper-right corner of the Azure portal. Azure Portal の [Cloud Shell] ボタン

ローカルでの PowerShell の実行Running PowerShell locally

Azure PowerShell コマンドレットは、ローカルのコンピューターにインストールして実行することもできます。You can also install and run the Azure PowerShell cmdlets locally on your computer. PowerShell コマンドレットは、頻繁に更新されます。PowerShell cmdlets are updated frequently. 最新バージョンを実行していないと、手順で指定されている値は失敗する場合があります。If you are not running the latest version, the values specified in the instructions may fail. コンピューターにインストールされている Azure PowerShell のバージョンを確認するには、Get-Module -ListAvailable Az コマンドレットを使用します。To find the versions of Azure PowerShell installed on your computer, use the Get-Module -ListAvailable Az cmdlet. インストールまたは更新するには、「Install the Azure PowerShell module (Azure PowerShell モジュールのインストール)」を参照してください。To install or update, see Install the Azure PowerShell module.

この記事のほとんどの手順では、Cloud Shell を使用できます。Most of the steps in this article can use Cloud Shell. ただし、ルート証明書の公開キーをアップロードするには、ローカル環境の PowerShell または Azure portal を使用する必要があります。However, to upload the root certificate public key, you must either use PowerShell locally, or the Azure portal.

値の例Example values

値の例を使用して、テスト環境を作成できます。また、この値を参考にしながら、この記事の例を確認していくこともできます。You can use the example values to create a test environment, or refer to these values to better understand the examples in this article. この記事のセクション 1 で変数を設定します。The variables are set in section 1 of the article. 手順をチュートリアルとして利用して値を変更せずに使用することも、実際の環境に合わせて値を変更することもできます。You can either use the steps as a walk-through and use the values without changing them, or change them to reflect your environment.

  • 名前:VNet1Name: VNet1
  • アドレス空間:192.168.0.0/16 および 10.254.0.0/16Address space: 192.168.0.0/16 and 10.254.0.0/16
    この例では、この構成が複数のアドレス空間で機能することを示すために、複数のアドレス空間を使用します。This example uses more than one address space to illustrate that this configuration works with multiple address spaces. ただし、この構成で複数のアドレス空間は必須ではありません。However, multiple address spaces are not required for this configuration.
  • サブネット名:FrontEndSubnet name: FrontEnd
    • サブネットのアドレス範囲:192.168.1.0/24Subnet address range: 192.168.1.0/24
  • サブネット名:BackEndSubnet name: BackEnd
    • サブネットのアドレス範囲:10.254.1.0/24Subnet address range: 10.254.1.0/24
  • サブネット名:GatewaySubnetSubnet name: GatewaySubnet
    VPN ゲートウェイが機能するには、サブネット名 GatewaySubnet が必須となります。The Subnet name GatewaySubnet is mandatory for the VPN gateway to work.
    • GatewaySubnet のアドレス範囲:192.168.200.0/24GatewaySubnet address range: 192.168.200.0/24
  • VPN クライアント アドレス プール:172.16.201.0/24VPN client address pool: 172.16.201.0/24
    このポイント対サイト接続を利用して VNet に接続する VPN クライアントは、この VPN クライアント アドレス プールから IP アドレスを受け取ります。VPN clients that connect to the VNet using this Point-to-Site connection receive an IP address from the VPN client address pool.
  • サブスクリプション: サブスクリプションが複数ある場合は、適切なサブスクリプションを使用していることを確認します。Subscription: If you have more than one subscription, verify that you are using the correct one.
  • リソース グループ:TestRGResource Group: TestRG
  • 場所:米国東部Location: East US
  • DNS サーバー: 名前解決に利用する DNS サーバーの IP アドレス。DNS Server: IP address of the DNS server that you want to use for name resolution. (省略可能)(optional)
  • GW 名:Vnet1GWGW Name: Vnet1GW
  • パブリック IP 名:VNet1GWPIPPublic IP name: VNet1GWPIP
  • VPN の種類:RouteBasedVpnType: RouteBased

1.サインインと変数の設定1. Sign in and set variables

このセクションでは、サインインのほか、この構成で使用される値の宣言を行います。In this section, you sign in and declare the values used for this configuration. サンプル スクリプトでは、宣言済みの値が使用されます。The declared values are used in the sample scripts. 実際の環境に合わせて値を変更してください。Change the values to reflect your own environment. 宣言済みの値を使用し、以下の手順を練習として使用することもできます。Or, you can use the declared values and go through the steps as an exercise.

サインインSign in

昇格された特権で PowerShell コンソールを開きます。Open your PowerShell console with elevated privileges.

Azure PowerShell をローカルで実行している場合は、お使いの Azure アカウントに接続してください。If you are running Azure PowerShell locally, connect to your Azure account. Connect-AzAccount コマンドレットでは、資格情報の入力を求められます。The Connect-AzAccount cmdlet prompts you for credentials. 認証後にアカウント設定がダウンロードされ、Azure PowerShell で使用できるようになります。After authenticating, it downloads your account settings so that they are available to Azure PowerShell. PowerShell をローカルで実行しているのではなく、ブラウザーで Azure Cloud Shell の "試してみる" を使用している場合は、この最初の手順はスキップしてください。If you are not running PowerShell locally and are instead using the Azure Cloud Shell 'Try it' in the browser, skip this first step. お使いの Azure アカウントに自動的に接続されます。You will connect to your Azure account automatically.

Connect-AzAccount

複数のサブスクリプションがある場合は、Azure サブスクリプションの一覧を取得します。If you have more than one subscription, get a list of your Azure subscriptions.

Get-AzSubscription

使用するサブスクリプションを指定します。Specify the subscription that you want to use.

Select-AzSubscription -SubscriptionName "Name of subscription"

変数の宣言Declare variables

使用する変数を宣言します。Declare the variables that you want to use. 次のサンプルを使用し、必要に応じて独自の値で置き換えます。Use the following sample, substituting the values for your own when necessary. 演習中の任意の時点で PowerShell/Cloud Shell セッションを閉じた場合は、値をもう一度コピーして貼り付けるだけで、変数を再宣言します。If you close your PowerShell/Cloud Shell session at any point during the exercise, just copy and paste the values again to re-declare the variables.

$VNetName  = "VNet1"
$FESubName = "FrontEnd"
$BESubName = "Backend"
$GWSubName = "GatewaySubnet"
$VNetPrefix1 = "192.168.0.0/16"
$VNetPrefix2 = "10.254.0.0/16"
$FESubPrefix = "192.168.1.0/24"
$BESubPrefix = "10.254.1.0/24"
$GWSubPrefix = "192.168.200.0/26"
$VPNClientAddressPool = "172.16.201.0/24"
$RG = "TestRG"
$Location = "East US"
$GWName = "VNet1GW"
$GWIPName = "VNet1GWPIP"
$GWIPconfName = "gwipconf"

2.VNet の構成2. Configure a VNet

  1. リソース グループを作成します。Create a resource group.

    New-AzResourceGroup -Name $RG -Location $Location
    
  2. 仮想ネットワークのサブネット構成を作成し、FrontEndBackEndGatewaySubnet いう名前を付けます。Create the subnet configurations for the virtual network, naming them FrontEnd, BackEnd, and GatewaySubnet. これらのプレフィックスは、宣言した VNet アドレス空間に含まれている必要があります。These prefixes must be part of the VNet address space that you declared.

    $fesub = New-AzVirtualNetworkSubnetConfig -Name $FESubName -AddressPrefix $FESubPrefix
    $besub = New-AzVirtualNetworkSubnetConfig -Name $BESubName -AddressPrefix $BESubPrefix
    $gwsub = New-AzVirtualNetworkSubnetConfig -Name $GWSubName -AddressPrefix $GWSubPrefix
    
  3. 仮想ネットワークを作成します。Create the virtual network.

    この例では、-DnsServer サーバー パラメーターはオプションです。In this example, the -DnsServer server parameter is optional. 値を指定しても新しい DNS サーバーは作成されません。Specifying a value does not create a new DNS server. 指定する DNS サーバーの IP アドレスは、VNet から接続するリソースの名前を解決できる DNS サーバーの IP アドレスである必要があります。The DNS server IP address that you specify should be a DNS server that can resolve the names for the resources you are connecting to from your VNet. この例ではプライベート IP アドレスを使用していますが、これはおそらく実際の DNS サーバーの IP アドレスと一致しません。This example uses a private IP address, but it is likely that this is not the IP address of your DNS server. 実際には独自の値を使用してください。Be sure to use your own values. 指定された値は、P2S 接続や VPN のクライアントではなく、VNet にデプロイするリソースが使用します。The value you specify is used by the resources that you deploy to the VNet, not by the P2S connection or the VPN client.

    New-AzVirtualNetwork -Name $VNetName -ResourceGroupName $RG -Location $Location -AddressPrefix $VNetPrefix1,$VNetPrefix2 -Subnet $fesub, $besub, $gwsub -DnsServer 10.2.1.3
    
  4. 作成した仮想ネットワークの変数を指定します。Specify the variables for the virtual network you created.

    $vnet = Get-AzVirtualNetwork -Name $VNetName -ResourceGroupName $RG
    $subnet = Get-AzVirtualNetworkSubnetConfig -Name "GatewaySubnet" -VirtualNetwork $vnet
    
  5. VPN ゲートウェイには、パブリック IP アドレスが必要です。A VPN gateway must have a Public IP address. これにはまず IP アドレスのリソースを要求したうえで、仮想ネットワーク ゲートウェイの作成時にそのリソースを参照する必要があります。You first request the IP address resource, and then refer to it when creating your virtual network gateway. IP アドレスは、VPN ゲートウェイの作成時にリソースに対して動的に割り当てられます。The IP address is dynamically assigned to the resource when the VPN gateway is created. VPN Gateway では現在、パブリック IP アドレスの "動的" 割り当てのみサポートしています。VPN Gateway currently only supports Dynamic Public IP address allocation. 静的パブリック IP アドレスの割り当てを要求することはできません。You cannot request a Static Public IP address assignment. もっとも、VPN ゲートウェイに割り当てられた IP アドレスが後から変わることは基本的にありません。However, it doesn't mean that the IP address changes after it has been assigned to your VPN gateway. パブリック IP アドレスが変わるのは、ゲートウェイが削除され、再度作成されたときのみです。The only time the Public IP address changes is when the gateway is deleted and re-created. VPN ゲートウェイのサイズ変更、リセット、その他の内部メンテナンス/アップグレードでは、IP アドレスは変わりません。It doesn't change across resizing, resetting, or other internal maintenance/upgrades of your VPN gateway.

    動的に割り当てられたパブリック IP アドレスを要求します。Request a dynamically assigned public IP address.

    $pip = New-AzPublicIpAddress -Name $GWIPName -ResourceGroupName $RG -Location $Location -AllocationMethod Dynamic
    $ipconf = New-AzVirtualNetworkGatewayIpConfig -Name $GWIPconfName -Subnet $subnet -PublicIpAddress $pip
    

3.VPN ゲートウェイを作成する3. Create the VPN gateway

VNet の仮想ネットワーク ゲートウェイを構成、作成します。Configure and create the virtual network gateway for your VNet.

  • -GatewayType は Vpn、-VpnType は RouteBased にする必要があります。The -GatewayType must be Vpn and the -VpnType must be RouteBased.
  • -VpnClientProtocol は、有効にするトンネルの種類を指定する際に使用します。The -VpnClientProtocol is used to specify the types of tunnels that you would like to enable. トンネルのオプションには、OpenVPN、SSTPIKEv2 があります。The tunnel options are OpenVPN, SSTP and IKEv2. いずれか 1 つを有効にすることも、サポートされるすべての組み合わせを有効にすることもできます。You can choose to enable one of them or any supported combination. 複数の種類を有効にする場合は、名前をコンマで区切って指定します。If you want to enable multiple types, then specify the names separated by a comma. OpenVPN と SSTP は一緒に有効にすることができません。OpenVPN and SSTP cannot be enabled together. Android と Linux の strongSwan クライアントおよび iOS と OSX のネイティブ IKEv2 VPN クライアントでは、接続に IKEv2 トンネルのみを使用します。The strongSwan client on Android and Linux and the native IKEv2 VPN client on iOS and OSX will use only the IKEv2 tunnel to connect. Windows クライアントでは最初に IKEv2 を試し、接続できなかった場合に SSTP を使用します。Windows clients try IKEv2 first and if that doesn’t connect, they fall back to SSTP. OpenVPN クライアントを使用して、OpenVPN トンネルの種類に接続することができます。You can use the OpenVPN client to connect to OpenVPN tunnel type.
  • 仮想ネットワーク ゲートウェイ 'Basic' SKU では、IKEv2、OpenVPN、RADIUS 認証はサポートされません。The virtual network gateway 'Basic' SKU does not support IKEv2, OpenVPN or RADIUS authentication. Mac クライアントを仮想ネットワークに接続する予定がある場合は、Basic SKU を使用しないでください。If you are planning on having Mac clients connect to your virtual network, do not use the Basic SKU.
  • 選択するゲートウェイ SKU によっては、VPN ゲートウェイで処理が完了するまでに最大で 45 分かかる場合があります。A VPN gateway can take up to 45 minutes to complete, depending on the gateway sku you select. この例では、IKEv2 を使用します。This example uses IKEv2.
New-AzVirtualNetworkGateway -Name $GWName -ResourceGroupName $RG `
-Location $Location -IpConfigurations $ipconf -GatewayType Vpn `
-VpnType RouteBased -EnableBgp $false -GatewaySku VpnGw1 -VpnClientProtocol "IKEv2"

4.VPN クライアント アドレス プールの追加4. Add the VPN client address pool

VPN ゲートウェイの作成が完了したら、VPN クライアント アドレス プールを追加できます。After the VPN gateway finishes creating, you can add the VPN client address pool. VPN クライアント アドレス プールは、VPN クライアントが接続時に受け取る IP アドレスの範囲です。The VPN client address pool is the range from which the VPN clients receive an IP address when connecting. 接続元であるオンプレミスの場所、または接続先とする VNet と重複しないプライベート IP アドレス範囲を使用してください。Use a private IP address range that does not overlap with the on-premises location that you connect from, or with the VNet that you want to connect to. この例での VPN クライアント アドレス プールは、手順 1. で変数として宣言されています。In this example, the VPN client address pool is declared as a variable in Step 1.

$Gateway = Get-AzVirtualNetworkGateway -ResourceGroupName $RG -Name $GWName
Set-AzVirtualNetworkGateway -VirtualNetworkGateway $Gateway -VpnClientAddressPool $VPNClientAddressPool

5.証明書の生成5. Generate certificates

証明書は、ポイント対サイト VPN の VPN クライアントを認証するために、Azure によって使用されます。Certificates are used by Azure to authenticate VPN clients for Point-to-Site VPNs. そのため、ルート証明書の公開キー情報を Azure にアップロードします。You upload the public key information of the root certificate to Azure. その後、その公開キーは "信頼された" と見なされます。The public key is then considered 'trusted'. 信頼されたルート証明書からクライアント証明書を生成し、それを各クライアント コンピューターの [証明書 - 現在のユーザー] の [個人] 証明書ストアにインストールする必要があります。Client certificates must be generated from the trusted root certificate, and then installed on each client computer in the Certificates-Current User/Personal certificate store. この証明書は、クライアントで VNet への接続を開始するときに、そのクライアントを認証するために使用されます。The certificate is used to authenticate the client when it initiates a connection to the VNet.

自己署名証明書を使用する場合は、特定のパラメーターを使って証明書を作成する必要があります。If you use self-signed certificates, they must be created using specific parameters. 自己署名証明書は、PowerShell と Windows 10 を使った手順で作成できるほか、Windows 10 をご利用でない場合は、MakeCert を使って作成することができます。You can create a self-signed certificate using the instructions for PowerShell and Windows 10, or, if you don't have Windows 10, you can use MakeCert. 自己署名ルート証明書やクライアント証明書を生成するときは、これらの説明に記載されている手順に従うことが大切です。It's important that you follow the steps in the instructions when generating self-signed root certificates and client certificates. そうしないと、生成される証明書が P2S 接続に適合せず、接続エラーが発生します。Otherwise, the certificates you generate will not be compatible with P2S connections and you receive a connection error.

1.ルート証明書の .cer ファイルの取得1. Obtain the .cer file for the root certificate

エンタープライズ ソリューションを使って生成されたルート証明書を使用する (推奨) か、または自己署名証明書を生成します。Use either a root certificate that was generated with an enterprise solution (recommended), or generate a self-signed certificate. ルート証明書の作成後、秘密キーではなく公開証明書データを、Base64 でエンコードされた X.509 .cer ファイルとしてエクスポートします。After you create the root certificate, export the public certificate data (not the private key) as a Base64 encoded X.509 .cer file. その後、公開証明書データを Azure サーバーにアップロードします。Then, upload the public certificate data to the Azure server.

  • エンタープライズ証明書: エンタープライズ ソリューションを使用している場合は、既存の証明書チェーンを使うことができます。Enterprise certificate: If you're using an enterprise solution, you can use your existing certificate chain. 使用するルート証明書の .cer ファイルを取得します。Acquire the .cer file for the root certificate that you want to use.

  • 自己署名ルート証明書: エンタープライズ証明書ソリューションを使用していない場合は、自己署名ルート証明書を作成します。Self-signed root certificate: If you aren't using an enterprise certificate solution, create a self-signed root certificate. そうしないと、作成する証明書と P2S 接続との互換性がなくなり、クライアントが接続しようとすると接続エラー メッセージを受信するようになります。Otherwise, the certificates you create won't be compatible with your P2S connections and clients will receive a connection error when they try to connect. Azure PowerShell、MakeCert、または OpenSSL を使用できます。You can use Azure PowerShell, MakeCert, or OpenSSL. 以下の記事の手順では、互換性のある自己署名ルート証明書を生成する方法が説明されています。The steps in the following articles describe how to generate a compatible self-signed root certificate:

    • Windows 10 PowerShell の手順:これらの手順で証明書を生成するには、Windows 10 および PowerShell が必要です。Windows 10 PowerShell instructions: These instructions require Windows 10 and PowerShell to generate certificates. ルート証明書から生成されるクライアント証明書は、サポートされている任意の P2S クライアントにインストールすることができます。Client certificates that are generated from the root certificate can be installed on any supported P2S client.
    • MakeCert の手順: 証明書を生成するために使用する Windows 10 コンピューターにアクセスできない場合は、MakeCert を使用します。MakeCert instructions: Use MakeCert if you don't have access to a Windows 10 computer to use to generate certificates. MakeCert は非推奨になりましたが、まだ証明書の生成に使用することができます。Although MakeCert is deprecated, you can still use it to generate certificates. ルート証明書から生成されるクライアント証明書は、サポートされている任意の P2S クライアントにインストールすることができます。Client certificates that you generate from the root certificate can be installed on any supported P2S client.
    • Linux の手順Linux instructions

2.クライアント証明書を生成2. Generate a client certificate

お客様がポイント対サイト接続を使用して VNet に接続する各クライアント コンピューターには、クライアント証明書がインストールされていなければなりません。Each client computer that you connect to a VNet with a Point-to-Site connection must have a client certificate installed. ルート証明書からそれを生成し、各クライアント コンピューターにインストールします。You generate it from the root certificate and install it on each client computer. 有効なクライアント証明書をインストールしないと、クライアントが VNet への接続を試行したときに認証が失敗します。If you don't install a valid client certificate, authentication will fail when the client tries to connect to the VNet.

クライアントごとに一意の証明書を生成することも、複数のクライアントに同じ証明書を使用することもできます。You can either generate a unique certificate for each client, or you can use the same certificate for multiple clients. 一意のクライアント証明書を生成する利点は、1 つの証明書を失効させることができる点です。The advantage to generating unique client certificates is the ability to revoke a single certificate. そうでなければ、複数のクライアントで同じクライアント証明書が認証に使用されていて、お客様がそれを失効させる場合に、その証明書が使用されているすべてのクライアントに対して新しい証明書を生成してインストールする必要があります。Otherwise, if multiple clients use the same client certificate to authenticate and you revoke it, you'll need to generate and install new certificates for every client that uses that certificate.

クライアント証明書は、次の方法を使用して生成できます。You can generate client certificates by using the following methods:

  • エンタープライズ証明書:Enterprise certificate:

    • エンタープライズ証明書ソリューションを使用している場合は、共通名の値の形式 name@yourdomain.com を使用してクライアント証明書を生成します。If you're using an enterprise certificate solution, generate a client certificate with the common name value format name@yourdomain.com. domain name\username 形式の代わりに、この形式を使用します。Use this format instead of the domain name\username format.
    • クライアント証明書が、ユーザー一覧の最初の項目が "クライアント認証" であるユーザー証明書テンプレートに基づいていることを確認します。Make sure the client certificate is based on a user certificate template that has Client Authentication listed as the first item in the user list. 証明書を確認するには、それをダブルクリックし、 [詳細] タブの [拡張キー使用法] を表示します。Check the certificate by double-clicking it and viewing Enhanced Key Usage in the Details tab.
  • 自己署名ルート証明書: お客様が作成するクライアント証明書が P2S 接続との互換性を備えるよう、P2S 証明書に関する以下のいずれかの記事の手順に従ってください。Self-signed root certificate: Follow the steps in one of the following P2S certificate articles so that the client certificates you create will be compatible with your P2S connections. これらの記事の手順では、互換性のあるクライアント証明書が生成されます。The steps in these articles generate a compatible client certificate:

    • Windows 10 PowerShell の手順: これらの手順で証明書を生成するには、Windows 10 および PowerShell が必要です。Windows 10 PowerShell instructions: These instructions require Windows 10 and PowerShell to generate certificates. 生成される証明書は、サポートされている任意の P2S クライアントにインストールできます。The generated certificates can be installed on any supported P2S client.
    • MakeCert の手順: 証明書を生成する Windows 10 コンピューターにアクセスできない場合は、MakeCert を使用します。MakeCert instructions: Use MakeCert if you don't have access to a Windows 10 computer for generating certificates. MakeCert は非推奨になりましたが、まだ証明書の生成に使用することができます。Although MakeCert is deprecated, you can still use it to generate certificates. 生成される証明書は、サポートされている任意の P2S クライアントにインストールできます。You can install the generated certificates on any supported P2S client.
    • Linux の手順Linux instructions

    自己署名ルート証明書からクライアント証明書を生成した場合、お客様が生成に使用したコンピューターにそれが自動的にインストールされます。When you generate a client certificate from a self-signed root certificate, it's automatically installed on the computer that you used to generate it. クライアント証明書を別のクライアント コンピューターにインストールしたい場合は、それを .pfx ファイルとして、証明書チェーン全体と共にエクスポートします。If you want to install a client certificate on another client computer, export it as a .pfx file, along with the entire certificate chain. そうすることで、クライアントの認証に必要なルート証明書情報が含まれている .pfx ファイルが作成されます。Doing so will create a .pfx file that contains the root certificate information required for the client to authenticate.

証明書をエクスポートするにはTo export the certificate

証明書をエクスポートする手順については、「PowerShell を使用したポイント対サイトの証明書の生成とエクスポート」を参照してください。For steps to export a certificate, see Generate and export certificates for Point-to-Site using PowerShell.

6.ルート証明書の公開キー情報のアップロード6. Upload the root certificate public key information

VPN ゲートウェイの作成が完了していることを確認します。Verify that your VPN gateway has finished creating. この操作が完了した後は、信頼されたルート証明書の (公開キー情報を含む) .cer ファイルを Azure にアップロードできます。Once it has completed, you can upload the .cer file (which contains the public key information) for a trusted root certificate to Azure. .cer ファイルがアップロードされると、Azure ではそれを使用し、信頼されたルート証明書から生成されたクライアント証明書がインストールされているクライアントを認証できます。Once a.cer file is uploaded, Azure can use it to authenticate clients that have installed a client certificate generated from the trusted root certificate. その後は必要に応じて、最大で合計 20 個になるまで信頼されたルート証明書を追加でアップロードできます。You can upload additional trusted root certificate files - up to a total of 20 - later, if needed.

Azure Cloud Shell を使用してこの情報をアップロードすることはできません。You can't upload this information using Azure Cloud Shell. ローカル環境のコンピューターで PowerShell を使用するか、Azure portal の手順を使用できます。You can either use PowerShell locally on your computer, the Azure portal steps.

  1. 証明書名のための変数を、独自の値に置き換えて宣言します。Declare the variable for your certificate name, replacing the value with your own.

    $P2SRootCertName = "P2SRootCert.cer"
    
  2. ファイルのパスを独自のパスに置換し、次のコマンドレットを実行します。Replace the file path with your own, and then run the cmdlets.

    $filePathForCert = "C:\cert\P2SRootCert.cer"
    $cert = new-object System.Security.Cryptography.X509Certificates.X509Certificate2($filePathForCert)
    $CertBase64 = [system.convert]::ToBase64String($cert.RawData)
    $p2srootcert = New-AzVpnClientRootCertificate -Name $P2SRootCertName -PublicCertData $CertBase64
    
  3. 公開キー情報を Azure にアップロードします。Upload the public key information to Azure. 証明書情報をアップロードすると、Azure ではそれが信頼されたルート証明書と見なされます。Once the certificate information is uploaded, Azure considers it to be a trusted root certificate.

    Add-AzVpnClientRootCertificate -VpnClientRootCertificateName $P2SRootCertName -VirtualNetworkGatewayname "VNet1GW" -ResourceGroupName "TestRG" -PublicCertData $CertBase64
    

7.エクスポートしたクライアント証明書のインストール7. Install an exported client certificate

クライアント証明書の生成に使用したクライアント コンピューター以外から P2S 接続を作成する場合は、クライアント証明書をインストールする必要があります。If you want to create a P2S connection from a client computer other than the one you used to generate the client certificates, you need to install a client certificate. クライアント証明書をインストールするときに、クライアント証明書のエクスポート時に作成されたパスワードが必要になります。When installing a client certificate, you need the password that was created when the client certificate was exported.

クライアント証明書が証明書チェーン全体と一緒に .pfx としてエクスポートされている (既定値) ことを確認します。Make sure the client certificate was exported as a .pfx along with the entire certificate chain (which is the default). そうでないと、ルート証明書情報がクライアント コンピューターに存在せず、クライアントは正しく認証されません。Otherwise, the root certificate information isn't present on the client computer and the client won't be able to authenticate properly.

インストールの手順については、クライアント証明書のインストールに関するページを参照してください。For install steps, see Install a client certificate.

8.ネイティブ VPN クライアントの構成8. Configure the native VPN client

VPN クライアント構成ファイルには、P2S 接続を使って VNet に接続できるようにデバイスを構成するための設定が含まれています。The VPN client configuration files contain settings to configure devices to connect to a VNet over a P2S connection. VPN クライアント構成ファイルの生成とインストールに関する手順については、「ネイティブ Azure 証明書認証の P2S 構成のための VPN クライアント構成ファイルを作成およびインストールする」を参照してください。For instructions to generate and install VPN client configuration files, see Create and install VPN client configuration files for native Azure certificate authentication P2S configurations.

9.Azure への接続9. Connect to Azure

Windows VPN クライアントから接続するにはTo connect from a Windows VPN client

注意

接続元の Windows クライアント コンピューターの管理者権限が必要です。You must have Administrator rights on the Windows client computer from which you are connecting.

  1. VNet に接続するには、クライアント コンピューターで [VPN 接続] に移動し、作成した VPN 接続を見つけます。To connect to your VNet, on the client computer, navigate to VPN connections and locate the VPN connection that you created. 仮想ネットワークと同じ名前が付いています。It is named the same name as your virtual network. [接続] をクリックします。Click Connect. 証明書を使用することを示すポップアップ メッセージが表示される場合があります。A pop-up message may appear that refers to using the certificate. [続行] をクリックして、昇格された特権を使用します。Click Continue to use elevated privileges.

  2. 接続の状態ページで、 [接続] をクリックして接続を開始します。On the Connection status page, click Connect to start the connection. [証明書の選択] 画面が表示された場合は、表示されているクライアント証明書が接続に使用する証明書であることを確認します。If you see a Select Certificate screen, verify that the client certificate showing is the one that you want to use to connect. そうでない場合は、ドロップダウン矢印を使用して適切な証明書を選択し、 [OK] をクリックします。If it is not, use the drop-down arrow to select the correct certificate, and then click OK.

    Azure への VPN クライアントの接続

  3. 接続が確立されました。Your connection is established.

    確立された接続

Windows クライアントの P2S 接続のトラブルシューティングTroubleshooting Windows client P2S connections

接続に問題がある場合は、次の点を確認してください。If you have trouble connecting, check the following items:

  • 証明書のエクスポート ウィザードを使用してクライアント証明書をエクスポートした場合は、 [証明のパスにある証明書を可能であればすべて含む] を選択してクライアント証明書を .pfx ファイルとしてエクスポートしたことを確認してください。If you exported a client certificate with Certificate Export Wizard, make sure that you exported it as a .pfx file and selected Include all certificates in the certification path if possible. この値を使用してクライアント証明書をエクスポートすると、ルート証明書情報もエクスポートされます。When you export it with this value, the root certificate information is also exported. クライアント コンピューターに証明書をインストールした後、.pfx ファイルのルート証明書もインストールされます。After you install the certificate on the client computer, the root certificate in the .pfx file is also installed. ルート証明書がインストールされていることを確認するには、 [ユーザー証明書の管理] を開いて [Trusted Root Certification Authorities\Certificates] を選択します。To verify that the root certificate is installed, open Manage user certificates and select Trusted Root Certification Authorities\Certificates. ルート証明書が一覧にあることを確認します。認証が正しく機能するためには、ルート証明書が必要です。Verify that the root certificate is listed, which must be present for authentication to work.

  • エンタープライズ CA ソリューションによって発行された証明書を使用し、認証できない場合は、クライアント証明書の認証の順序を確認します。If you used a certificate that was issued by an Enterprise CA solution and you can't authenticate, verify the authentication order on the client certificate. 認証の一覧の順序を確認するには、クライアント証明書をダブルクリックし、 [詳細] タブ、 [拡張キー使用法] の順に選択します。Check the authentication list order by double-clicking the client certificate, selecting the Details tab, and then selecting Enhanced Key Usage. 一覧の最初の項目が "クライアント認証" であることを確認します。Make sure Client Authentication is the first item in the list. そうでない場合は、一覧の最初の項目が "クライアント認証" であるユーザー テンプレートに基づいたクライアント証明書を発行します。If it isn't, issue a client certificate based on the user template that has Client Authentication as the first item in the list.

  • P2S のトラブルシューティングの補足情報については、P2S 接続のトラブルシューティングに関するページを参照してください。For additional P2S troubleshooting information, see Troubleshoot P2S connections.

Mac の VPN クライアントから接続するにはTo connect from a Mac VPN client

[ネットワーク] ダイアログ ボックスで使用するクライアント プロファイルを探し、 [接続] をクリックします。From the Network dialog box, locate the client profile that you want to use, then click Connect. 手順の詳細については、Mac (OS X) のインストールに関するセクションを参照してください。Check Install - Mac (OS X) for detailed instructions. 接続に問題がある場合は、仮想ネットワーク ゲートウェイが Basic SKU を使用していないことを確認します。If you are having trouble connecting, verify that the virtual network gateway is not using a Basic SKU. Basic SKU は Mac クライアントではサポートされていません。Basic SKU is not supported for Mac clients.

Mac の接続

接続を確認するにはTo verify your connection

ここで紹介する手順は、Windows クライアントに適用されます。These instructions apply to Windows clients.

  1. VPN 接続がアクティブであることを確認するには、管理者特権でのコマンド プロンプトを開いて、 ipconfig/allを実行します。To verify that your VPN connection is active, open an elevated command prompt, and run ipconfig/all.

  2. 結果を表示します。View the results. 受信した IP アドレスが、構成に指定したポイント対サイト VPN クライアント アドレス プール内のアドレスのいずれかであることに注意してください。Notice that the IP address you received is one of the addresses within the Point-to-Site VPN Client Address Pool that you specified in your configuration. 結果は次の例のようになります。The results are similar to this example:

    PPP adapter VNet1:
       Connection-specific DNS Suffix .:
       Description.....................: VNet1
       Physical Address................:
       DHCP Enabled....................: No
       Autoconfiguration Enabled.......: Yes
       IPv4 Address....................: 172.16.201.3(Preferred)
       Subnet Mask.....................: 255.255.255.255
       Default Gateway.................:
       NetBIOS over Tcpip..............: Enabled
    

仮想マシンに接続するにはTo connect to a virtual machine

ここで紹介する手順は、Windows クライアントに適用されます。These instructions apply to Windows clients.

リモート デスクトップ接続を作成すると、VNet にデプロイされている VM に接続できます。You can connect to a VM that is deployed to your VNet by creating a Remote Desktop Connection to your VM. VM に接続できるかどうかを初めて確認する際に最も良い方法は、その VM のコンピューター名ではなく、プライベート IP アドレスを使って接続してみることです。The best way to initially verify that you can connect to your VM is to connect by using its private IP address, rather than computer name. この方法であれば、名前の解決が適切に構成されているかではなく、VM に接続できるかどうかをテストすることができます。That way, you are testing to see if you can connect, not whether name resolution is configured properly.

  1. プライベート IP アドレスを特定します。Locate the private IP address. VM のプライベート IP アドレスは、Azure Portal で VM のプロパティを表示するか、PowerShell を使うと確認できます。You can find the private IP address of a VM by either looking at the properties for the VM in the Azure portal, or by using PowerShell.

    • Azure Portal を使用する場合: Azure Portal で仮想マシンを探します。Azure portal - Locate your virtual machine in the Azure portal. VM のプロパティを表示すると、View the properties for the VM. プライベート IP アドレスが表示されます。The private IP address is listed.

    • PowerShell を使用する場合: 以下の例に示したコマンドを使用すると、リソース グループに含まれる VM とプライベート IP アドレスの一覧が表示されます。PowerShell - Use the example to view a list of VMs and private IP addresses from your resource groups. このコマンドは、使用前に変更を加える必要はありません。You don't need to modify this example before using it.

      $VMs = Get-AzVM
      $Nics = Get-AzNetworkInterface | Where VirtualMachine -ne $null
      
      foreach($Nic in $Nics)
      {
      $VM = $VMs | Where-Object -Property Id -eq $Nic.VirtualMachine.Id
      $Prv = $Nic.IpConfigurations | Select-Object -ExpandProperty PrivateIpAddress
      $Alloc = $Nic.IpConfigurations | Select-Object -ExpandProperty PrivateIpAllocationMethod
      Write-Output "$($VM.Name): $Prv,$Alloc"
      }
      
  2. ポイント対サイト VPN 接続を使って VNet に接続していることを確認します。Verify that you are connected to your VNet using the Point-to-Site VPN connection.

  3. タスク バーの検索ボックスに「RDP」または「リモート デスクトップ接続」と入力してリモート デスクトップ接続を開き、リモート デスクトップ接続を選択します。Open Remote Desktop Connection by typing "RDP" or "Remote Desktop Connection" in the search box on the taskbar, then select Remote Desktop Connection. このほか、PowerShell で "mstsc" コマンドを使ってリモート デスクトップ接続を開くこともできます。You can also open Remote Desktop Connection using the 'mstsc' command in PowerShell.

  4. リモート デスクトップ接続で、VM のプライベート IP アドレスを入力します。In Remote Desktop Connection, enter the private IP address of the VM. 必要に応じて [オプションの表示] をクリックして追加の設定を済ませたら、接続します。You can click "Show Options" to adjust additional settings, then connect.

VM に対する RDP 接続をトラブルシューティングするにはTo troubleshoot an RDP connection to a VM

VPN 接続を使って仮想マシンに接続する際に問題が発生した場合には、次のことを確認してください。If you are having trouble connecting to a virtual machine over your VPN connection, check the following:

  • VPN 接続が成功したことを確認します。Verify that your VPN connection is successful.
  • VM のプライベート IP アドレスに接続できていることを確認します。Verify that you are connecting to the private IP address for the VM.
  • 接続元のコンピューターのイーサネット アダプターに割り当てられている IPv4 アドレスを "ipconfig" でチェックします。Use 'ipconfig' to check the IPv4 address assigned to the Ethernet adapter on the computer from which you are connecting. その IP アドレスが、接続先の VNet のアドレス範囲内または VPNClientAddressPool のアドレス範囲内にある場合、これを "アドレス空間の重複" といいます。If the IP address is within the address range of the VNet that you are connecting to, or within the address range of your VPNClientAddressPool, this is referred to as an overlapping address space. アドレス空間がこのように重複していると、ネットワーク トラフィックが Azure に到達せずローカル ネットワーク上に留まることになります。When your address space overlaps in this way, the network traffic doesn't reach Azure, it stays on the local network.
  • プライベート IP アドレスを使って VM に接続できるものの、コンピューター名では接続できない場合には、DNS が正しく構成されているかどうかを確認します。If you can connect to the VM using the private IP address, but not the computer name, verify that you have configured DNS properly. VM の名前解決の動作について詳しくは、VM の名前解決に関するページを参照してください。For more information about how name resolution works for VMs, see Name Resolution for VMs.
  • VNet に対して DNS サーバーの IP アドレスが指定された後に VPN クライアント構成パッケージが生成されたことを確認します。Verify that the VPN client configuration package was generated after the DNS server IP addresses were specified for the VNet. DNS サーバーの IP アドレスを更新した場合は、新しい VPN クライアント構成パッケージを生成してインストールしてください。If you updated the DNS server IP addresses, generate and install a new VPN client configuration package.
  • 詳細については、VM に対するリモート デスクトップ接続のトラブルシューティングに関するページを参照してください。For more information about RDP connections, see Troubleshoot Remote Desktop connections to a VM.

ルート証明書を追加または削除するにはTo add or remove a root certificate

信頼されたルート証明書を Azure に追加したり、Azure から削除したりできます。You can add and remove trusted root certificates from Azure. ルート証明書を削除すると、そのルート証明書から生成された証明書を持つクライアントは認証できなくなり、接続できなくなります。When you remove a root certificate, clients that have a certificate generated from the root certificate can't authenticate and won't be able to connect. クライアントの認証と接続を正常に実行できるようにするには、Azure に信頼されている (Azure にアップロードされている) ルート証明書から生成した新しいクライアント証明書をインストールする必要があります。If you want a client to authenticate and connect, you need to install a new client certificate generated from a root certificate that is trusted (uploaded) to Azure.

信頼されたルート証明書を追加するにはTo add a trusted root certificate

Azure には、最大 20 個のルート証明書 .cer ファイルを追加できます。You can add up to 20 root certificate .cer files to Azure. ルート証明書は次の手順で追加できます。The following steps help you add a root certificate:

方法 1Method 1

この方法は、ルート証明書をアップロードする場合に最も効率的な方法です。This method is the most efficient way to upload a root certificate. (Azure Cloud Shell ではなく) お使いのコンピューターに Azure PowerShell コマンドレットがローカルにインストールされている必要があります。It requires Azure PowerShell cmdlets installed locally on your computer (not Azure Cloud Shell).

  1. アップロードする .cer ファイルを準備します。Prepare the .cer file to upload:

    $filePathForCert = "C:\cert\P2SRootCert3.cer"
    $cert = new-object System.Security.Cryptography.X509Certificates.X509Certificate2($filePathForCert)
    $CertBase64_3 = [system.convert]::ToBase64String($cert.RawData)
    $p2srootcert = New-AzVpnClientRootCertificate -Name $P2SRootCertName -PublicCertData $CertBase64_3
    
  2. ファイルをアップロードします。Upload the file. ファイルは一度に 1 つしかアップロードできません。You can only upload one file at a time.

    Add-AzVpnClientRootCertificate -VpnClientRootCertificateName $P2SRootCertName -VirtualNetworkGatewayname "VNet1GW" -ResourceGroupName "TestRG" -PublicCertData $CertBase64_3
    
  3. 証明書ファイルがアップロードされたことを確認するには:To verify that the certificate file uploaded:

    Get-AzVpnClientRootCertificate -ResourceGroupName "TestRG" `
    -VirtualNetworkGatewayName "VNet1GW"
    

方法 2 - Azure portalMethod 2 - Azure portal

この方法では方法 1 より多くの手順が必要になりますが、結果は同じになります。This method has more steps than Method 1, but has the same result. 証明書データを表示する必要がある場合のためにこの方法を紹介しています。It is included in case you need to view the certificate data. (Azure Cloud Shell ではなく) お使いのコンピューターに Azure PowerShell コマンドレットがローカルにインストールされている必要があります。It requires Azure PowerShell cmdlets installed locally on your computer (not Azure Cloud Shell).

  1. Azure に追加する新しいルート証明書を作成して準備します。Create and prepare the new root certificate to add to Azure. Base64 でエンコードされた X.509 (.cer) として公開キーをエクスポートし、テキスト エディターで開きます。Export the public key as a Base-64 encoded X.509 (.CER) and open it with a text editor. 次の例で示すように値をコピーします。Copy the values, as shown in the following example:

    証明書

    注意

    証明書データをコピーするときはに、必ず、テキストを復帰や改行のない 1 つの連続した行としてコピーしてください。When copying the certificate data, make sure that you copy the text as one continuous line without carriage returns or line feeds. 復帰や改行を確認するには、テキスト エディターのビューを "記号を表示する/すべての文字を表示する" ように変更することが必要になる場合があります。You may need to modify your view in the text editor to 'Show Symbol/Show all characters' to see the carriage returns and line feeds.

  2. 証明書名とキーの情報を変数として指定しています。Specify the certificate name and key information as a variable. 次の例で示すように、情報は実際のものに置き換えてください。Replace the information with your own, as shown in the following example:

    $P2SRootCertName2 = "ARMP2SRootCert2.cer"
    $MyP2SCertPubKeyBase64_2 = "MIIC/zCCAeugAwIBAgIQKazxzFjMkp9JRiX+tkTfSzAJBgUrDgMCHQUAMBgxFjAUBgNVBAMTDU15UDJTUm9vdENlcnQwHhcNMTUxMjE5MDI1MTIxWhcNMzkxMjMxMjM1OTU5WjAYMRYwFAYDVQQDEw1NeVAyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyjIXoWy8xE/GF1OSIvUaA0bxBjZ1PJfcXkMWsHPzvhWc2esOKrVQtgFgDz4ggAnOUFEkFaszjiHdnXv3mjzE2SpmAVIZPf2/yPWqkoHwkmrp6BpOvNVOpKxaGPOuK8+dql1xcL0eCkt69g4lxy0FGRFkBcSIgVTViS9wjuuS7LPo5+OXgyFkAY3pSDiMzQCkRGNFgw5WGMHRDAiruDQF1ciLNojAQCsDdLnI3pDYsvRW73HZEhmOqRRnJQe6VekvBYKLvnKaxUTKhFIYwuymHBB96nMFdRUKCZIiWRIy8Hc8+sQEsAML2EItAjQv4+fqgYiFdSWqnQCPf/7IZbotgQIDAQABo00wSzBJBgNVHQEEQjBAgBAkuVrWvFsCJAdK5pb/eoCNoRowGDEWMBQGA1UEAxMNTXlQMlNSb290Q2VydIIQKazxzFjMkp9JRiX+tkTfSzAJBgUrDgMCHQUAA4IBAQA223veAZEIar9N12ubNH2+HwZASNzDVNqspkPKD97TXfKHlPlIcS43TaYkTz38eVrwI6E0yDk4jAuPaKnPuPYFRj9w540SvY6PdOUwDoEqpIcAVp+b4VYwxPL6oyEQ8wnOYuoAK1hhh20lCbo8h9mMy9ofU+RP6HJ7lTqupLfXdID/XevI8tW6Dm+C/wCeV3EmIlO9KUoblD/e24zlo3YzOtbyXwTIh34T0fO/zQvUuBqZMcIPfM1cDvqcqiEFLWvWKoAnxbzckye2uk1gHO52d8AVL3mGiX8wBJkjc/pMdxrEvvCzJkltBmqxTM6XjDJALuVh16qFlqgTWCIcb7ju"
    
  3. 新しいルート証明書を追加します。Add the new root certificate. 一度に追加できる証明書は 1 つだけです。You can only add one certificate at a time.

    Add-AzVpnClientRootCertificate -VpnClientRootCertificateName $P2SRootCertName2 -VirtualNetworkGatewayname "VNet1GW" -ResourceGroupName "TestRG" -PublicCertData $MyP2SCertPubKeyBase64_2
    
  4. 次の例を使用して、新しい証明書が正しく追加されたことを確認できます。You can verify that the new certificate was added correctly by using the following example:

    Get-AzVpnClientRootCertificate -ResourceGroupName "TestRG" `
    -VirtualNetworkGatewayName "VNet1GW"
    

ルート証明書を削除するにはTo remove a root certificate

  1. 変数を宣言します。Declare the variables.

    $GWName = "Name_of_virtual_network_gateway"
    $RG = "Name_of_resource_group"
    $P2SRootCertName2 = "ARMP2SRootCert2.cer"
    $MyP2SCertPubKeyBase64_2 = "MIIC/zCCAeugAwIBAgIQKazxzFjMkp9JRiX+tkTfSzAJBgUrDgMCHQUAMBgxFjAUBgNVBAMTDU15UDJTUm9vdENlcnQwHhcNMTUxMjE5MDI1MTIxWhcNMzkxMjMxMjM1OTU5WjAYMRYwFAYDVQQDEw1NeVAyU1Jvb3RDZXJ0MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAyjIXoWy8xE/GF1OSIvUaA0bxBjZ1PJfcXkMWsHPzvhWc2esOKrVQtgFgDz4ggAnOUFEkFaszjiHdnXv3mjzE2SpmAVIZPf2/yPWqkoHwkmrp6BpOvNVOpKxaGPOuK8+dql1xcL0eCkt69g4lxy0FGRFkBcSIgVTViS9wjuuS7LPo5+OXgyFkAY3pSDiMzQCkRGNFgw5WGMHRDAiruDQF1ciLNojAQCsDdLnI3pDYsvRW73HZEhmOqRRnJQe6VekvBYKLvnKaxUTKhFIYwuymHBB96nMFdRUKCZIiWRIy8Hc8+sQEsAML2EItAjQv4+fqgYiFdSWqnQCPf/7IZbotgQIDAQABo00wSzBJBgNVHQEEQjBAgBAkuVrWvFsCJAdK5pb/eoCNoRowGDEWMBQGA1UEAxMNTXlQMlNSb290Q2VydIIQKazxzFjMkp9JRiX+tkTfSzAJBgUrDgMCHQUAA4IBAQA223veAZEIar9N12ubNH2+HwZASNzDVNqspkPKD97TXfKHlPlIcS43TaYkTz38eVrwI6E0yDk4jAuPaKnPuPYFRj9w540SvY6PdOUwDoEqpIcAVp+b4VYwxPL6oyEQ8wnOYuoAK1hhh20lCbo8h9mMy9ofU+RP6HJ7lTqupLfXdID/XevI8tW6Dm+C/wCeV3EmIlO9KUoblD/e24zlo3YzOtbyXwTIh34T0fO/zQvUuBqZMcIPfM1cDvqcqiEFLWvWKoAnxbzckye2uk1gHO52d8AVL3mGiX8wBJkjc/pMdxrEvvCzJkltBmqxTM6XjDJALuVh16qFlqgTWCIcb7ju"
    
  2. 証明書を削除します。Remove the certificate.

    Remove-AzVpnClientRootCertificate -VpnClientRootCertificateName $P2SRootCertName2 -VirtualNetworkGatewayName $GWName -ResourceGroupName $RG -PublicCertData $MyP2SCertPubKeyBase64_2
    
  3. 次の例を使用して、証明書が正常に削除されたことを確認します。Use the following example to verify that the certificate was removed successfully.

    Get-AzVpnClientRootCertificate -ResourceGroupName "TestRG" `
    -VirtualNetworkGatewayName "VNet1GW"
    

クライアント証明書を失効させるにはTo revoke a client certificate

クライアント証明書は失効させることができます。You can revoke client certificates. 証明書失効リストを使用すると、個々のクライアント証明書に基づくポイント対サイト接続を選択して拒否することができます。The certificate revocation list allows you to selectively deny Point-to-Site connectivity based on individual client certificates. これは、信頼されたルート証明書を削除することとは異なります。This is different than removing a trusted root certificate. 信頼されたルート証明書 .cer を Azure から削除すると、失効したルート証明書によって生成または署名されたすべてのクライアント証明書のアクセス権が取り消されます。If you remove a trusted root certificate .cer from Azure, it revokes the access for all client certificates generated/signed by the revoked root certificate. ルート証明書ではなくクライアント証明書を失効させることで、ルート証明書から生成されたその他の証明書は、その後も認証に使用できます。Revoking a client certificate, rather than the root certificate, allows the other certificates that were generated from the root certificate to continue to be used for authentication.

一般的な方法としては、ルート証明書を使用してチームまたは組織レベルでアクセスを管理し、失効したクライアント証明書を使用して、個々のユーザーの細かいアクセス制御を構成します。The common practice is to use the root certificate to manage access at team or organization levels, while using revoked client certificates for fine-grained access control on individual users.

クライアント証明書の失効Revoke a client certificate

  1. クライアント証明書の拇印を取得します。Retrieve the client certificate thumbprint. 詳細については、「方法: 証明書のサムプリントを取得する」を参照してください。For more information, see How to retrieve the Thumbprint of a Certificate.

  2. 情報をテキスト エディターにコピーし、文字列が 1 つにつながるようにスペースをすべて削除します。Copy the information to a text editor and remove all spaces so that it is a continuous string. この文字列を次の手順で変数として宣言します。This string is declared as a variable in the next step.

  3. 変数を宣言します。Declare the variables. 必ず前の手順で取得した拇印を宣言してください。Make sure to declare the thumbprint you retrieved in the previous step.

    $RevokedClientCert1 = "NameofCertificate"
    $RevokedThumbprint1 = "‎51ab1edd8da4cfed77e20061c5eb6d2ef2f778c7"
    $GWName = "Name_of_virtual_network_gateway"
    $RG = "Name_of_resource_group"
    
  4. 失効した証明書のリストに拇印を追加します。Add the thumbprint to the list of revoked certificates. 拇印が追加されると、"Succeeded" と表示されます。You see "Succeeded" when the thumbprint has been added.

    Add-AzVpnClientRevokedCertificate -VpnClientRevokedCertificateName $RevokedClientCert1 `
    -VirtualNetworkGatewayName $GWName -ResourceGroupName $RG `
    -Thumbprint $RevokedThumbprint1
    
  5. 証明書失効リストに拇印が追加されたことを確認します。Verify that the thumbprint was added to the certificate revocation list.

    Get-AzVpnClientRevokedCertificate -VirtualNetworkGatewayName $GWName -ResourceGroupName $RG
    
  6. 拇印が追加された後は、証明書を接続に使用することができなくなります。After the thumbprint has been added, the certificate can no longer be used to connect. この証明書を使用して接続を試みたクライアントには、証明書が無効になっていることを示すメッセージが表示されます。Clients that try to connect using this certificate receive a message saying that the certificate is no longer valid.

クライアント証明書を回復するにはTo reinstate a client certificate

失効したクライアント証明書のリストから拇印を削除することで、クライアント証明書を回復できます。You can reinstate a client certificate by removing the thumbprint from the list of revoked client certificates.

  1. 変数を宣言します。Declare the variables. 回復する証明書用の適切な拇印を宣言していることを確認してください。Make sure you declare the correct thumbprint for the certificate that you want to reinstate.

    $RevokedClientCert1 = "NameofCertificate"
    $RevokedThumbprint1 = "‎51ab1edd8da4cfed77e20061c5eb6d2ef2f778c7"
    $GWName = "Name_of_virtual_network_gateway"
    $RG = "Name_of_resource_group"
    
  2. 証明書の失効リストから証明書の拇印を削除します。Remove the certificate thumbprint from the certificate revocation list.

    Remove-AzVpnClientRevokedCertificate -VpnClientRevokedCertificateName $RevokedClientCert1 `
    -VirtualNetworkGatewayName $GWName -ResourceGroupName $RG -Thumbprint $RevokedThumbprint1
    
  3. 失効リストから拇印が削除されているかどうかを確認します。Check if the thumbprint is removed from the revoked list.

    Get-AzVpnClientRevokedCertificate -VirtualNetworkGatewayName $GWName -ResourceGroupName $RG
    

ポイント対サイト接続に関してよく寄せられる質問Point-to-Site FAQ

ポイント対サイト構成で保持できる VPN クライアント エンドポイントの最大数を教えてください。How many VPN client endpoints can I have in my Point-to-Site configuration?

それは、ゲートウェイ SKU によって異なります。It depends on the gateway SKU. サポートされる接続の数の詳細については、「ゲートウェイの SKU」を参照してください。For more information on the number of connections supported, see Gateway SKUs.

ポイント対サイト接続で使用できるクライアント オペレーティング システムを教えてください。What client operating systems can I use with Point-to-Site?

次のクライアント オペレーティング システムがサポートされています。The following client operating systems are supported:

  • Windows 7 (32 ビットと 64 ビット)Windows 7 (32-bit and 64-bit)
  • Windows Server 2008 R2 (64 ビットのみ)Windows Server 2008 R2 (64-bit only)
  • Windows 8.1 (32 ビットと 64 ビット)Windows 8.1 (32-bit and 64-bit)
  • Windows Server 2012 (64 ビットのみ)Windows Server 2012 (64-bit only)
  • Windows Server 2012 R2 (64 ビットのみ)Windows Server 2012 R2 (64-bit only)
  • Windows Server 2016 (64 ビットのみ)Windows Server 2016 (64-bit only)
  • Windows 10Windows 10
  • Mac OS X バージョン 10.11 以降Mac OS X version 10.11 or above
  • Linux (StrongSwan)Linux (StrongSwan)
  • iOSiOS

注意

2018 年 7 月 1 日以降、Azure VPN Gateway では TLS 1.0 および 1.1 のサポートが終了します。Starting July 1, 2018, support is being removed for TLS 1.0 and 1.1 from Azure VPN Gateway. VPN Gateway では、TLS 1.2 のみがサポートされるようになります。VPN Gateway will support only TLS 1.2. サポートを維持するには、TLS1.2 のサポートを有効にする更新プログラムに関するページを参照してください。To maintain support, see the updates to enable support for TLS1.2.

さらに、次の TLS 用レガシ アルゴリズムも 2018 年 7 月 1 日に廃止される予定です。Additionally, the following legacy algorithms will also be deprecated for TLS on July 1, 2018:

  • RC4 (Rivest Cipher 4)RC4 (Rivest Cipher 4)
  • DES (データ暗号化アルゴリズム)DES (Data Encryption Algorithm)
  • 3DES (トリプル データ暗号化アルゴリズム)3DES (Triple Data Encryption Algorithm)
  • MD5 (Message Digest 5)MD5 (Message Digest 5)

Windows 7 および Windows 8.1 で TLS 1.2 のサポートを有効にするにはどうすればよいですか。How do I enable support for TLS 1.2 in Windows 7 and Windows 8.1?

  1. 右クリックし、昇格した特権でコマンド プロンプトを開きコマンド プロンプト選択管理者として実行します。Open a command prompt with elevated privileges by right-clicking on Command Prompt and selecting Run as administrator.

  2. コマンド プロンプトで次のコマンドを実行します。Run the following commands in the command prompt:

    reg add HKLM\SYSTEM\CurrentControlSet\Services\RasMan\PPP\EAP\13 /v TlsVersion /t REG_DWORD /d 0xfc0
    reg add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp" /v DefaultSecureProtocols /t REG_DWORD /d 0xaa0
    if %PROCESSOR_ARCHITECTURE% EQU AMD64 reg add "HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows\CurrentVersion\Internet Settings\WinHttp" /v DefaultSecureProtocols /t REG_DWORD /d 0xaa0
    
  3. 次の更新プログラムをインストールします。Install the following updates:

  4. コンピューターを再起動します。Reboot the computer.

  5. VPN に接続します。Connect to the VPN.

注意

以前のバージョンの Windows 10 (10240) を実行している場合は、上記のレジストリ キーを設定する必要があります。You will have to set the above registry key if you are running an older version of Windows 10 (10240).

プロキシやファイアウォールを経由してポイント対サイト接続の機能を使用できますか。Can I traverse proxies and firewalls using Point-to-Site capability?

Azure では、次の 3 種類のポイント対サイト VPN オプションをサポートしています。Azure supports three types of Point-to-site VPN options:

  • Secure Socket Tunneling Protocol (SSTP)。Secure Socket Tunneling Protocol (SSTP). SSTP は、ほとんどのファイアウォールが 443 SSL で使用される送信 TCP ポートを開いているためにファイアウォールを通過できる、Microsoft 独自の SSL ベースのソリューションです。SSTP is a Microsoft proprietary SSL-based solution that can penetrate firewalls since most firewalls open the outbound TCP port that 443 SSL uses.

  • OpenVPN。OpenVPN. OpenVPN は、ほとんどのファイアウォールが 443 SSL で使用される送信 TCP ポートを開いているためにファイアウォールを通過できる、SSL ベースのソリューションです。OpenVPN is a SSL-based solution that can penetrate firewalls since most firewalls open the outbound TCP port that 443 SSL uses.

  • IKEv2 VPN。IKEv2 VPN. IKEv2 VPN は標準ベースの IPsec VPN ソリューションであり、送信 UDP ポート 500 と 4500 のほか、IP プロトコル番号IKEv2 VPN is a standards-based IPsec VPN solution that uses outbound UDP ports 500 and 4500 and IP protocol no. 50 を使用しています。50. ファイアウォールでここに挙げたポートが必ずしも開いているとは限りません。このため、IKEv2 VPN ではプロキシとファイアウォールを通過できないことがあります。Firewalls do not always open these ports, so there is a possibility of IKEv2 VPN not being able to traverse proxies and firewalls.

ポイント対サイト接続用に構成されたクライアント コンピューターを再起動した場合、VPN は自動的に再接続されますか。If I restart a client computer configured for Point-to-Site, will the VPN automatically reconnect?

既定では、クライアント コンピューターの再起動時には VPN の自動再接続は行われません。By default, the client computer will not reestablish the VPN connection automatically.

ポイント対サイトの自動再接続と VPN クライアントの DDNS はサポートされていますか。Does Point-to-Site support auto-reconnect and DDNS on the VPN clients?

ポイント対サイト VPN では、自動再接続と DDNS は現時点ではサポートされていません。Auto-reconnect and DDNS are currently not supported in Point-to-Site VPNs.

サイト間接続およびポイント対サイト接続の構成は、同一仮想ネットワークに共存させることはできますか。Can I have Site-to-Site and Point-to-Site configurations coexist for the same virtual network?

はい。Yes. Resource Manager デプロイ モデルの場合には、ゲートウェイにルートベースの VPN が必要になります。For the Resource Manager deployment model, you must have a RouteBased VPN type for your gateway. クラシック デプロイ モデルの場合は、動的ゲートウェイが必要です。For the classic deployment model, you need a dynamic gateway. 静的ルーティング VPN ゲートウェイと、ポリシーベースの VPN ゲートウェイでは、ポイント対サイト接続はサポートされません。We do not support Point-to-Site for static routing VPN gateways or PolicyBased VPN gateways.

ポイント対サイト接続のクライアントを同時に複数の仮想ネットワークに接続するように構成することはできますか。Can I configure a Point-to-Site client to connect to multiple virtual networks at the same time?

いいえ。No. ポイント対サイト接続のクライアントは、仮想ネットワーク ゲートウェイが存在する VNet にあるリソースに接続できるにとどまります。A Point-to-Site client can only connect to resources in the VNet in which the virtual network gateway resides.

サイト間接続またはポイント対サイト接続ではどの程度のスループットが得られますか。How much throughput can I expect through Site-to-Site or Point-to-Site connections?

VPN トンネルのスループットを正確に一定レベルに維持することは困難です。It's difficult to maintain the exact throughput of the VPN tunnels. IPsec と SSTP は、VPN プロトコルの中でも暗号化処理の負荷が高いものです。IPsec and SSTP are crypto-heavy VPN protocols. また、スループットはオンプレミスとインターネットの間の待機時間や帯域幅によっても制限されます。Throughput is also limited by the latency and bandwidth between your premises and the Internet. IKEv2 ポイント対サイト VPN 接続のみを使用する VPN ゲートウェイでは、期待できるスループットの総量がゲートウェイの SKU に応じて変わります。For a VPN Gateway with only IKEv2 Point-to-Site VPN connections, the total throughput that you can expect depends on the Gateway SKU. スループットの詳細については、「ゲートウェイの SKU」を参照してください。For more information on throughput, see Gateway SKUs.

SSTP や IKEv2 をサポートしているポイント対サイト接続では、ソフトウェア VPN クライアントを使用できますか。Can I use any software VPN client for Point-to-Site that supports SSTP and/or IKEv2?

いいえ。No. SSTP については Windows のネイティブ VPN クライアント、IKEv2 については Mac のネイティブ VPN クライアントのみ使用できます。You can only use the native VPN client on Windows for SSTP, and the native VPN client on Mac for IKEv2. ただし、すべてのプラットフォーム上で OpenVPN クライアントを使用して、OpenVPN プロトコル経由で接続できます。However, you can use the OpenVPN client on all platforms to connect over OpenVPN protocol. サポートされているクライアント オペレーティング システムの一覧を参照してください。Refer to the list of supported client operating systems.

Azure は、Windows で IKEv2 VPN をサポートしていますか。Does Azure support IKEv2 VPN with Windows?

IKEv2 は、Windows 10 および Windows Server 2016 でサポートされています。IKEv2 is supported on Windows 10 and Server 2016. ただし、IKEv2 を使用するには、更新プログラムをインストールして、ローカルでレジストリ キーの値を設定する必要があります。However, in order to use IKEv2, you must install updates and set a registry key value locally. Windows 10 以前の OS バージョンはサポートされておらず、それらのバージョンで使用できるのは SSTP または OpenVPN® プロトコルのみです。OS versions prior to Windows 10 are not supported and can only use SSTP or OpenVPN® Protocol.

Windows 10 または Windows Server 2016 を IKEv2 用に準備するには:To prepare Windows 10 or Server 2016 for IKEv2:

  1. 更新プログラムをインストールします。Install the update.

    OS バージョンOS version DateDate 数/リンクNumber/Link
    Windows Server 2016Windows Server 2016
    Windows 10 バージョン 1607Windows 10 Version 1607
    2018 年 1 月 17 日January 17, 2018 KB4057142KB4057142
    Windows 10 バージョン 1703Windows 10 Version 1703 2018 年 1 月 17 日January 17, 2018 KB4057144KB4057144
    Windows 10 バージョン 1709Windows 10 Version 1709 2018 年 3 月 22 日March 22, 2018 KB4089848KB4089848
  2. レジストリ キーの値を設定します。Set the registry key value. レジストリの "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\ IKEv2\DisableCertReqPayload" REG_DWORD キーを作成するか、または 1 に設定します。Create or set “HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\RasMan\ IKEv2\DisableCertReqPayload” REG_DWORD key in the registry to 1.

P2S VPN 接続に対して SSTP と IKEv2 の両方を構成した場合、何が起こりますか。What happens when I configure both SSTP and IKEv2 for P2S VPN connections?

Windows デバイスと Mac デバイスが混在する環境で SSTP と IKEv2 の両方を構成すると、Windows VPN クライアントは必ず最初に IKEv2 トンネルを試行します。ただし、IKEv2 接続が成功しなかった場合 SSTP にフォールバックします。When you configure both SSTP and IKEv2 in a mixed environment (consisting of Windows and Mac devices), the Windows VPN client will always try IKEv2 tunnel first, but will fall back to SSTP if the IKEv2 connection is not successful. MacOSX は IKEv2 経由のみで接続します。MacOSX will only connect via IKEv2.

Windows と Mac 以外に、Azure が P2S VPN 向けにサポートしている他のプラットフォームはありますか。Other than Windows and Mac, which other platforms does Azure support for P2S VPN?

Azure では、P2S VPN 向けに Windows、Mac、および Linux をサポートしています。Azure supports Windows, Mac and Linux for P2S VPN.

Azure VPN Gateway を既にデプロイしています。I already have an Azure VPN Gateway deployed. ここで RADIUS または IKEv2 VPN または両方を有効にできますか。Can I enable RADIUS and/or IKEv2 VPN on it?

はい。Powershell または Azure Portal を使用して、既にデプロイされているゲートウェイでこれらの新機能を有効にできます。ただし、ご利用のゲートウェイ SKU が、RADIUS と IKEv2 のいずれかまたは両方をサポートしている必要があります。Yes, you can enable these new features on already deployed gateways using Powershell or the Azure portal, provided that the gateway SKU that you are using supports RADIUS and/or IKEv2. たとえば VPN Gateway Basic SKU は、RADIUS と IKEv2 のどちらもサポートしていません。For example, the VPN gateway Basic SKU does not support RADIUS or IKEv2.

ポイント対サイト接続で自社の内部 PKI ルート CA を使用できますか。Can I use my own internal PKI root CA for Point-to-Site connectivity?

はい。Yes. 以前は、自己署名ルート証明書のみを使用できました。Previously, only self-signed root certificates could be used. 現在も 20 ルート証明書までアップロードできます。You can still upload 20 root certificates.

証明書の作成にどのようなツールを使用できますか。What tools can I use to create certificates?

エンタープライズ PKI ソリューション (内部 PKI)、Azure PowerShell、MakeCert、OpenSSL を使用できます。You can use your Enterprise PKI solution (your internal PKI), Azure PowerShell, MakeCert, and OpenSSL.

証明書の設定およびパラメーターに関する指示はありますか。Are there instructions for certificate settings and parameters?

  • 内部 PKI/エンタープライズ PKI ソリューション: 証明書を生成する手順を参照してください。Internal PKI/Enterprise PKI solution: See the steps to Generate certificates.

  • Azure PowerShell: 手順については、Azure PowerShell の記事を参照してください。Azure PowerShell: See the Azure PowerShell article for steps.

  • MakeCert: 手順については、MakeCert の記事を参照してください。MakeCert: See the MakeCert article for steps.

  • OpenSSL:OpenSSL:

    • 証明書をエクスポートするときは、ルート証明書を Base64 に変換してください。When exporting certificates, be sure to convert the root certificate to Base64.

    • クライアント証明書の場合:For the client certificate:

      • 秘密キーを作成する際は、長さを 4096 として指定します。When creating the private key, specify the length as 4096.
      • 証明書を作成する際は、 -extensions パラメーターに usr_cert を指定します。When creating the certificate, for the -extensions parameter, specify usr_cert.

次の手順Next steps

接続が完成したら、仮想ネットワークに仮想マシンを追加することができます。Once your connection is complete, you can add virtual machines to your virtual networks. 詳細については、Virtual Machines に関するページを参照してください。For more information, see Virtual Machines. ネットワークと仮想マシンの詳細については、「Azure と Linux の VM ネットワークの概要」を参照してください。To understand more about networking and virtual machines, see Azure and Linux VM network overview.

P2S のトラブルシューティング情報については、Azure ポイント対サイト接続のトラブルシューティングに関するページをご覧ください。For P2S troubleshooting information, Troubleshooting: Azure point-to-site connection problems.