Connect to a Windows VPS or server with Remote Desktop
A Windows VPS for an ASP.NET site is administered through Remote Desktop: you see the server's desktop, open IIS Manager and deploy as if you were sitting at it. Connecting takes a minute; keeping that door safe takes a little more thought, because RDP ports exposed to the internet are scanned constantly.
What you need from the provider
- The server's public IP address or host name.
- An administrator user name (often
Administrator) and its password, or a way to set it from the provider's console. - Confirmation that RDP (TCP port 3389 by default) is allowed by the provider's firewall or security group, ideally only from your own IP address.
Connecting from Windows
- Press Win+R, type
mstscand press Enter (or search for "Remote Desktop Connection"). - In Computer, enter the IP address. Add
:portif the provider uses a port other than 3389. - Click Show Options to save the user name and, under Local Resources, choose whether to share the clipboard or local drives. Sharing a drive is handy for copying a deployment package but gives the server access to it; enable it only when needed.
- Click Connect, enter the password, and accept the certificate warning the first time if the fingerprint matches the one your provider shows. Most VPS use a self-signed certificate.
From the command line: mstsc /v:203.0.113.10:3389.
From macOS, Linux, iOS and Android
Microsoft publishes Remote Desktop clients for macOS, iOS and Android (the app is distributed as "Windows App" in recent versions). On Linux, FreeRDP (xfreerdp /v:203.0.113.10 /u:Administrator) and Remmina are common choices.
When the connection fails
| Symptom | Check |
|---|---|
| "Remote Desktop can't connect to the remote computer" | Server running? Port open in the provider's firewall and in Windows Firewall ("Remote Desktop" rules)? Correct port? |
| Credentials rejected | User name format (.\Administrator for a local account), keyboard layout, account locked after failed attempts. |
| "An authentication error has occurred… CredSSP" | Client and server patch levels differ; update both rather than lowering security settings. |
| Connected but black screen | Wait, or disconnect and reconnect; a pending update may be installing. |
Securing RDP
- Restrict who can reach port 3389. Allow only your office or home IP addresses in the provider's firewall. Better still, do not expose RDP at all: connect through a VPN, the provider's bastion service or Remote Desktop Gateway.
- Keep Network Level Authentication on (the default), so users authenticate before a session is created.
- Use a long, unique password, consider renaming or disabling the built-in Administrator account in favour of a named admin account, and configure an account lockout policy.
- Patch Windows promptly; RDP vulnerabilities have been exploited at scale in the past.
- Changing the port from 3389 reduces log noise but is not protection on its own.
Once connected, you deploy the site as described in Parser Error when deploying, and choose a plan with the help of Choosing hosting for an ASP.NET website.
Official documentation
- Microsoft Learn: Remote Desktop clients
- Microsoft Learn: mstsc command
- Microsoft Learn: Remote Desktop Services troubleshooting overview