Using Remote Desktop to connect to a Microsoft Azure Linux VM
Important
Classic VMs will be retired on March 1, 2023.
If you use IaaS resources from ASM, please complete your migration by March 1, 2023. We encourage you to make the switch sooner to take advantage of the many feature enhancements in Azure Resource Manager.
For more information, see Migrate your IaaS resources to Azure Resource Manager by March 1, 2023.
Note
Azure has two different deployment models for creating and working with resources: Resource Manager and Classic. This article covers using the Classic deployment model. Microsoft recommends that most new deployments use the Resource Manager model. For the updated Resource Manager version of this article, see here.
Overview
RDP (Remote Desktop Protocol) is a proprietary protocol used for Windows. How can we use RDP to connect to a Linux VM (virtual machine) remotely?
This guidance will give you the answer! It will help you to install and config xrdp on your Microsoft Azure Linux VM, which lets you connect to it with Remote Desktop from a Windows machine. We will use Linux VM running Ubuntu or OpenSUSE as the example in this guidance.
The xrdp tool is an open source RDP server that allows you to connect your Linux server with Remote Desktop from a Windows machine. RDP has better performance than VNC (Virtual Network Computing). VNC renders using JPEG-quality graphics and can be slow, whereas RDP is fast and crystal clear.
Note
You must already have an Microsoft Azure VM running Linux. To create and set up a Linux VM, see the Azure Linux VM tutorial.
Create an endpoint for Remote Desktop
We will use the default endpoint 3389 for Remote Desktop in this doc. Set up 3389 endpoint as Remote Desktop
to your Linux VM like below:
If you don't know how to set up an endpoint for your VM, see this guidance.
Install Gnome Desktop
Connect to your Linux VM through putty
, and install Gnome Desktop
.
For Ubuntu, use:
sudo apt-get update
sudo apt-get install ubuntu-desktop
For OpenSUSE, use:
sudo zypper install gnome-session
Install xrdp
For Ubuntu, use:
sudo apt-get install xrdp
For OpenSUSE, use:
Note
Update the OpenSUSE version with the version you are using in the following command. The example below is for OpenSUSE 13.2
.
sudo zypper in http://download.opensuse.org/repositories/X11:/RemoteDesktop/openSUSE_13.2/x86_64/xrdp-0.9.0git.1401423964-2.1.x86_64.rpm
sudo zypper install tigervnc xorg-x11-Xvnc xterm remmina-plugin-vnc
Start xrdp and set xdrp service at boot-up
For OpenSUSE, use:
sudo systemctl start xrdp
sudo systemctl enable xrdp
For Ubuntu, xrdp will be started and enabled at boot-up automatically after installation.
Using xfce if you are using an Ubuntu version later than Ubuntu 12.04LTS
Because the current version of xrdp does not support Gnome Desktop for Ubuntu versions later than Ubuntu 12.04LTS, we will use xfce
Desktop instead.
To install xfce
, use this command:
sudo apt-get install xubuntu-desktop
Then enable xfce
using this command:
echo xfce4-session >~/.xsession
Edit the config file /etc/xrdp/startwm.sh
:
sudo vi /etc/xrdp/startwm.sh
Add the line xfce4-session
before the line /etc/X11/Xsession
.
To restart the xrdp service, use this:
sudo service xrdp restart
Connect your Linux VM from a Windows machine
In a Windows machine, start the Remote Desktop client and input your Linux VM DNS name. Or go to the Dashboard of your VM in the Azure portal and click Connect
to connect your Linux VM. In that case, you see the login window:
Log in with the user name and password of your Linux VM.
Next steps
For more information about using xrdp, see http://www.xrdp.org/.