How to install freerdp on ubuntu 20.04


## Introduction:

FreeRDP is a free implementation of the Remote Desktop Protocol (RDP), released under the Apache license. Enjoy the freedom of using your software wherever you want, the way you want it, in a world where interoperability can finally liberate your computing experience.

## Getting Start:

xfreerdp - FreeRDP X11 client


       xfreerdp [file] [options] [/v:server[:port]]

## Step1 : Install FreeRDP 

$ sudo apt update

$ sudo apt install freerdp2-x11

## Step2: How to connect with freerdp command

To connect to the remote desktop using xfreerdp, run a command of the form:

$ xfreerdp /f /u:USERNAME /p:PASSWORD /v:HOST[:PORT]

$ xfreerdp /multimon /u:setup@tic.local /v:

To toggle between full-screen and windowed modes, use the keyboard shortcut Ctrl+Alt+Enter.

When connecting for the first time, the following message about the problem with the certificate appears:

Since self-signed certificates are used without a private CA (authentication center, certification authority) added to the store, the only choice is to agree to trust the specified certificate, enter Y for this.

In full screen mode, you can disconnect from the remote desktop in two ways:

press the cross on the top panel

Start button → Shutdown → Disconnect

- To run in windowed mode, do not use the /f option:

$ xfreerdp /u:Tester /p:1234 /v:

- How to create shared folders in freerdp

With remote desktop connected via RDP, you can have shared folders. Let's look at a few examples.

To connect all mount points in the current system as shared folders on the remote desktop, use the +drives option, for example:

$ xfreerdp /u:Tester /p:1234 /v: +drives

The screenshot shows the remote Windows desktop, in which the Linux system folders are accessible:

- To connect only the home folder of the current Linux user as a network folder to the computer via RDP, specify the +home-drive option:

$ xfreerdp /u:Tester /p:1234 /v: +home-drive

In this case, the home folder is mounted on a system connected via the remote desktop protocol:

With the option /drive:NAME,/PATH/IN/LINUX, you can connect any folder with any name. The path in the current system must be specified as /PATH/IN/LINUX, and NAME is the name that will have the share in the remote system. For example, to connect the root folder of the current system (/) to the remote folder with the root name:

$ xfreerdp /u:Tester /p:1234 /v: /drive:root,/

- How to bring remote desktop to another monitor

If you have several monitors, then you can choose which one to use for the remote system. To list the monitors, run the command:

$ xfreerdp monitor-list

Select the monitor (or multiple monitors) identifier using the /monitors:<id>[,[,…]] option

- How to set the size of the remote desktop window

The following example connects to the host with the name USER and is 50 percent of the height.

$ xfreerdp /u:USER /size:50%h /

If width (w) is set instead of height (h), something like /size:50%w, then 50 percent of the width will be used.

/flag (enables flag)

/option:<value> (specifies option with value)

+toggle -toggle (enables or disables toggle, where '/' is a synonym of '+')

/v:<server>[:port]    Server hostname

/port:<number>        Server port

/w:<width>            Width

/h:<height>          Height

/size:<width>x<height> Screen size

/f                    Fullscreen mode

/bpp:<depth>          Session bpp (color depth)

/kbd:0x<layout id> or <layout name> Keyboard layout

/kbd-list            List keyboard layouts

/kbd-type:<type id>  Keyboard type

/kbd-subtype:<subtype id> Keyboard subtype

/kbd-fn-key:<function key count> Keyboard function key count

/admin                Admin (or console) session

/multimon            Multi-monitor

/workarea            Work area

/t:<title>            Window title

+decorations (default:off) Window decorations

/a                    Addin

/vc                  Static virtual channel

/dvc                  Dynamic virtual channel

/u:[<domain>\\]<user> or <user>[@<domain>] Username

/p:<password>        Password

/d:<domain>          Domain

/g:<gateway>[:port]  Gateway Hostname

/gu:[<domain>\\]<user> or <user>[@<domain>] Gateway username

/gp:<password>        Gateway password

/gd:<domain>          Gateway domain

/app:||<alias> or <executable path> Remote application program

/app-name:<app name> Remote application name for user interface

/app-icon:<icon path> Remote application icon for user interface

/app-cmd:<parameters> Remote application command-line parameters

/app-file:<file name> File to open with remote application

/app-guid:<app guid> Remote application GUID

+compression (default:off) Compression

/shell                Alternate shell

/shell-dir            Shell working directory

/audio-mode          Audio output mode

/mic                  Audio input (microphone)

/network              Network connection type

+clipboard (default:off) Redirect clipboard

+fonts (default:off) Smooth fonts (cleartype)

+aero (default:off)  Desktop composition

+window-drag (default:off) Full window drag

+menu-anims (default:off) Menu animations

-themes (default:on) Themes

-wallpaper (default:on) Wallpaper

/gdi:<sw|hw>          GDI rendering

/rfx                  RemoteFX

/rfx-mode:<image|video> RemoteFX mode

/frame-ack:<number>  Frame acknowledgement

/nsc                  NSCodec

/jpeg                JPEG codec

/jpeg-quality:<percentage> JPEG quality

-nego (default:on)    protocol security negotiation

/sec:<rdp|tls|nla|ext> force specific protocol security

-sec-rdp (default:on) rdp protocol security

-sec-tls (default:on) tls protocol security

-sec-nla (default:on) nla protocol security

+sec-ext (default:off) nla extended protocol security

/cert-name:<name>    certificate name

/cert-ignore          ignore certificate

/pcb:<blob>          Preconnection Blob

/pcid:<id>            Preconnection Id

/vmconnect:<vmid>    Hyper-V console (use port 2179, disable negotiation)

-authentication (default:on) authentication (hack!)

-encryption (default:on) encryption (hack!)

-grab-keyboard (default:on) grab keyboard

-mouse-motion (default:on) mouse-motion

/parent-window:<window id> Parent window id

-bitmap-cache (default:on) bitmap cache

-offscreen-cache (default:on) offscreen bitmap cache

-glyph-cache (default:on) glyph cache

/codec-cache:<rfx|nsc|jpeg> bitmap codec cache

-fast-path (default:on) fast-path input/output

+async-input (default:off) asynchronous input

+async-update (default:off) asynchronous update

/version              print version

/help                print help


xfreerdp connection.rdp /p:Pwd123! /f

xfreerdp /u:CONTOSO\\JohnDoe /p:Pwd123! /

xfreerdp /u:JohnDoe /p:Pwd123! /w:1366 /h:768 /v:

xfreerdp /u:JohnDoe /p:Pwd123! /vmconnect:C824F53E-95D2-46C6-9A18-23A5BB403532 /v:

Clipboard Redirection: +clipboard

Drive Redirection: /a:drive,home,/home

Smartcard Redirection: /a:smartcard,<device>

Printer Redirection: /a:printer,<device>,<driver>

Serial Port Redirection: /a:serial,<device>

Parallel Port Redirection: /a:parallel,<device>

Printer Redirection: /a:printer,<device>,<driver>

Audio Input Redirection: /dvc:audin,sys:alsa

Audio Output Redirection: /vc:rdpsnd,sys:alsa

Multimedia Redirection: /dvc:tsmf,sys:alsa

USB Device Redirection: /dvc:urbdrc,id,dev:054c:0268

*** but performance when using the /gfx

Post a Comment

Previous Post Next Post