Difference between revisions of "Xrdp"

From ArchWiki
Jump to: navigation, search
(See also: avoid redirect)
(Running as Terminal Server (Xorg): style)
 
(24 intermediate revisions by 11 users not shown)
Line 1: Line 1:
[[Category:Remote Desktop Protocol]]
+
[[Category:Remote desktop]]
 +
[[ja:Xrdp]]
 
'''xrdp''' is a daemon that supports Microsoft's [[Wikipedia:Remote Desktop Protocol|Remote Desktop Protocol]] (RDP).
 
'''xrdp''' is a daemon that supports Microsoft's [[Wikipedia:Remote Desktop Protocol|Remote Desktop Protocol]] (RDP).
It uses Xvnc or X11rdp as a backend.
+
It uses Xvnc, X11rdp or xorgxrdp as a backend.
  
 
== Installation ==
 
== Installation ==
There is {{AUR|xrdp}} in the [[AUR]]. However, this doesn't work without further changes and it depends on {{Pkg|tightvnc}}, which has severe problems giving the correct colors.
 
  
With {{AUR|xrdp-git}} there is currently a better alternative. It depends on {{AUR|tigervnc}}, which is a successor of ''tightvnc'' that doesn't have the mentioned problems.
+
[[Install]] the {{AUR|xrdp}} package (or alternatively {{AUR|xrdp-git}} for the development version).
  
=== Fixing Problems in {{AUR|xrdp}} ===
+
=== Autoboot at startup ===
You won't have these problems when you use {{AUR|xrdp-git}} so you can skip this section when you chose the git version.
+
The {{AUR|xrdp}} package contains service files for systemd. [[Enable]] {{ic|xrdp.service}} and {{ic|xrdp-sesman.service}}.
  
If Xvnc (tightvnc) fails with
+
=== Running as Terminal Server (Xorg) ===
{{bc|Fatal server error:
+
[[Install]] the {{AUR|xorgxrdp-git}} package.
could not open default font 'fixed'}}
 
you must create a symlink at {{ic|/usr/X11R6/lib/X11/fonts}} pointing to {{ic|/usr/share/fonts}}.
 
  
''xrdp'' will just fail without giving you that error. You can only see the error message when you try to start Xvnc manually for a test.
+
Add {{ic|1=allowed_users=anybody}} to {{ic|/etc/X11/Xwrapper.config}} to allow anybody to start X
  
To fix the message {{ic|Couldn't open RGB_DB '/usr/X11R6/lib/X11/rgb'}} copy {{ic|/usr/share/X11/rgb.txt}} to {{ic|/usr/X11R6/lib/X11/rgb.txt}} or create a symlink. If this file is missing, standard X11 colors are wrong (pink or blue instead of black) and Xterm is broken.
+
Edit {{ic|~/.xinitrc}} or {{ic|/etc/X11/xinit/xinitrc}} to launch your DE.
  
=== Autoboot at Startup ===
+
=== Running with Vino (Gnome VNC-Server for root session) ===
When you installed {{AUR|xrdp-git}} you can just add rdpd to the DAEMONS section of /etc/rc.conf file.
 
  
Otherwise you have to copy {{ic|/etc/xrdp/xrdp.sh}} to {{ic|/etc/rc.d}} and use that.
+
Enable the server to be seen via vino-preferences.
 +
Since vino defaults to port : 5900 for connections, we will edit the xrdp configuration file to understand this.
 +
Append the the vino session to xrdp's configuration file (/etc/xrdp/xrdp.ini) with the following code :
 +
{{bc|<nowiki>
 +
# echo "
 +
[xrdp8]
 +
name=Vino-Session
 +
lib=libvnc.so
 +
username=ask
 +
password=ask
 +
ip=127.0.0.1
 +
port=5900
 +
" >> "/etc/xrdp/xrdp.ini"
 +
</nowiki>}}
 +
 
 +
Remember to restart the xrdp server, and one should be able to connect to the vino session (tested using xfreerdp).
  
 
== Usage ==
 
== Usage ==
Line 39: Line 51:
  
 
== See also ==
 
== See also ==
* [[Vncserver]] - VNC, an alternative to RDP, also used as backend here
+
 
 +
* [[TigerVNC]] - VNC, an alternative to RDP, also used as backend here
 +
*{{Pkg|freerdp}} a rdesktop fork that supports RDP 7.1 features including network level authentication (NLA). See also [http://askubuntu.com/a/97932/217269].

Latest revision as of 10:41, 28 August 2017

xrdp is a daemon that supports Microsoft's Remote Desktop Protocol (RDP). It uses Xvnc, X11rdp or xorgxrdp as a backend.

Installation

Install the xrdpAUR package (or alternatively xrdp-gitAUR for the development version).

Autoboot at startup

The xrdpAUR package contains service files for systemd. Enable xrdp.service and xrdp-sesman.service.

Running as Terminal Server (Xorg)

Install the xorgxrdp-gitAUR package.

Add allowed_users=anybody to /etc/X11/Xwrapper.config to allow anybody to start X

Edit ~/.xinitrc or /etc/X11/xinit/xinitrc to launch your DE.

Running with Vino (Gnome VNC-Server for root session)

Enable the server to be seen via vino-preferences. Since vino defaults to port : 5900 for connections, we will edit the xrdp configuration file to understand this. Append the the vino session to xrdp's configuration file (/etc/xrdp/xrdp.ini) with the following code :

# echo "
[xrdp8]
name=Vino-Session
lib=libvnc.so
username=ask
password=ask
ip=127.0.0.1
port=5900
" >> "/etc/xrdp/xrdp.ini"

Remember to restart the xrdp server, and one should be able to connect to the vino session (tested using xfreerdp).

Usage

After starting xrdp you can point any RDP client to localhost (on standard RDP port 3389) xrdp will give a small message window.

When you choose sessman-Xvnc you can give a username and password for any account on your host and xrdp will start another Xvnc instance for you. Opening a window manager out of a SESSION list provided in /etc/xrdp/startwm.sh.

When you just close the session window and RDP connection, you can access the same session again next time you connect with RDP. When you exit the window manager or desktop environment from the session window, the session will close and a new session will be opened the next time.

xrdp checks only if a session with the same geometry is already opened. It will start a new session if the geometry/resolution doesn't match.

See also

  • TigerVNC - VNC, an alternative to RDP, also used as backend here
  • freerdp a rdesktop fork that supports RDP 7.1 features including network level authentication (NLA). See also [1].