System Servicesrdpremote-desktopproxyclientservershadowmitm

FreeRDP 3

FreeRDP3 is a libre client/server implementation of the Remote Desktop Protocol (RDP) providing multiple clients (X11, Wayland, SDL), proxy server capabilities, and X11 shadowing functionality for Kali Linux.

Description

FreeRDP3 offers comprehensive RDP client and server functionality across different display systems. The X11 client (xfreerdp), Wayland client (wlfreerdp), and SDL client (sdl-freerdp) enable connections to Windows Remote Desktop servers and alternative RDP implementations. The proxy server (freerdp-proxy) acts as a man-in-the-middle for RDP connections, useful for traffic inspection and relay scenarios.

The package suite includes X11 shadowing capabilities through freerdp-shadow-x11 and freerdp-shadow-cli, allowing sharing of existing X11 displays via RDP. Proxy modules and development libraries support advanced customization and integration. Transitional packages ensure compatibility with previous FreeRDP versions.

Common use cases include penetration testing of RDP services, legitimate remote administration, protocol analysis, and creating RDP proxies for security assessments.

How It Works

FreeRDP3 implements the full RDP protocol stack including core libraries (libfreerdp3-3), client libraries (libfreerdp-client3-3), server libraries (libfreerdp-server3-3), and shadow subsystem libraries. Clients support NLA, TLS, and RDP security protocols with features like clipboard/drive redirection, audio/video redirection, USB device passthrough, and gateway support. The proxy server enables MITM interception of RDP connections while the shadow server captures and relays existing X11 display content over RDP. WinPR provides Windows API compatibility for cross-platform operation.

Installation

bash
sudo apt install freerdp-x11

Flags

/v:<server>[:port]The server hostname or IP, and optionally the port, to connect to
/u:<username>Specify username for authentication
/p:<password>Specify password for authentication
/w:<width> /h:<height>Specify desktop width and height
+clipboardEnable clipboard redirection
/drive:home,/home/userEnable drive redirection
/smartcard:<device>Enable smartcard redirection
/sound:sys:alsaEnable audio output redirection
/gateway:g:rdp.contoso.comSpecify RD Gateway
-authClients must authenticate (freerdp-shadow-cli)
/port:<number>Server port (freerdp-shadow-cli)
/sam-file:<file>NTLM SAM file for NLA authentication

Examples

Connect using RDP connection file in fullscreen mode
sdl-freerdp connection.rdp /p:Pwd123! /f
Connect to RDP server with domain credentials
sdl-freerdp /u:CONTOSO\JohnDoe /p:Pwd123! /v:rdp.contoso.com
Connect with custom resolution and non-standard port
sdl-freerdp /u:JohnDoe /p:Pwd123! /w:1366 /h:768 /v:192.168.1.100:4489
Hyper-V VM console connection
sdl-freerdp /u:JohnDoe /p:Pwd123! /vmconnect:C824F53E-95D2-46C6-9A18-23A5BB403532 /v:192.168.1.100
Azure AD authentication connection
sdl-freerdp /u:\AzureAD\user@domain.com /p:pwd /v:host
Use generic pipe as transport
sdl-freerdp /v:/path/to/pipe
Use external socket as transport
sdl-freerdp /v:|:1234
Connect through RD Gateway
sdl-freerdp /gateway:g:rdp.contoso.com /u:user /p:pass /v:target
Updated 2026-04-16kali.org ↗