Hello World,
Today, we will be writing a little bit about XRDP. If you follow us, you know that we have already provided quite useful posts. However, it seems that some of these posts are not always visible or that our readers do not always check for additional resources in our blog.
The post of today would be more a Frequently asked questions (and answer) about xRDP Software solutions. We would like to create a kind of knowledge base for our readers (and the rest of the world obviously). So, if you have encountered an issue or if you have performed some exotic xrdp configuration, let us know and we will publish your tip/workaround/solution on this post…
F.A.Q about xRDP Installation and Configuration
Question 1 – How to perform a standard xRDP Installation on Ubuntu
Answer : Based on your Ubuntu distribution, you might follow different post configuration actions. Since ubuntu 12.10, xrdp does not support the Unity Desktop and you will need to install an alternate desktop environment. Please review the following links below to see how you can perform installation and configuration of the XRDP software based on your Ubuntu Distribution :
- Remote Desktop Connection against Ubuntu 10.10
- How to use Remote Desktop connection against Ubuntu 12.04
- How to remote desktop into ubuntu 12.10 using xRDP
- How to install xrdp in Ubuntu 13.04
- Ubuntu 13.10 – How to install xrdp in Ubuntu 13.10
- Ubuntu 14.04 – How to install xrdp in Ubuntu 14.04
- Ubuntu 14.10 – How to install XRDP and have it working
Question 2 – I have performed a standard installation of xRDP but when I try to perform a remote connection, I have a blank or grey screen. How can I Fix This ?
Answer : Since Ubunut 12.10, the Unity Desktop is not supported with Xrdp. You will need to install an alternate desktop environment and tell your ubuntu system to use this alternate desktop session. Check the links on the Question 1 to see what additonal steps you need to perform in order to have a working xrdp infrastructure.
Question 3 – Which Alternate Desktop Environment can be used with XRDP solution ?
Answer : Since Ubuntu 12.10, you cannot use the Unity Desktop Environment. Since Ubuntu 13.04, you cannot use the Gnome-Fallback Desktop Environment.
You can use the following alternate desktops :
- XFCE
- LXDE
- LXQT
- KDE
- MATE*DESKTOP
We have not tested the Cinnamon interface yet but we think it would not work as it’s based on recent Gnome Desktop.
Question 4 – How to configure XRDP To Use KDE ?
Answer : Follow the instructions provided in this post : Ubuntu 14.10 – KDE as alternative Desktop for XRDP sessions
Question 5 – How to configure XRDP To Use LXQT ?
Answer : Follow the instructions provided in this post : Ubuntu 14.10 – LXQT as alternative Desktop for XRDP
Question 6 – How to configure XRDP To Use LXDE ?
Answer : Follow the instructions provided in this post : Ubuntu 14.04 – LXDE Desktop Alternative for XRDP
Question 7 – How to configure XRDP To Use MATE-DESKTOP ?
Answer : Follow the instructions provided in this post : Ubuntu 14.10 – How to install XRDP and have it working.
Note : The MATE-Desktop has been integrated in one of the Ubuntu flavor called UBUNTU REMIX.
Question 8 – How to configure XRDP To Use XFCE ?
Answer : Follow the instructions provided in this post : Ubuntu 14.10 – How to install XRDP and have it working
Question 9 – I want to use Unity or Gnome 3 with XRDP. Is it Possible ?
Answer : As mentioned in question 1, neither Unity nor Gnome 3 is supported and working with XRDP. You have to choose an alternate desktop environment while performing your remote desktop connection
Question 10 – How to Reconnect to the same session ?
Answer : Since the release of Ubuntu 14.10 and the xrdp package version 0.0.6.1-1, you do not need to perform any configuration to reconnect to the same session. This feature is available out of the box. Check these links :
- XRDP – Reconnect to existing sessions made easier – New xrdp package on Ubuntu repository
- XRDP – Quick Demo Installation & Reconnection
Another option is to perform a custom installation of xrdp in conjunction with X11VNC. If you want to test the latest version of xrdp, you can try the procedure described hereafter
- xRDP – How to perform a Custom installation on Ubuntu 14.10
- Ubuntu 14.04 – Perform a custom XRDP Install (using X11VNC)
Question 11 – Can Multiple Users Connect via XRDP ?
Answer : Yes, multiple users can connect via the XRDP software solutions. For each user that needs to connect, you will need to configure the .xsession file. You can either manually create this file or you can use the use the following procedure to automate the creation of the .xsession file when you have multiple users that need to access the system via xrdp :
Question 12 – Is there any workaround to connect to Unity via XRDP ?
Answer : There is indeed a quick and dirty way to connect to an Ubuntu machine and connect to the Unity Desktop. As mentioned, this is a workaround where you use the xrdp interface to basically perform a vnc connection. Follow the process described hereafter
Question 13 – Can I customize the xrdp Login screen ?
Answer : You can modify some visual elements of the XRDP login screen. please review the information provided at :
- How to customize xrdp login screen on Ubuntu 12.10 – Part III
- XRDP – Customize the XRDP Login Screen (on Ubuntu 15.04) (if you have performed a custom installation of xrdp)
You can also have a look at the following utility which might help you in customizing your xrdp login screen
Question 14 – When connected to remote session, my keyboard does not recognize some special characters. What can I do ?
Answer : You can have a look at the following post :
This should apply to the standard xrdp package available within the Ubuntu repository. Newer version of the package seems to use another method. We will provide updates information about this in a coming post and will update this FAQ
Please give it a try and provide feedback to us so we can update the information about this topic.
Question 15 – I have installed X11VNC and XRDP but not VNC4Server. I have errors connecting via XRDP. What’s the problem ?
Answer: It seems that xrdp has dependencies with vnc4server. You will need to install the vnc4server package even if you are using the X11VNC package. After installing the package, you should be able to connect to your xrdp session.
Question 16 – I would like to use X11RDP with XRDP. How to perform the installation ?
Answer: The easiest way to install x11RDP and xRDP is to use the X11RDP-o-Matic tool that can be found at this link : http://scarygliders.net/2014/03/19/x11rdp-o-matic-version-3-10-released/.
Review the documentation first and see if this fits your needs
Question 17 – Can I use SSH in Conjunction with XRDP to improve security ?
Answer : yes, you can. please follow the instruction located at Ubuntu 14.10 – How to secure Xrdp Connection using SSH
Question 18 – When I connect to xrdp, I receive an error message similar to …only supporting 8,15,16,24 bpp rdp connections. What does that means ?
Click on Picture for better resolution
Answer: One possibility is that your remote desktop client is set to use Highest Quality (32) Colors. You have to lower this setting
Click on Picture for better resolution
Question 19 – I would like to perform a custom installation of XRDP. It’s look difficult. Is there any ways to simplify the process ?
Answer : You have two options here. Either you use the script we are providing. The script will automate the custom installation for you. We are working an a small update that will make our lives a little bit more easier as well. To obtain the script, read the following post :
- xRDP – How to perform a Custom installation on Ubuntu 14.10
- XRDP- Perform a Custom installation on Ubuntu 15.04
When the new version of the script will be released, we will update the link above…
The other option would be to use the x11rdp-o-matic utility that can be found at http://scarygliders.net/2014/03/19/x11rdp-o-matic-version-3-10-released/.
Question 20 – I still cannot login to my XRDP session. Where should I look for troubleshooting my issues?
Answer: xRDP writes some log files into your system. We would recommend you to have a look at these log files. These logs files might provide useful insight about the problem you are encountering.
You should look at the following files
- ~/.xsession-errors
- /var/log/xrdp.log
- /var/log/xrdp-sesman.log
Question 21 – Everybody is using Windows and Remote Desktop Client. Can I connect from a linux machine to a remote machine using xRDP ?
Answer : Yes, you can. By default, Ubuntu ship with a remote desktop client called Remmina. You can use this tool to perform a remote desktop connection via xrdp. There are other remote desktop client out there (such as rdesktop, or gnome remote desktop client,…).
Feel free to choose your preferred one.
Question 22 – In the xrdp login screen or during my remote desktop session, my keyboard layout is set to English and not the one I use when performing a local connection to Ubuntu. Can I change this behavior ?
Answer : Yes, you can. Review this post XRDP – Reconnect to existing sessions made easier – New xrdp package on Ubuntu repository and check the section :Configure your Keyboard layout at the xrdp Login screen
Question 23 – If I use a localized version of Ubuntu while locally logged in, should I receive the same localized settings in my xrdp session ?
Answer : If you use the latest version of the xrdp package (from ubuntu repository), the answer is yes. To illustrate the situation, let’s assume that you have set your ubuntu system to use with french interface. When you perform the xrdp connection, the remote session will display the french interface to you. This is because your startwm.sh file contains a line like this EXPORT_LANG that will tell the system to load the french version while connected to xrdp session
Question 24 – After performing a custom xrdp installation, the first connection attempt fails, successive ones are working. What’s the problem ?
Answer : It seems that when you perform the first connection, the vnc service is not ready to answer the request and thus connection fail. To avoid this situation, you simply need to add in the /etc/xrdp/xrdp.ini file in the section used by the Sesman-Xvnc the parameter delay_ms=2000. Please review the following post – Tips – xRDP Custom Installation Possible Issues and Solutions
Thank you for this FAQ! I’m still having trouble getting xrdp to work on Ubuntu 15.04, unfortunately. The service is running and active. However, when I try to connect using Windows RDC, I see the Windows connection window briefly and then it just disappears. It doesn’t even appear to try to connect. I feel like this started when I switched my Ubuntu machine over to a static IP address. Is it possible there’s something in my static IP configuration that’s causing an issue? Do I need to specify that IP address somewhere in the xrdp configuration? I have the RDP port (3389) appropriately forwarded on my router, and I can connect to the computer’s shared files over the LAN and connect to the internet from it. I looked in the three log files recommended above and see nothing related to current connection attempts. Do you have any ideas on what the issue could be?
Hello Captain, 🙂
The fact that you are using a Fixed ip should be a problem. the ip address is only the entry point…..for xrdp….
Did you upgrade your ubuntu 14.xx to ubuntu 15.04 ? or you have done a standard installation procedure on your ubuntu 15.04 for xrdp (Possibly review this post)
is the fixed ip address specified in your router for port forwarding on port 3389 or are you still using the old one or did you specify a specific subnet ?
seems to be more a router/networking configuration issue… To validate this, try to install a windows machine on the same subnet as the xrdp server and try to perform xrdp. If this is working, problems lies somewhere else (network)
Hope this help
Till next time
See ya
I figured out the problem(s). There were actually quite a few. First off, I had copy/pasted the custom install script, which caused issues because of the font-formatting of the quotes (the sed commands were failing). Once I manually fixed those issues, it got a bit further. Then, I realized my rsakeys were never getting generated, so I generated them, put them in the right location, and I could finally connect – but the connection was bringing up xterm rather than the Desktop. Then I looked at my startwm.sh and realized it was a broken link, as I have not /etc/X11/Xsession file. So, I found the original version of the file, replaced the “xterm” line with “mate-session” and it finally works. I’m not sure why it’s not using the .xsession file I have in my Home folder though. At any rate, it’s working, so I’m just happy I finally figured it out. That was quite a pain to troubleshoot.
Hey Captain,
Thank you for the feedback… It’s not the first time that the font formatting is causing an issue. I will try to fix that either by providing a download link or by updating the web site design…
Sorry for the annoyance…
Thank for sharing all the useful information provided so far. This is how we can move forward ….
Till next time
See ya
One final question – I’m now able to connect to my Ubuntu 15.04 machine running xrdp with no issues from the Remote Desktop on my Windows machines. However, when trying to connect using the Android RD Client from Microsoft, I get the following error message: “Your session ended because of a protocol error. If this keeps happening, ask your admin or tech support for help. Error code: 0xd06” I don’t know if there’s anything that can be done client side to fix it, but I wanted to mention it and ask just in case there is. It seems this is also a problem on Windows Phone, so it may just be something with the Remote Desktop protocol itself: https://windowsphone.uservoice.com/forums/101801-feature-suggestions/suggestions/6531312-remote-desktop-and-xrdp-clients-error-0xd06
Hello Captain,
I have no clue either as we do not use Windows Phones…..
The error message reminds me a issue we had with rdp and compression settings used.
Check if you can adjust the compression settings on your xrdp server (or on your rdp client) and see if this change the rdp experience
Hope this help
Till next time
See ya
Captain Throwback, I am getting the same error trying to connect with RDC on android to my XRDP server. Have you had an success with that issue?
Read that this error:“Your session ended because of a protocol error. If this keeps happening, ask your admin or tech support for help. Error code: 0xd06” happens when connecting to a WIndows 2008 or higher server due to compression on server side being set too high for the client. Maybe changing the compression settings if possible on XRDP server would resolve this issue.
Hello Kirk,
As mentioned, we have never tested xrdp from rapsberry or android devices (so far…might come soon). This error looks like the one described here
So compression might be your issue, check on the xrdp server if you can change the compression level (something like crypt_level). Check on the android client if you can change compression settings as well
Hope this help
Please provide feedback if you find out more about this…we will then possibly publish something as well to help out other people with the same issue
Till next time
See ya
Question 18 – When I connect to xrdp, I receive an error message similar to …only supporting 8,15,16,24 bpp rdp connections. What does that means ?
For Windows 10, Search Google and get Remote Desktop Connection Manager 2.7. Run this and you can connect with 32 depth color without having to make any changes. You could also get it thru their store but if you’re like me you have dumped all the MS bloatware.
For Fedora 23
yum (or dnf) install xrdp
systemctl enable xrdp.service
systemctl start xrdp.service
systemctl enable xrdp-sesman.service
systemctl start xrdp-sesman.service
If SELinux is running
chcon –t bin-t /usr/sbin/xrdp
chcon –t bin_t /usr/sbin/xrdp-sesman
systemctl reenable xrdp.service
systemctl start xrdp.service
systemctl status xrdp.service
To turn off SELinux
Edit /etc/selinux/config
Selinux=disabled
Hello There,
Thank you for the visit and the info. We will check this and try to integrate this info in our next posts…
Till next time
See ya
If you are a Linux user and want to connect to XRDP using RDP the best app in my opinion is xfreerdp which is also under development by neutrinolabs who work on xrdp.
The freerdp command line interface (CLI) is very easy to use and supports much of microsoft’s rdp:
https://github.com/FreeRDP/FreeRDP/wiki/CommandLineInterface
cut&paste will work from your remote desktop session to your local linux desktop apps, audio works etc.
Its easy enough to create simple launcher ICONs for your desktop that use FreeRDP by using something like Arronax (http://www.florian-diesch.de/software/arronax/)
First, use FreeRDP from a terminal to test out your command line connection to the remote Linux Desktop/xrdp. After you get everything working. Copy that command line into the Arronax GUI give it a title that’s meaningful then when you click the little “down arrow” on the menu it will create an appropriate “.desktop” file which you will want put in ~/.local/share/applications. From then on you can connect to that remote system desktop by just clicking on that .desktop icon.
I use all of this often. I’m also using guacamole installed on remote Ubuntu Machines. On the same machine as Guacamole is installed on I install x11rdp & xrdp and also Ubuntu-Mate desktop. With all that setup I can then from my local machine use an HTML5 browser to connect to quacamole, select the guacamole “connection” for the connection to XRDP on Ubuntu server itself. At that point I see my Mate desktop and am logged in. Its taken a little extra work to get pulseaudio working this way but I have that going now to.
Anyway… wanted to pass on some info related to what I have been able to do.
Hello There,
We will investigate rdp option in Linux in a few weeks.
Thank you for the feedback you already provided
Till next time
See ya
Its giving me an error that unable to locate package xrdp.
Even if I am online then also
HEllo There;
Please rephrase your question as the one you have submitted is a little bit crypty for us
Till next time
See ya
Avinash… xrdp is in debian & ubuntu repositories (not sure how old a version it is) if you are using a diff distro you may have to do some searching or googling for your distro
If the same user logs in using multiple terminals, all of them get connected to the same session. Here I have “ask = -1” in xrdp.ini.
How to make each login (same user name) start a new session?
Also is there a way to make sure that only one user can login in the server at one time.
I have centos 6.8 server. I downloaded xrdp-devel (as of August 1st 2016) tree and installed successfully. Everything is working fine except that when the same user logs in from 2 different sessions, the session is shared between both. I have port=-1 in the .ini file.
I want to put port=ask-1 and have the same user create new sessions each time and not share it unless the port number is specifically given
Thanks,
@Mahesh V,
XRDP design is to allow a user to reconnect to the same session (by default now), if you want to have the same user connecting to a new session each time, you have to specify a new port each time you make an xrdp connection….but I do not see the point, just create two or more users and have them using their own remote session
Hope this help
Till next time
See ya