freerdp-proxy(1)

πŸ“¦
version 3.16.0 Β· 3 versions
, in ubuntu questing

πŸ’– freerdp-proxy πŸ’–

okay bestie, welcome to freerdp-proxy from the FreeRDP fam β€” it's the server binary that lets you MITM-proxy RDP connections, and yes it's giving very main character energy πŸ”₯


✨ NAME ✨

freerdp-proxy β€” a server binary allowing MITM proxying of RDP connections πŸ¦‹


🌸 SYNOPSIS 🌸

freerdp-proxy [-h] [--help] [--buildconfig] [--dump-config <config file>] [-v] [--version] [<config file>]

πŸ‘‘ DESCRIPTION πŸ‘‘

so freerdp-proxy can be used to proxy a RDP connection between a target server and connecting clients, fr fr. like, it sits in the middle and vibes. possible usage scenarios are:

  • Proxying β€” connect outdated/insecure RDP servers from behind a (more secure) proxy πŸ’…
  • Analysis β€” allow detailed protocol analysis of (many) unknown protocol features (channels) 🧚
  • Inspection β€” MITM proxy for session inspection and recording πŸ‘€

✨ OPTIONS ✨

  • -h, --help β€” display a help text explaining usage. iconic, honestly 🫢
  • --buildconfig β€” print the build configuration of the proxy and exit.
  • -v, --version β€” print the version of the proxy and exit.
  • --dump-config β€” dump a template configuration to <config-ini-file> πŸ’Ύ
  • <config-ini-file> β€” start the proxy with settings read from <config-ini-file>

🚨 WARNING 🚨

bestie. listen. the proxy does not support authentication out of the box β€” it just acts simply as intermediary. only RDP and TLS security modes are supported, and NLA will fail for connections to the proxy. 😭

to implement authentication, a proxy-module can be implemented that can authenticate against some backend and map connecting users and credentials to target server users and credentials. that's the way that you do it πŸ’…


🌈 EXAMPLES 🌈

freerdp-proxy /some/config/file
freerdp-proxy --dump-config /some/config/file

πŸŽ€ PREPARATIONS πŸŽ€

  1. generate certificates for proxy 🎁
winpr-makecert -rdp -path . proxy
  1. generate proxy configuration
freerdp-proxy --dump-config proxy.ini
  1. edit configuration and:
    • provide (preferably absolute) paths for CertificateFile and PrivateKeyFile generated previously
    • remove the CertificateContents and PrivateKeyContents
    • adjust the [Server] settings Host and Port to bind a specific port on a network interface
    • adjust the [Target] Host and Port settings to the RDP target server
    • adjust (or remove if unuse) the Plugins settings
  2. start proxy server πŸš€
freerdp-proxy proxy.ini

πŸ’€ EXIT STATUS πŸ’€

  • 0 β€” successful program execution. slay βœ…
  • 1 β€” otherwise. πŸ™ˆ

πŸ¦‹ SEE ALSO πŸ¦‹

wlog(7)


πŸ’œ AUTHOR πŸ’œ

FreeRDP <team@freerdp.com>


okay that's the whole thing bestie, no cap, every last flag and caveat is in there 🌸 this was 3.16.0, dated 2023-12-14, and honestly? it ate. go forth and proxy responsibly, mwah πŸ’…βœ¨πŸ“

πŸ“¦ where this page comes from