Devolutions / Devolutions/IronRDP

Add console session (/admin) licensing option

Open
#715 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Rust
Stars
3.2k
Forks
275
Avg merge
1d 11h
Merged PRs (30d)
189

Description

Add the equivalent of the mstsc /admin (formerly /console) option which lets you connect to an RDP server for "administrative purposes", which allows you for a single session without a valid licensing server. New installations of Windows Server emit temporary licenses for 180 days, so this normally useful when those stop being emitted, and you still need to connect with RDP.

In FreeRDP, the internal setting name is "ConsoleSession", I suggest we use the same. Protocol-wise, it affects the GCC client cluster data this way:

![Image](https://github.com/user-attachments/assets/b3267673-d461-4d7a-9768-16901ec4d293)

The GCC client cluster data structure is defined here: https://learn.microsoft.com/en-us/openspecs/windows_protocols/ms-rdpbcgr/d68c629f-36a1-4a40-afd0-8b3e56d29aac

IIRC, the trick is that the REDIRECTED_SESSIONID_FIELD_VALID flag is set, but the redirectSessionID value is 0, and this is how the server knows it's a special console session / admin session.

In the RDP ActiveX, the internal property name is [ConnectToAdministerServer](https://learn.microsoft.com/en-us/windows/win32/termserv/imsrdpclientadvancedsettings6-connecttoadministerserver)

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.