IronRDP Viewer
Portable RDP client without GPU acceleration.
This is a a full-fledged RDP client based on IronRDP crates suite, and implemented using non-blocking, asynchronous I/O. Portability is achieved by using softbuffer for rendering and winit for windowing.
Prebuilt binaries
Prebuilt, checksummed archives are attached to each GitHub Release under the ironrdp-viewer-v*
tags. See the Releases page for per-platform
download and verification instructions.
Sample usage
ironrdp-viewer <HOSTNAME> --username <USERNAME> --password <PASSWORD>
.rdp file support
You can load a .rdp file with --rdp-file <PATH>.
Currently supported properties:
full address:s:<value>alternate full address:s:<value>server port:i:<value>username:s:<value>ClearTextPassword:s:<value>domain:s:<value>enablecredsspsupport:i:<0|1>gatewayhostname:s:<value>gatewayusagemethod:i:<value>gatewaycredentialssource:i:<value>gatewayusername:s:<value>GatewayPassword:s:<value>kdcproxyurl:s:<value>(alsoKDCProxyURL:s:<value>)kdcproxyname:s:<value>alternate shell:s:<value>shell working directory:s:<value>redirectclipboard:i:<0|1>audiomode:i:<0|1|2>desktopwidth:i:<value>desktopheight:i:<value>desktopscalefactor:i:<value>compression:i:<0|1>
Property precedence is:
- CLI options
.rdpfile values- Defaults and interactive prompts
Unknown or unsupported .rdp properties are ignored and do not cause parsing failures. Parse
issues are reported to stderr.
The IRONRDP_LOG environment variable is used to set the log filter directives.
IRONRDP_LOG="info,ironrdp_connector=trace" ironrdp-viewer <HOSTNAME> --username <USERNAME> --password <PASSWORD>
See tracing-subscriber's documentation for more details.
Support for SSLKEYLOGFILE
This client supports reading the SSLKEYLOGFILE environment variable.
When set, the TLS encryption secrets for the session will be dumped to the file specified
by the environment variable.
This file can be read by Wireshark so that in can decrypt the packets.
Example
SSLKEYLOGFILE=/tmp/tls-secrets ironrdp-viewer <HOSTNAME> --username <USERNAME> --password <PASSWORD>
Usage in Wireshark
See this awakecoding's repository explaining how to use the file in wireshark.
This crate is part of the IronRDP project.