An Azure networking service that is used to provision private networks and optionally to connect to on-premises datacenters.
Use this checklist in order. After each step, try the RDP connection again.
- Verify the VM is actually ready for RDP
- In Azure portal, open Virtual machines and select the VM.
- On Overview, confirm:
- Status is Running
- A Public IP address is shown in the Networking section
- If the Connect button is grayed out and there is no ExpressRoute or Site-to-Site VPN connection, assign a public IP address first.
- Check that the RDP port is allowed on the VM networking
- Open the VM.
- Go to Networking > Network settings.
- Look for an inbound rule that allows TCP 3389.
- The rule must allow traffic from the IP address being used to connect.
- If no rule exists:
- Select + Create port rule > Inbound port rule
- Set Service to RDP
- Adjust Priority and Source as needed
- Set Name to
Port_3389 - Select Add
- Check whether the source IP in the NSG rule is too restrictive
- If the allow rule uses a specific source IP or range, connections from any other public IP are blocked.
- Verify that the public IP of the RDP client is included in the rule source.
- If internet-based RDP is intended, use the correct source setting. Do not rely on the VirtualNetwork service tag for internet RDP access.
- Check the VM network interface and IP configuration
For a basic RDP scenario over the internet, the VM needs a reachable public IP. To verify:
- Open the VM in Azure portal.
- On Overview, check whether a Public IP address is present.
- If the VM was created through failover or the public IP is missing, go to:
- Virtual machine > Networking
- Select the network interface name
- Go to IP configurations
- Select the required IP configuration
- Enable Public IP address
- Select Configure required settings > Create new
- Enter a name, keep the default SKU and assignment, then select OK
- Select Save
- Return to the VM Overview and try connecting again.
- Connect using the Azure portal RDP flow
- In Azure portal, go to Virtual machines and select the VM.
- Select Connect.
- On the Connect page, select Native RDP.
- Choose the appropriate IP address and Port number. In most cases use the default IP and port 3389.
- Select Download RDP File.
- Open the downloaded file and select Connect.
- If prompted, select More choices > Use a different account.
- Sign in with:
- Local account:
vmname\username - Domain-joined VM:
Domain\Username
- Local account:
- Accept the identity prompt by selecting Yes.
- If the VM has Just-In-Time access enabled
- On the Connect page, select Request access before using the RDP file.
- If RDP still fails, use the built-in Azure troubleshooting sequence
In the Azure portal, open the VM and try these in order:
- Reset password > set Mode to Reset configuration only > Update
- This resets RDP configuration when remote connections are disabled or Windows Firewall rules are blocking RDP.
- Verify Network Security Group rules
- Use IP flow verify or review effective security rules to confirm an inbound allow rule exists for RDP.
- Review Boot diagnostics
- Check for startup problems affecting connectivity.
- Reset the NIC for the VM
- Check Resource health
- A healthy VM reports as Available.
- If needed, reset the VM password, restart the VM, or redeploy the VM.
- Reset password > set Mode to Reset configuration only > Update
- Check local network blocking
- Ensure the local router, firewall, or corporate network is not blocking outbound TCP 3389.
- Optional PowerShell method
If Azure PowerShell is installed and the account is signed in with
Connect-AzAccount, an RDP file can be launched or saved with:
Get-AzRemoteDesktopFile -ResourceGroupName "RgName" -Name "VmName" -Launch
or
Get-AzRemoteDesktopFile -ResourceGroupName "RgName" -Name "VmName" -LocalPath "C:\Path\to\folder"
A simple way to think about the problem:
- VM running means Windows is powered on.
- Public IP means Azure can expose it to the internet.
- NSG rule for 3389 means Azure allows RDP traffic in.
- RDP configuration inside Windows means the OS accepts the session.
- If any one of those is missing, RDP fails.
References: