clients::rdp connects over any caller-dialled TCP stream (direct, proxy or SSH tunnel), upgrades to TLS and logs on with NLA (CredSSP/NTLM), optionally falling back to TLS-only logon for servers without NLA such as xrdp (credentials are passed so they log straight in). The server certificate is pinned through a caller check on its SHA256 fingerprint before any credentials are sent. The desktop decodes into the VNC client's RGBA framebuffer; input (IronRDP's scancode/Unicode/mouse operations), Display Control resizes and the deactivation-reactivation sequence run on the session thread. IronRDP's releases need three vendored patches (vendor/README.md): picky and sspi with their RustCrypto release-candidate pins relaxed so they share russh's stable versions (their own suites, 402 tests, pass against them), and ironrdp-session with two unreleased upstream bitmap fixes (#1486 stride, #1524 RDP6 orientation) without which xrdp desktops render sheared. Verified live against xrdp (scottyhardy/docker-remote-desktop): logon, full desktop rendering, keyboard and mouse input.
35 lines
2.1 KiB
Plaintext
35 lines
2.1 KiB
Plaintext
-----BEGIN CERTIFICATE-----
|
|
MIIF7DCCBNSgAwIBAgITfgAAAAj4QosOKRg46QAAAAAACDANBgkqhkiG9w0BAQsF
|
|
ADBTMRMwEQYKCZImiZPyLGQBGRYDY29tMRcwFQYKCZImiZPyLGQBGRYHZXhhbXBs
|
|
ZTEjMCEGA1UEAxMaZXhhbXBsZS1XSU4tSVZDRjQ4Nk8wM1MtQ0EwHhcNMjMwNjE5
|
|
MDkwODU1WhcNMjUwNjE5MDkxODU1WjBNMRMwEQYKCZImiZPyLGQBGRYDY29tMRcw
|
|
FQYKCZImiZPyLGQBGRYHZXhhbXBsZTEOMAwGA1UEAxMFVXNlcnMxDTALBgNVBAMT
|
|
BHB3MTEwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQC89JkTzo3zAbjv
|
|
AUuicoFICUb7bLQcehCZ+lmrLmjs8eJ5TY8grD/yxLEFCmvly2Hilmjs4+Ecir1s
|
|
zZQfZ5CJI+YZ22cKNuGb4lrfDXND+lvHnry47b4nvEXbYjBR9Cj1dyCQ5hdS3PlJ
|
|
Vxbui+zbcvN3JUVV5wupXWK0PKzoB/sP+5SOyLub/3QGOJOFZvYvDJQUBoQ3HGBS
|
|
lXAzfuXJvjvkMUfB1FaD+XXHGwDJKaHDEmd4qlHHQtslfOgXq7i6rYG3gM42VKRu
|
|
By7c1udTR9Mzw42mbKNvkrp87NR+fP0YtAGwtHLkxSpyNu71tzt1vIEkZg9Kqgk3
|
|
oYFibu3JAgMBAAGjggK9MIICuTA8BgkrBgEEAYI3FQcELzAtBiUrBgEEAYI3FQiE
|
|
wbxjg/SXIIe1lRWE8OQ+h7mXUk6DnepVnL1uAgFkAgECMB8GA1UdJQQYMBYGCisG
|
|
AQQBgjcUAgIGCCsGAQUFBwMCMA4GA1UdDwEB/wQEAwIFoDApBgkrBgEEAYI3FQoE
|
|
HDAaMAwGCisGAQQBgjcUAgIwCgYIKwYBBQUHAwIwHQYDVR0OBBYEFERdkI6e2JjU
|
|
60OG3MWhEcnNMbcaMB8GA1UdIwQYMBaAFEnLXthGACosdnBKTWb6r4Z75rlnMIHg
|
|
BgNVHR8EgdgwgdUwgdKggc+ggcyGgclsZGFwOi8vL0NOPWV4YW1wbGUtV0lOLUlW
|
|
Q0Y0ODZPMDNTLUNBLENOPVdJTi1JVkNGNDg2TzAzUyxDTj1DRFAsQ049UHVibGlj
|
|
JTIwS2V5JTIwU2VydmljZXMsQ049U2VydmljZXMsQ049Q29uZmlndXJhdGlvbixE
|
|
Qz1leGFtcGxlLERDPWNvbT9jZXJ0aWZpY2F0ZVJldm9jYXRpb25MaXN0P2Jhc2U/
|
|
b2JqZWN0Q2xhc3M9Y1JMRGlzdHJpYnV0aW9uUG9pbnQwgcwGCCsGAQUFBwEBBIG/
|
|
MIG8MIG5BggrBgEFBQcwAoaBrGxkYXA6Ly8vQ049ZXhhbXBsZS1XSU4tSVZDRjQ4
|
|
Nk8wM1MtQ0EsQ049QUlBLENOPVB1YmxpYyUyMEtleSUyMFNlcnZpY2VzLENOPVNl
|
|
cnZpY2VzLENOPUNvbmZpZ3VyYXRpb24sREM9ZXhhbXBsZSxEQz1jb20/Y0FDZXJ0
|
|
aWZpY2F0ZT9iYXNlP29iamVjdENsYXNzPWNlcnRpZmljYXRpb25BdXRob3JpdHkw
|
|
KwYDVR0RBCQwIqAgBgorBgEEAYI3FAIDoBIMEHB3MTFAZXhhbXBsZS5jb20wDQYJ
|
|
KoZIhvcNAQELBQADggEBAEjdKUfHodjVNJheABu6TyPL3gL0+S355EMYDpTU6ho0
|
|
6+a1IWDbR5vUZMePzc8Ow4DW7V/GybwS8PcDMsK+MsVhLL4KB/uP0BFNUPjHjJno
|
|
i1tmt4C5YpqjPW3biFvIOSjtuZ49t1xbkmj9SO2cc8/mOmCI9WN/sX8Y0JXOnD7y
|
|
1XE6oQUxKNjEaN7aJ3juvsFsxBhGB8FH2DjOqMLykOlu26lJQCmLBSWoNCWR3J1N
|
|
F1Eu/p5VLx6ivM739+AAVT7ZzkPFjBbk4fkmSCw9MGV1Vk8Vp8elMFyD3j1QA1gP
|
|
smepITG7yGbxcn8ct4dmvew/73ebjk7YA8WhHVeWKhc=
|
|
-----END CERTIFICATE-----
|