Azure 仮想マシンへのリモート デスクトップ接続に関するトラブルシューティング

適用対象: ✔️ Windows VM

Note

この記事は役に立ちましたか? あなたの入力は私たちにとって重要です。 このページの Feedback ボタンを使用して、この記事がどれだけうまく機能したか、または改善方法をお知らせください。

Windows ベースの Azure 仮想マシン (VM) に対するリモート デスクトップ プロトコル (RDP) 接続は、さまざまな理由で失敗する可能性があり、VM にアクセスできない場合があります。 VM 上のリモート デスクトップ サービス、ネットワーク接続、またはホスト コンピューター上のリモート デスクトップ クライアントに問題がある可能性があります。 この記事では、RDP の接続問題を解決する、最も一般的な方法について説明します。

この記事についてさらにヘルプが必要な場合は、いつでも MSDN の Azure フォーラムと Stack Overflow フォーラムで Azure エキスパートに問い合わせることができます。 または、Azure サポート インシデントを送信できます。 Azure サポート サイトに移動しGet サポートを選択します

簡単なトラブルシューティング手順

トラブルシューティングの各手順を実行した後、VM に再接続してみてください。

  1. リモート デスクトップ構成をリセットする。
  2. ネットワーク セキュリティ グループの規則/クラウド サービス エンドポイントを確認する。
  3. VM コンソールのログを確認する。
  4. VM の NIC をリセットする。
  5. VM リソース ヘルスを確認する。
  6. VM のパスワードをリセットする。
  7. VM を再起動します。
  8. アプリケーションを再展開する。

詳しい手順と説明が必要な場合は、この後の説明をお読みください。 ルーターやファイアウォールなどのローカル ネットワーク機器が、送信 TCP ポート 3389 をブロックしていないことを確認します。この方法については、Azure 上の Windows VM へのリモート デスクトップ接続に関する問題の詳細なトラブルシューティング手順に関する記事をご覧ください。

ヒント

ポータルで [接続] ボタンが淡色表示され、Express Routeサイト間 VPN 接続で Azure に接続されていない場合は、VM を作成してパブリック IP アドレスを割り当ててから RDP を使用する必要があります。 Azure におけるパブリック IP アドレスに関するページをご覧ください。

RDP 問題をトラブルシューティングする方法

次のメソッドのいずれかを使用して、Resource Manager デプロイ モデルを使用して作成された VM のトラブルシューティングを行うことができます。

  • Azure portal - RDP 構成またはユーザーの資格情報をすばやくリセットする必要があり、Azure ツールをインストールしていない場合に最適です。
  • Azure PowerShell - PowerShell プロンプトに慣れている場合、Azure PowerShell コマンドレットを使用して、RDP の構成またはユーザーの資格情報をすばやくリセットします。

Azure Portal を使用したトラブルシューティング

