Rdesktop

Related articles
xrdp
Remmina
Note
The upstream rdesktop project
is looking for a new maintainer
. In the meantime, it is advised to use the other branch of the project called
freerdp
, actively maintained. An upstream
blog post
provides an explanation on the history of both projects and see how they are tied together.
rdesktop
is a free, open source client for Microsoft's proprietary RDP protocol released under the GNU General Public License.  Use rdesktop to connect to Windows RDP server to remotely administrate the Windows box.
As of July 2008, rdesktop implements a large subset of the RDP 5 protocol, including:
Bitmap caching
File system, audio, serial port and printer port redirection
Mappings for most international keyboards
Stream compression and encryption
Automatic authentication
Smartcard support
RemoteApp like support called "seamless" mode via SeamlessRDP
Still unimplemented are:
Remote Assistance requests
USB device redirection
Support for the additional features available in RDP 5.1 and RDP 6 (including multi-head display spanning and window composition) also have not yet been implemented.
Installation
Install
the
rdesktop
package.
Usage
For a complete listing of options see
rdesktop(1)
.  Here is a typical line:
$ rdesktop -g 1440x900 -P -z -x l -r sound:off -u windowsuser 98.180.102.33:3389
Reading from left to right:
-g 1440x900
Sets the resolution of the display to 1440x900
-P
Enables bitmap caching/speeds up xfers.
-z
Enables RDP datastream compression
-x l
Uses the "lan" quality experience level, see
rdesktop(1) § x
-r sound:off
Redirects sound generated on the server to null
-u windowsuser
This defines the username to use when logging into the Windows box
98.180.102.33:3389
This is the IP address and port number of the target machine
Tips and tricks
Automatic scaling of geometry
In order to automatically scale the geometry to fit the screen, one can use the
-g
command line option. Either by using percentage:
$ rdesktop -g 100% -P -z 98.180.102.33:3389
or with numerical values:
-g $(xrandr -q | awk '/Screen 0/ {print int($8/1.28) $9 int($10/1.2)}' | sed 's/,//g')
Remote desktop using NetBIOS names instead of using IP address
If you do not know the IP address of a Windows computer in a network, you have to enable wins support. To do so, you have to install
samba
. To enable wins in samba add the following line:
/etc/samba/smb.conf
wins support = yes
Then you have to install winbind, then edit the
/etc/nsswitch.conf
and add the "wins" to the list of hosts.
Restart
smb
and
nmb
services and test your success by pinging a Windows NetBIOS host.
Supplying missing cursors
See
Cursor themes#Supplying missing cursors
.
Troubleshooting
Failed to initialize NLA
When trying to remote desktop into a Windows 10 or Windows 11 host, you might get this error:
Failed to initialize NLA, do you have correct Kerberos TGT initialized ?
Failed to connect, CredSSP required by server (check if server has disabled old TLS versions, if yes use -V option)
If you own or have admin access to the host, you can work around this issue by allowing clients to connect without NLA. Search
rdp disable nla
for instructions. Note that this might introduce security issues on a public-facing host, so use this with caution.
See also
rdesktop official homepage
freerdp
a rdesktop fork that supports RDP 7.1 features including network level authentication (NLA). See also
[1]
.