After some testing I found that if you're trying to connect as a user and you don't specify a domain, the built-in Windows RDP client will default to using your hostname as the domain name when a user with the same name as the one that you're trying to connect as exists on your local machine. This applies to all users (including built-in users) on your local machine (To get the full list, run compmgmt.msc, open "Local Users and Groups", then "Users")
In my case I was trying to RDP to a Windows server from a Windows 10 machine with the username Administrator
(which is a built-in user on any windows 10 machine). The dialog box would show an invalid credentials error for username $HOSTNAME\Administrator
. Same result when trying to connect as \Administrator
, .\Administrator
, ~\Administrator
. The only solution I found was to specify the remote machine's hostname as the domain which is kind of annoying since it was a brand new machine I spun up on AWS and I didn't know the randomly generated hostname. Using the Remmina client on my Ubuntu machine, I was able to RDP to the instance without any issues using the same credentials, by leaving the domain
field empty.
So if you want to use the built-in RDP client in Windows 10 to connect to a remote with username Administrator
(which is the default username for any windows server spun up on AWS), it seems you will have to specify the hostname when connecting the first time.
To test the above out, try to connect with a random username/password that doesn't exist on your local machine and you'll notice that the failure dialog box shows the random username without your hostname.
repeating one of the comment – yass – 2017-06-27T13:57:57.607
1This appears to work better than using
.\username
but then I get "Your system administrator does not allow the use of saved credentials to log on to the remote computer xxxx because its identity is not fully verified" – drzaus – 2017-07-18T14:26:29.8831Nice worked for me. – radbyx – 2019-01-25T09:26:57.067