Remmina, FreeRDP, and a failed connection attempt
The other night I tried to RDP from Ubuntu to Windows using Remmina, only to have the connection attempt fail. The error message that popped up didn’t provide much detail and a double-check of passwords and settings indicated that those were fine.
A quick Google search revealed that the problem was being caused by my ~/.freerdp directory (or /home/user/.freerdp for those less familiar with the tilde in Linux).
It turns out that the RDP component of Remmina uses the FreeRDP protocol (which makes sense given that the two project repos are nested under the same Github account). Every time you RDP into a new host machine, FreeRDP captures the credentials (IP address and Authentication Hash Key) of the host and stores them inside a file (known_hosts) within the .freerdp directory. That way, server authentication is not required for each subsequent login, since FreeRDP knows it can trust the host
However, those credentials can sometimes become corrupted, which #!@&s your connection attempt and ultimately results in your being refused.
The solution is pretty simple. All you have to do is remove your .freerdp folder, like so:
cd ~ sudo rm -r .freerdp
Then go back to Remmina and try connecting via RDP again. FreeRDP should generate a new .freerdp directory and create a fresh set of credentials, which means that the connection may take slightly longer than usual, but you should be met with success this time.
Thanks to AskUbuntu user Rishad for the solution.