トラブルシューティングの各手順を実行した後、再度 VM に接続してみてください。 それでも接続できない場合は、次の手順をお試しください。

  1. RDP 接続をリセットする。 このトラブルシューティングの手順では、リモート接続が無効になっていたり、Windows ファイアウォール規則によって RDP がブロックされている場合などに、RDP 構成をリセットします。

    Azure Portal で VM を選択します。 設定ウィンドウを下にスクロールして、リストの下部付近にある Help セクションに移動します。 [Reset password] ボタンをクリックします。 [モード][Reset configuration only] に設定し、[更新] ボタンをクリックします。

    [パスワードのリセット] タブの [モード設定] ウィンドウのスクリーンショット。[構成のみのリセット] オプションが選択されています。

  2. ネットワーク セキュリティ グループの規則を確認するIP フロー検証を使用して、ネットワーク セキュリティ グループ規則によって、仮想マシンから送受信されるトラフィックがブロックされていないかどうかを確認します。 有効なセキュリティ グループ規則を確認して、RDP ポート (既定では 3389) に対して受信 "許可" NSG 規則が存在し、優先されていることを確認することもできます。 詳細については、「有効なセキュリティ規則を使用した VM トラフィック フローのトラブルシューティング」を参照してください。

  3. VM のブート診断を確認する。 このトラブルシューティングの手順では、VM コンソール ログを確認し、VM が問題を報告しているかどうかを確認します。 すべての VM でブート診断を有効にしているとは限らないため、このトラブルシューティングの手順は省略できます。

    この記事では、具体的なトラブルシューティング手順については説明しませんが、RDP 接続に影響を与える、より広範な問題は示す場合があります。 コンソール ログと VM のスクリーン ショットの確認について詳しくは、「VM のブート診断 (ブログの投稿)」をご覧ください。

  4. VM の NIC をリセットする。 詳細については、Azure Windows VM の NIC をリセットする方法に関するページを参照してください。

  5. VM リソース ヘルスを確認する。 このトラブルシューティングの手順では、VM への接続に影響を受ける可能性のある Azure プラットフォームで既知の問題がないことを確認します。

    Azure Portal で VM を選択します。 設定ウィンドウを下にスクロールして、リストの下部付近にある Help セクションに移動します。 [Resource health] ボタンをクリックします。 正常な VM には [使用可能]と表示されます。

    正常な VM レポートのスクリーンショット。この仮想マシンに影響を与える既知の Azure プラットフォームの問題がないことを示しています。

  6. ユーザーの資格情報をリセットする。 このトラブルシューティングの手順では、資格情報が明確でないか、覚えていない場合に、ローカル管理者アカウントのパスワードをリセットします。 VM にログインしたら、そのユーザーのパスワードをリセットしてください。

    Azure Portal で VM を選択します。 設定ウィンドウを下にスクロールして、リストの下部付近にある Help セクションに移動します。 [Reset password] ボタンをクリックします。 [モード][パスワードのリセット] に設定されていることを確認し、ユーザー名と新しいパスワードを入力します。 最後に、[更新] ボタンをクリックします。

    モードが [パスワードのリセット] に設定されている場合の [パスワードのリセット] の設定ウィンドウのスクリーンショット。

  7. VM を再起動する。 このトラブルシューティングの手順では、VM 自体で発生している根底にある問題を修正できます。 Azure portal で VM を選択し、 [Overview ] タブをクリックします。[ Restart ] ボタンをクリックします。

  8. アプリケーションを再展開する。 このトラブルシューティングの手順では、プラットフォームやネットワークの根底にある問題を修正するために、Azure 内の別のホストに VM を再デプロイします。

    Azure Portal で VM を選択します。 設定ウィンドウを下にスクロールして、リストの下部付近にある Help セクションに移動します。 [再デプロイ] ボタンをクリックし、 [再デプロイ] をクリックします。

    [再デプロイ] タブの設定ウィンドウの [再デプロイ] ボタンのスクリーンショット。

    この操作を行うと、一時ディスクのデータが失われ、VM に関連付けられている動的 IP アドレスが更新されます。

  9. ルーティングを確認します。 Network Watcher の次ホップ機能を使用して、ルートが仮想マシンとの間でトラフィックのルーティングを妨げていないことを確認します。 有効なルートを見直し、ネットワーク インターフェイスのすべての有効なルートを確認することもできます。 詳細については、「有効なルートを使用した VM トラフィック フローのトラブルシューティング」を参照してください。

  10. オンプレミスのファイアウォールまたはコンピューター上のファイアウォールが Azure に対する送信 TCP 3389 トラフィックを許可していることを確認します。

RDP の問題が解決しない場合は、サポート要求を申請するか、RDP トラブルシューティングの考え方と手順に関する記事をご覧ください。

Azure PowerShell を使用したトラブルシューティング

まだインストールしていない場合は、 最新の Azure PowerShell をインストールして構成します

次の例では、myResourceGroupmyVMmyVMAccessExtension などの変数を使用します。 これらの変数の名前と場所は、実際の値に置き換えてください。

Note

Set-AzVMAccessExtension PowerShell コマンドレットを使用して、ユーザーの資格情報と RDP 構成をリセットします。 次の例では、myVMAccessExtension がプロセスの一部として指定した名前になります。 VMAccessAgent を前に操作したことがある場合は、Get-AzVM -ResourceGroupName "myResourceGroup" -Name "myVM" を使用して VM のプロパティをチェックすることで、既存の拡張機能の名前を取得できます。 名前を確認するには、出力の 'Extensions' セクションを調べます。

