Microsoft Remote Desktop Linux



Whether you need to allow employees to efficiently work from home or branch offices, or you want to facilitate troubleshooting tasks for the IT team, remote access is critical. For many IT support workers, providing remote support to users and remotely accessing devices has become an everyday necessity. Remote desktop connection for Linux systems from Windows machines can be easily achieved in different ways, and this article guides you through the main ones. I’ll also help you choose the best solution for what you need to achieve when trying to access Linux desktops remotely. My top picks for tools include SolarWinds® Dameware® Remote Support and SolarWinds Dameware Remote Everywhere, for the flexibility and security they offer.

Accessing Linux Desktops Remotely

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. (Quote from That’s it. Ubuntu 20.04 Remote Desktop Access from Windows 10 step by step instructions. First step is to install Remote Desktop Protocol (RDP) server xrdp on the Ubuntu 20.04 desktop. To do so execute the following command: $ sudo apt install xrdp Enable to start after reboot and run the remote desktop sharing server xrdp: $ sudo systemctl enable -now xrdp. Vinagre is the default remote desktop client for the GNOME desktop. That’s why it is also the default remote desktop client for Linux Kamarada 15.1, the current stable release. Like Remmina, it supports some connection protocols: SSH, RDP, SPICE and VNC. However, like rdesktop, Vinagre is unmaintained for some time now. To RDP to Linux, run the Remote Desktop software on your Windows machine. In Windows 8 and later, it can be found via Search, simply by inputting the letters, 'rdp'. With the Remote Desktop Connection window open: Input the IP address Use Show Options for any advanced connection requirements Click Connect.

Generally, a remote connection is defined as any software allowing you to remotely access a device from a geographical distance. More specifically, a remote desktop connection allows the user to control the host computer from any location. The remote connection gives the user remote access to files and software but also allows them to manage the system and troubleshoot issues on machines, not in close proximity. I’ll go through a few options for when you want to establish a remote connection with devices on the same network, and then I’ll look at some tools for remote access over the internet.

Here’s how to access a Linux desktop from Windows remotely:

When dealing with devices operating on the same network, a few simple, open-source approaches can be used to remotely access a Linux desktop from Windows machines.

1. Get the IP Address

Before everything else, you need the IP address of the host device—the Linux machine you want to connect to. Log in to your Linux device, open the terminal and enter:

This will display the device’s IP address. The IP address can also be found by connecting to the network’s router and browsing the devices by hostname. You can then use this information from the Windows machine to connect.

2. The RDP Method

The easiest way to set up a remote connection to a Linux desktop is to use Remote Desktop Protocol, which is built into Windows.

For this to work, you need to install xrdp software on your Linux machine. This can be done either in person or by using SSH (see below) by entering the command:

Once this is done, type “rdp” in the search function and run the Remote Desktop software on your Windows machine. In the Remote Desktop Connection window, enter the IP address of the Linux machine and click connect. Click “Show Options” to select advanced parameters.

3. The VNC Method

To remotely access a device through Virtual Network Connection, you’ll need to install dedicated software on both the Linux and Windows machines. One of the most popular open-source choices for this is TightVNC.

Again, this can be installed on your Linux system either in person or through SSH by entering the command:

Then run it using:

and set a password.

Once you have done this, run the client app on Windows (available on the TightVNC website), and enter the IP address and port number in its window. Click connect and enter the password you set.

4. Use SSH

While Secure Shell doesn’t allow remote desktop connections, it’s still a great way to access your Linux machine to install the software necessary to access a Linux desktop remotely. To do this, in your Windows machine, select Windows PowerShell in the Power Menu and enter:

Windows Remote Desktop Linux Server

Accept the certificate and input the username and password. You are now connected.

The approaches explained above are valid for all Linux systems except Ubuntu, which provides a built-in remote desktop tool supporting both RDP and VNC. Make sure you set up this feature on the physical Ubuntu machine the first time, and you won’t need to install anything else.

5. Over-the-Internet Remote Desktop Connection Tools

The solutions above will work easily for devices operating on the same network. However, when your devices are located on different networks, things get complicated quickly. If you’re looking to remotely access a Linux machine from anywhere, at any time, and without having to deal with firewalls and port forwarding, the best solution is to use a software designed to provide remote connection over the internet. These types of software allow for more complex functions and are ideal for traveling or providing remote IT support to product users. These are my top choices for tools for accessing Linux desktop from Windows remotely.

SolarWinds Dameware Remote Support

SolarWinds Dameware Remote Support (DRS) is an affordable and user-friendly remote support software with several advanced features. DRS allows you to initiate remote connections over the internet, by using a Proxy server and without a VPN. You can remotely access devices running a Linux system (as well as many other operating systems) located anywhere, including sleeping or powered-off machines. You can also manage operations such as remote troubleshooting, remote Active Directory management and administration, and exporting Active Directory objects and system configurations.

This easy-to-use interface offers built-in utilities to help IT technicians during remote sessions. This includes features such as screenshot capture, in-session chat, and file transfer. Furthermore, DRS can be easily used “on the go” from Android and iOS devices. You can try out a free trial of DRS here.

SolarWinds Dameware Remote Everywhere

SolarWinds Dameware Remote Everywhere (DRE) is a cloud-based remote support software offering most of the features available in DRS, plus some unique features. In DRE, you can record remote sessions and create reports that can subsequently be used to search and review remote sessions histories. In addition, sessions can be transferred between technicians, and DRP and Port forwarding are both supported. The Alerts and Monitoring feature enables real-time alerts for all connected devices and provides advanced monitoring of system health status. Finally, on the user-end experience side, DRE offers the possibility for pre-session and in-session chats, the ability to send a session link via email, and customizable surveys. A free trial of DRE is also available here.

Get Started Accessing Linux Desktops From Windows

With just a few easy commands and installing some basic software, DRP and VCN will let you access the desktop of a Linux machine from a Windows machine running on the same network. These options can be good for smaller networks and small businesses and when you have to access a machine infrequently.

On the other hand, for more complex requirements—like remote access while traveling or for IT support—a dedicated tool is the best solution. I recommend a tool like SolarWinds Dameware Remote Support or SolarWinds Dameware Remote Everywhere. If you are running a large enterprise and are looking for remote access tools designed to provide comprehensive support, DRS and DRE are excellent options.

In the previous post, we saw how to use Linux RDP clients to remotely access Windows desktops or apps provided by Terminal Services, a Windows Server technology. But what if you need to provide Linux desktops to be accessed by Windows clients (a kind of “Linux-based Terminal Services”), is it possible?

Yes, it is! Today you are going to see how to achieve that on Linux Kamarada and openSUSE using XRDP.

XRDP is a remote desktop server for Linux based on the Remote Desktop Protocol (RDP), the same protocol used by the Windows app Remote Desktop Connection and the RDP clients for Linux that we saw in the previous post.

Installing XRDP

Remote Desktop Linux To Windows

On the Linux PC or server that will provide desktops for remote access (let’s just call it “server” from now on), install XRDP by running the following commands as root:

Enable the XRDP service, so that it gets automatically started at boot time:

You can also start the XRDP service immediately, you don’t need to reboot the server:

Installing VNC

To provide remote access via RDP, a Windows native protocol, XRDP behind the scenes uses VNC, a remote access protocol more common in Linux. Therefore, before using XRDP itself, we need to install VNC, which is an easy task on Linux Kamarada and openSUSE thanks to the YaST Control Center.

Open the YaST Control Center by opening the Activities menu , on the top-left screen corner, typing yast and clicking the corresponding icon:

Within the Network Services category, click the Remote Administration (VNC) item:

Desktop

On the next screen, check the Allow Remote Administration with Session Management option and click Next:

(actually, I tested both of the first two options and saw no difference at the end)

YaST informs you that it needs to install the vncmanager package. Click Install:

Wait for the installation and configuration process to finish. At the end, click OK:

Configuring the firewall on the server

To finish the installation and configuration of XRDP, just one thing is missing: set up the server firewall to allow the port used by RDP, which is, by default, the port 3389/TCP.

If you use firewalld, which is Linux Kamarada’s default firewall, the RDP protocol is a predefined service named ms-wbt (acronym for Microsoft Windows-Based Terminal). You just need to open it in your network interface zone. Assuming it is the public zone, you can open it with the command (modify as needed):

Windows Remote Desktop Linux

Then, reload the firewalld rules:

Microsoft Remote Desktop Linux Mint

If you use the iptables firewall, to allow the port 3389/TCP, append these lines to your configuration script:

Note that you just need to set up the firewall on the server. If it was also needed on the client, we would have done it in the previous post.

Logging out from the server

While using Windows’ Remote Desktop Connection, you cannot locally use the server and remotely access it at the same time: if you start a remote access, the server screen becomes locked. The same way, if you log on to the server, remote access is interrupted.

On Linux, XRDP works similarly, with the difference that it does not lock screens nor close connections automatically. Instead, you yourself must do it manually. Before starting a remote access to an XRDP server, you must log out from that server.

To log out from Linux Kamarada, open the system menu, on the top-right screen corner, expand the dropdown menu with your username and click Log Out:

Remote access from a Windows PC

On the Windows PC from which you are going to remotely access the Linux server, open the Start menu, type remote and click Remote Desktop Connection:

Enter the IP address or hostname of the Computer you want to connect to (e.g. 10.0.0.253) and click Connect:

The Remote Desktop Connection app asks if it can trust connecting to the remote computer. Check the Don’t ask me again for connections to this computer option and click Yes:

Then, the Windows RDP client shows the XRDP login screen:

Enter your username and password on the Linux server and click OK.

You will now access your desktop on the Linux server:

(note that the remote access is full screen by default, but you can switch to a window)

When you no longer need the remote desktop, remember to log out from the Linux server.

Tip: saving connection settings for quick access

If you are going to access this Linux server often, you can, for convenience, save the connection settings in some easily accessible place, such as the Desktop.

To do this, on the Remote Desktop Connection main screen, click Show Options. Enter the IP address or hostname of the remote Linux Computer. Also enter your User name on that computer. Optionally, check the option Allow me to save credentials if you want to save your password too. Finally, click Save As:

Choose a folder and a name for the file and save it.

Microsoft

Then click Connect. Let’s make a quick connection just to save the password.

The app asks if you trust connecting to this remote computer. Check the option Don’t ask me again for connections to this computer and click Connect:

If you chose to save your password, enter it on the next dialog box, make sure the Remember me option is checked (it is, by default) and click OK:

You will now actually access the remote desktop. You can just log out.

That’s it! From now on, when you need to remotely access that Linux server, just double-click the file:

Remote access from a Linux PC

If your Linux PC has an RDP client installed, you can remotely access another Linux PC or server running XRDP, that is, a Linux to Linux RDP connection:

For more information on the RDP clients available for Linux, see the previous post:

Conclusion

As we’ve seen, XRDP is a practical way of providing remote access to Linux from Windows, since it’s not necessary to install additional software on Windows, which has a native RDP client.

In a way, it is also a practical way of providing remote access from Linux to Linux. One just needs to install XRDP on the server machine and on the client machines, one of the RDP clients listed in the previous post.

References