Some IT infos

Aller au contenu | Aller au menu | Aller à la recherche

Efficient Remote Desktop on linux: xrdp with RemoteFX

The two most known Remote Desktop Service on linux are XDMCP and VNC.

  • XDMCP because of the nature of X11, allowing network support directly into the protocol by design. Mostly known by advanced linux admins and seniors unix users.
  • VNC because of the easy to install a server, the availability to get a free server and client. Mostly known by users working on other platform (Windows, Mac).

These two protocol suffer from performance issue.

There is still place for RDP, mostly known because of the remote desktop service for microsoft servers, also some implementation exist in Linux: xrdp

"RemoteFX"

xrdp is a old project. Its website is "WEB 1.0 Ready", but don't pay attention, xrdp is still maintened and new features are coming. If you look on Github's Repository, the project is active. One interesting feature added recently, appart the RDP driver for Xorg, is the support for RemoteFX Codec:

RemoteFX covers three part: vGPU, USB redirection, and a codec to stream videos (RDP 7.1). RemoteFX Codec is the feature available now in xrdp

The library itself to use is librfxcodec and you need to compile xrdp with the option --enable-rfxcodec

Installation

Note: don't use packages version of xrdp, it's probably 0.6, and is very old. Prefer using source. There is still no tarballs available for xrdp, but get sources from github, it's currently stable.

#!bin/bash

# Get packages
apt-get install libx11-dev libxfixes-dev libssl-dev libpam0g-dev libtool libjpeg-dev flex bison gettext autoconf libxml-parser-perl libfuse-dev xsltproc libxrandr-dev  python-libxml2 nasm xserver-xorg-dev fuse

#clone repo
git clone https://github.com/neutrinolabs/xrdp.git
git submodule init
git submodule update

#lib  RFXcodec
cd librfxcodec
make
cd ..

#rdp module for xorg
cd xorgxrdp/
./bootstrap 
./configure 
make
sudo make install
cd ..

#xrdp itself
./bootstrap
./configure --enable-fuse  --enable-rfxcodec --enable-fuse --enable-jpeg
make
sudo make install

#generate keys:
sudo xrdp-keygen  xrdp auto 2048
service xrdp start

Usage

You'll need a RDP client capable to support remoteFX RDP 7.1. : Windows7 native client, xfreerdp, or Microsoft Remote Desktop on mac (based on freerdp)

xfreerdp /rfx /v:remote-server.local

At login, choose Session Manager in the combo box to use Xorg + RDP module, instead of the old X11rdp binary

To see the difference with "RemoteFX", play a video from youtube in your browser in the remote session. Even on a slow link, you'll be able to watch the video without lag!

Ajouter un commentaire

Les commentaires peuvent être formatés en utilisant une syntaxe wiki simplifiée.

Fil des commentaires de ce billet