トラブルシューティングの各手順を実行した後、再度 VM に接続してみてください。 それでも接続できない場合は、次の手順をお試しください。

  1. RDP 接続をリセットする。 このトラブルシューティングの手順では、リモート接続が無効になっていたり、Windows ファイアウォール規則によって RDP がブロックされている場合などに、RDP 構成をリセットします。

    次の例では、WestUS 内と myResourceGroup という名前のリソース グループ内にある myVM という名前の VM でRDP 接続をリセットします。

    Set-AzVMAccessExtension -ResourceGroupName "myResourceGroup" `
        -VMName "myVM" -Location Westus -Name "myVMAccessExtension"
    
  2. ネットワーク セキュリティ グループの規則を確認する。 このトラブルシューティングの手順では、RDP トラフィックを許可するように、ネットワーク セキュリティ グループに規則があることを確認します。 RDP の既定のポートは、TCP ポート 3389 です。 RDP トラフィックを許可する規則は、VM を作成する際に自動で作成されない場合があります。

    最初に、ネットワーク セキュリティ グループのすべての構成データを $rules 変数に割り当てます。 次の例では、myResourceGroup という名前のリソース グループ内の myNetworkSecurityGroup という名前のネットワーク セキュリティ グループに関する情報を取得します。

    $rules = Get-AzNetworkSecurityGroup -ResourceGroupName "myResourceGroup" `
        -Name "myNetworkSecurityGroup"
    

    ここで、このネットワーク セキュリティ グループに対して構成されている規則を確認します。 次のように着信接続用の TCP ポート 3389 を許可する規則が存在することを確認します。

    $rules.SecurityRules
    

    次の例では、RDP トラフィックを許可する有効なセキュリティ規則が表示されています。 ProtocolDestinationPortRangeAccessDirection が正しく構成されていることがわかります。

    Name                     : default-allow-rdp
    Id                       : /subscriptions/guid/resourceGroups/myResourceGroup/providers/Microsoft.Network/networkSecurityGroups/myNetworkSecurityGroup/securityRules/default-allow-rdp
    Etag                     : 
    ProvisioningState        : Succeeded
    Description              : 
    Protocol                 : TCP
    SourcePortRange          : *
    DestinationPortRange     : 3389
    SourceAddressPrefix      : *
    DestinationAddressPrefix : *
    Access                   : Allow
    Priority                 : 1000
    Direction                : Inbound
    

    RDP トラフィックを許可する規則がない場合、ネットワーク セキュリティ グループの規則を作成します。 TCP ポート 3389 を使用できます。

  3. ユーザーの資格情報をリセットする。 このトラブルシューティングの手順では、資格情報が明確でないか、覚えていない場合に、指定したローカル管理者アカウントのパスワードをリセットします。

    最初に、次のように資格情報を $cred 変数に割り当てて、ユーザー名と新しいパスワードを指定します。

    $cred=Get-Credential
    

    ここで、VM の資格情報を更新します。 次の例では、WestUS 内と myResourceGroup という名前のリソース グループ内にある myVM という名前の VM で資格情報を更新します。

    Set-AzVMAccessExtension -ResourceGroupName "myResourceGroup" `
        -VMName "myVM" -Location WestUS -Name "myVMAccessExtension" `
        -UserName $cred.GetNetworkCredential().Username `
        -Password $cred.GetNetworkCredential().Password
    
  4. VM を再起動する。 このトラブルシューティングの手順では、VM 自体で発生している根底にある問題を修正できます。

    次の例では、myResourceGroup という名前のリソース グループ内にある myVM という名前の VM を再起動します。

    Restart-AzVM -ResourceGroup "myResourceGroup" -Name "myVM"
    
  5. アプリケーションを再展開する。 このトラブルシューティングの手順では、プラットフォームやネットワークの根底にある問題を修正するために、Azure 内の別のホストに VM を再デプロイします。

    次の例では、WestUS 内と myResourceGroup という名前のリソース グループ内にある myVM という名前の VM を再デプロイします。

    Set-AzVM -Redeploy -ResourceGroupName "myResourceGroup" -Name "myVM"
    
  6. ルーティングを確認します。 Network Watcher の次ホップ機能を使用して、ルートが仮想マシンとの間でトラフィックのルーティングを妨げていないことを確認します。 有効なルートを見直し、ネットワーク インターフェイスのすべての有効なルートを確認することもできます。 詳細については、「有効なルートを使用した VM トラフィック フローのトラブルシューティング」を参照してください。

  7. オンプレミスのファイアウォールまたはコンピューター上のファイアウォールが Azure に対する送信 TCP 3389 トラフィックを許可していることを確認します。

RDP の問題が解決しない場合は、サポート要求を申請するか、RDP トラブルシューティングの考え方と手順に関する記事をご覧ください。

特定の RDP エラーのトラブルシューティング

お使いの VM に RDP 経由で接続しようとすると、特定のエラー メッセージが表示される場合があります。 一般的なエラー メッセージは次のとおりです。

ユーザーが Microsoft Entra 資格情報を使用して RDP を実行するときのサインインの問題のトラブルシューティング

Microsoft Entra 資格情報を使用して RDP を実行しようとすると、"Azure ロールが割り当てられていない"、"承認されていないクライアント"、または "2 要素認証のサインイン方法が必要です" という一般的なエラーが表示されることがあります。 これらの問題を解決するには、次の記事を参照してください。

その他のリソース

上記のエラーが発生していないにもかかわらず、リモート デスクトップを介して VM に接続できない場合は、 リモート デスクトップのトラブルシューティングに関するページをご覧ください。

お問い合わせはこちらから

質問がある場合やヘルプが必要な場合は、サポート要求を作成するか、Azure コミュニティ サポートにお問い合わせください。 Azure フィードバック コミュニティに製品フィードバックを送信することもできます。