Xrdp

Last updated
xrdp
Original author(s) Jay Sorg
Developer(s) xrdp Team
Initial release2004;20 years ago (2004)
Stable release
0.10.0 / 10 May 2024;46 days ago (2024-05-10)
Repository github.com/neutrinolabs/xrdp
Written in C (primarily; portions C++, Assembly)
Operating system Unix-like
Size > 2.5 MB
Type remote desktop software
License Apache, GNU General Public License
Website www.xrdp.org

xrdp is a free and open-source implementation of Microsoft RDP (Remote Desktop Protocol) server that enables operating systems other than Microsoft Windows (such as Linux and BSD-style operating systems) to provide a fully functional RDP-compatible remote desktop experience. [1] [2] [3] [4] It works by bridging graphics from the X Window System to the client and relaying controls from the client back to X Window Server.

Contents

According to the developers, the protocol works with rdesktop, FreeRDP and Microsoft's own Remote Desktop Client. [5]

Modes of operation

In order to relay the graphics and controls between the X Window System and the user, XRDP can utilize several forwarding modes:

History

The project was started in mid-2004 by Jay Sorg [6] based on the work of rdesktop and FreeRDP that had previously explored implementations of the proprietary Remote Desktop Protocol, including RemoteFX.

The initial versions of the XRDP project relied on a local VNC server installation that had to be present alongside the program, in order to relay the graphics and controls between the user and the server [7] (known as the "VNC forwarding mode"). However, this mode is currently not recommended to use anymore, due to its slow performance.

Due to the slow performance of forwarding to a VNC server, the developers introduced the X11rdp mode – which allowed for direct communication with the X Window Server, resulting in improved draw times and an overall better user experience. In 2019, the XRDP developers announced the xorgxrdp project as the replacement to the X11rdp mode, which is the default mode that XRDP uses in new installations.

See also

Related Research Articles

<span class="mw-page-title-main">X Window System</span> Windowing system for bitmap displays on UNIX-like systems

The X Window System is a windowing system for bitmap displays, common on Unix-like operating systems.

<span class="mw-page-title-main">Virtual Network Computing</span> Graphical desktop-sharing system

Virtual Network Computing (VNC) is a graphical desktop-sharing system that uses the Remote Frame Buffer protocol (RFB) to remotely control another computer. It transmits the keyboard and mouse input from one computer to another, relaying the graphical-screen updates, over a network.

<span class="mw-page-title-main">Damn Small Linux</span> Lightweight, desktop-oriented Linux distribution

Damn Small Linux (DSL) is a computer operating system for the x86 family of personal computers. It is free and open-source software under the terms of the GNU GPL and other free and open-source licenses. It was designed to run graphical user interface applications on older PC hardware, for example, machines with 486 and early Pentium microprocessors and very little random-access memory (RAM). DSL is a live CD with a size of 50 megabytes (MB). What originally began as an experiment to see how much software could fit in 50 MB eventually became a full Linux distribution. It can be installed on storage media with small capacities, like bootable business cards, USB flash drives, various memory cards, and Zip drives.

TightVNC is a free and open-source remote desktop software server and client application for Linux and Windows. A server for macOS is available under a commercial source code license only, without SDK or binary version provided. Constantin Kaplinsky developed TightVNC, using and extending the RFB protocol of Virtual Network Computing (VNC) to allow end-users to control another computer's screen remotely.

RealVNC is a company that provides remote access software. Their VNC Connect software consists of a server and client application, which exchange data over the RFB protocol to allow the Viewer to control the Server's screen remotely. The application is used, for example, by IT support engineers to provide helpdesk services to remote users.

Remote Desktop Protocol (RDP) is a proprietary protocol developed by Microsoft Corporation which provides a user with a graphical interface to connect to another computer over a network connection. The user employs RDP client software for this purpose, while the other computer must run RDP server software.

RFB is an open simple protocol for remote access to graphical user interfaces. Because it works at the framebuffer level it is applicable to all windowing systems and applications, including Microsoft Windows, macOS, the X Window System and Wayland. RFB is the protocol used in Virtual Network Computing (VNC) and its derivatives.

x11vnc is a Virtual Network Computing (VNC) server program. It allows remote access from a remote client to a computer hosting an X Window session and the x11vnc software, continuously polling the X server's frame buffer for changes. This allows the user to control their X11 desktop from a remote computer either on the user's own network, or from over the Internet as if the user were sitting in front of it. x11vnc can also poll non-X11 frame buffer devices, such as webcams or TV tuner cards, iPAQ, Neuros OSD, the Linux console, and the Mac OS X graphics display. x11vnc is part of the LibVNCServer project and is free software available under the GNU General Public License. x11vnc was written by Karl Runge.

NX technology, commonly known as NX or NoMachine, is a remote access and remote control computer software, allowing remote desktop access and maintenance of computers. It is developed by the Luxembourg-based company NoMachine S.à r.l.. NoMachine is proprietary software and is free-of-charge for non-commercial use.

Remote administration refers to any method of controlling a computer or other Internet-connected device, such as a smartphone, from a remote location. There are many commercially available and free-to-use software that make remote administration easy to set up and use. Remote administration is often used when it's difficult or impractical to be physically near a system in order to use it or troubleshoot it. Many server administrators also use remote administration to control the servers around the world at remote locations. It is also used by companies and corporations to improve overall productivity as well as promote remote work. It may also refer to both legal and illegal remote administration.

rdesktop

rdesktop is an implementation of a client software for Microsoft's proprietary Remote Desktop Protocol (RDP). Rdesktop is free and open-source software, subject to the requirements of the GNU General Public License (GPL-3.0-or-later), and is available for Linux and BSD as well as for Microsoft Windows.

A home server is a computing server located in a private computing residence providing services to other devices inside or outside the household through a home network or the Internet. Such services may include file and printer serving, media center serving, home automation control, web serving, web caching, file sharing and synchronization, video surveillance and digital video recorder, calendar and contact sharing and synchronization, account authentication, and backup services. In the recent times, it has become very common to run literally hundreds of applications as containers, isolated from the host operating system.

In computing, the term remote desktop refers to a software- or operating system feature that allows a personal computer's desktop environment to be run remotely from one system, while being displayed on a separate client device. Remote desktop applications have varying features. Some allow attaching to an existing user's session and "remote controlling", either displaying the remote control session or blanking the screen. Taking over a desktop remotely is a form of remote administration.

This page is a comparison of notable remote desktop software available for various platforms.

Adaptive Internet Protocol (AIP) is a multi-channel protocol that allows an application running on any of multiple platforms to be displayed on any of a wide range of client systems. It supports rich remote display and input services with a number of display options to deliver the presentation of the remote applications onto the local display either as a standalone window, or within a contained remote environment delivered full-screen or in a standalone window. The protocol also supports audio, printing, and other device mapping services.

Remote Desktop Services (RDS), known as Terminal Services in Windows Server 2008 and earlier, is one of the components of Microsoft Windows that allow a user to initiate and control an interactive session on a remote computer or virtual machine over a network connection. RDS was first released in 1998 as Terminal Server in Windows NT 4.0 Terminal Server Edition, a stand-alone edition of Windows NT 4.0 Server that allowed users to log in remotely. Starting with Windows 2000, it was integrated under the name of Terminal Services as an optional component in the server editions of the Windows NT family of operating systems, receiving updates and improvements with each version of Windows. Terminal Services were then renamed to Remote Desktop Services with Windows Server 2008 R2 in 2009.

VideoOverIP is a remote desktop protocol developed by Texas-based, desktop virtualization and cloud computing company VDIworks.

<span class="mw-page-title-main">Remmina</span> Remote desktop software client for POSIX-based operating systems

Remmina is a free and open source remote desktop client for POSIX-based computer operating systems. It supports the Remote Desktop Protocol (RDP), VNC, NX, XDMCP, SPICE, X2Go and SSH protocols and uses FreeRDP as foundation.

<span class="mw-page-title-main">Chrome Remote Desktop</span> Remote desktop software tool

Chrome Remote Desktop is a remote desktop software tool, developed by Google, that allows a user to remotely control another computer's desktop through a proprietary protocol also developed by Google, internally called Chromoting. The protocol transmits the keyboard and mouse events from the client to the server, relaying the graphical screen updates back in the other direction over a computer network. This feature, therefore, consists of a server component for the host computer, and a client component on the computer accessing the remote server. Chrome Remote Desktop uses a unique protocol, as opposed to using the common Remote Desktop Protocol.

References

  1. "neutrinolabs/xrdp". github.com. Github. Archived from the original on 2018-03-01. Retrieved 2018-09-22.
  2. "School of GeoSciences:XRDP". ed.ac.uk. The University of Edinburgh.
  3. "Install and configure Remote Desktop to connect to a Linux VM in Azure". docs.microsoft.com. Microsoft. Archived from the original on 2018-08-15. Retrieved 2018-10-03.
  4. "XRDP from Mac". it.ece.iastate.edu. Iowa State University.
  5. "Xrdp". Archived from the original on 2018-08-17. Retrieved 2018-09-22.
  6. "Xrdp". Archived from the original on 2018-02-14. Retrieved 2018-09-22.
  7. "Remote Desktop Connection to Linux from Windows using the XRDP server". Archived from the original on 2021-09-03. Retrieved 2021-09-03.

More reading