[HN Gopher] FreeRDP: A remote desktop protocol implementation
___________________________________________________________________
FreeRDP: A remote desktop protocol implementation
Author : gjvc
Score : 178 points
Date : 2023-09-28 12:48 UTC (10 hours ago)
(HTM) web link (www.freerdp.com)
(TXT) w3m dump (www.freerdp.com)
| FuriouslyAdrift wrote:
| There's also the great MeshCentral
| https://github.com/Ylianst/MeshCentral
| Rapzid wrote:
| WSLg(Windows Subsystem for Linux GUI) uses RDP and FreeRDP to
| work: https://github.com/microsoft/wslg
|
| I haven't tried it yet, but I'm hopeful the experience is better
| than last time I tried Hyper-V enhanced linux experience. I
| imagine this use case is getting FreeRDP way more attention.
|
| For years I've developed in a Linux VM on a Windows host via
| VirtualBox. The typing lag on this, particularly in IDEs like
| VSCode and Rider, finally got to me. So, I moved over to WSL and
| have to say; the experience is amazing.
|
| Edit: I should say that I haven't used the WSL GUI functionality
| yet. Been using VSCode's WSL support and it's been amazingly
| seamless so far. I get native Windows VSCode performance while my
| project and all its plugins are actually running in the Hyper-V
| backed WSL linux VM.
| billy99k wrote:
| I just installed kali on WSL2 with GUI support. It's fantastic.
| Very fast. Much better than Vmware/Virtualbox.
| marmaduke wrote:
| WSLg works really well, even for OpenGL 3/4, CUDA, and when
| connected via RDP as well.
| mercwear wrote:
| Another good, free option is chrome remote desktop:
| https://remotedesktop.google.com/
| tambourine_man wrote:
| Is there a web client that doesn't require backend changes? I
| know MS has one, but requires things to be installed in the
| server
| xz18r wrote:
| Awingu
|
| https://www.awingu.com/
| greggsy wrote:
| I went through all the major platforms, and settled with
| something less enterprise-ey.
|
| Windows Remote Desktop Services (RDS) gateway requires a lot of
| configuration across several services, but the overall
| experience is pretty good.
|
| I used Kasm for a bit, but the integration with AzureAD
| authentication was flaky. It's a pretty god platform overall
| though.
|
| Guacamole is mature, but by Jove it's a fickle thing to
| configure.
|
| Now I just use a Remmina docker container, which is maintained
| by Kasm. I have a separate container to route a reverse proxy
| through to CloudFlare, which uses Azure AD for authentication.
| Now just go to rep.domain.com, login with AAD creds, and i'm
| presented with a basic remmina jump host where I can log into
| whatever VM or host.
|
| It sounds janky, but it's much more stable and much leas
| demanding from the administration side of things. It also works
| over HTTPS port 443, so it (usually) just works on guest wifi.
|
| CloudFlare can also render VNC in the browser, but I didn't
| find the experience great, and it just seemed wrong.
| jasonjayr wrote:
| Guacamole? https://guacamole.apache.org/
| rijoja wrote:
| I was looking for something like this as well! Thank you very
| much!
| giancarlostoro wrote:
| The video demo is impressive.
| 0xbadcafebee wrote:
| It works great! I use it for RDP, VNC, and SSH sessions for
| business users. Can hook it up to LDAP, manage users and
| groups. If the user's profile only has one connection
| configured, it automatically dumps them into it when they
| log in, so there's no learning curve at all, save hotkeys
| if they want to do something fancy.
| nirav72 wrote:
| I use KASM. You can setup workspace that RDP's into remote
| server. In my case, I use it connect to couple of Windows VMs
| in proxmox.
|
| https://kasmweb.com/
| l-albertovich wrote:
| Wow, this is amazing and I hadn't heard about it yet so
| thanks a lot for sharing it!
| cpach wrote:
| Does it really use RDP?
| greggsy wrote:
| They have web based VNC wrapper.
|
| The whole platform is built docker containers. You can skip
| the whole installation steps and just install their Remmina
| container from docker hub.
| e12e wrote:
| https://hub.docker.com/r/kasmweb/remmina ?
| greggsy wrote:
| That the one
| dang wrote:
| Related:
|
| _Use a laptop as a 2nd display on Linux using FreeRDP_ -
| https://news.ycombinator.com/item?id=34010970 - Dec 2022 (137
| comments)
|
| _FreeRDP 2.0 - A Remote Desktop Protocol implementation_ -
| https://news.ycombinator.com/item?id=22834286 - April 2020 (122
| comments)
| npteljes wrote:
| Just for funsies, I'll throw in the latest remote desktop that I
| have tried for Linux, the Sunshine server. It uses the Moonlight
| protocol, so you can use any NVIDIA GameStream client, like I
| have used Moonlight from f-droid to stream my PC to my Android
| phone. Clients exist for Windows and Linux too, and a lot of
| other platforms as well. Sharing the desktop works out of the
| box, just download the server, run it, very minimal config to set
| a password, pair it with a client, and then next time, you just
| need to run the server and connect with the pre-configured
| client.
|
| It works by converting screen or windows's content to video. It's
| low latency by design, bandwidth is up to you, and sound also
| works by default.
|
| https://github.com/LizardByte/Sunshine
|
| https://f-droid.org/packages/com.limelight/
| SigmundA wrote:
| Currently using sunshine/moonlight to play PC games on my M2
| Mac at 4k 60fps and its been very solid cannot tell its remote
| over gigabit connection at 70 Mbps HVEC from Radeon card.
| Amazing tech for sure, only way to really game on Mac and can
| locate PC anywhere in house, right now in garage.
|
| Still use RDP for work though its better suited to lower
| bandwidth higher latency text editing IMO plus copy paste etc.
| theelix wrote:
| Moonlight/Sunshine developer here, having all of these people
| praising the work done by us is a wonderful thing. We
| developers work very hard to make Sunshine faster, smoother and
| more powerful each day. So thank you!
| SigmundA wrote:
| NO thank you amazing work! I was skeptical until I tried wow,
| solid and performant from Windows to Mac for hours of gaming.
| pak9rabid wrote:
| Thanks! It's definitely cool to be able to use my Raspberry
| Pi (running Kodi with the Moonshine addon) as a "dumb
| terminal" to stream from my gaming rig from the other side of
| the house onto my big ass living room TV :).
| eikenberry wrote:
| These sort of client/server game streaming systems are great
| modern alternatives to something like RDP. They take advantage
| of hardware accelerated h264 encoding to get fast video/audio
| transmission with fast input mapping.
|
| To me these seem like more modern, simpler alternatives to
| older remote desktop protocols as they are designed around
| modern hardware and one of the most demanding use cases,
| gaming. Seems like an easy win to me. RDP does have more
| features, but they seem mostly for niche/side things.
| rrdharan wrote:
| Encode to video is how Chrome Remote Desktop works.
|
| The SunRay ALP protocol and NoMachine are actually the two
| best I've ever seen but have pretty much fallen by the
| wayside in modern times sadly.
| rcarmo wrote:
| RDP can also do hardware-accelerated encoding:
| https://taoofmac.com/space/blog/2022/10/23/1700 (tl;dr: use
| xorgxrdp-glamor)
| npteljes wrote:
| Indeed. To remotely manage or service a computer, RDP is more
| suited for the purpose.
| eikenberry wrote:
| To manage a remote computer I'd much rather use SSH than
| any desktop sharing protocol. IMO the CLI over SSH is much
| better suited to the task.
| pdntspa wrote:
| Unless you really like PowerShell, you probably don't
| want to be doing this on Windows
|
| Also setting up a good SSH server on Windows is a pain in
| the ass
| MenhirMike wrote:
| > RDP does have more features, but they seem mostly for
| niche/side things.
|
| Being able to copy/paste (including files!) between the host
| and client is pretty useful though.
| donmcronald wrote:
| This is especially true for Hyper-V VMs without network
| connectivity. The enhanced session is RDP over a local
| socket (I think), so copying and pasting files via RDP
| becomes the best way to move files between your host and
| VM.
| naikrovek wrote:
| > session is RDP over a local socket (I think)
|
| my understanding is that it's done via shared memory, and
| if that's right, it's very close to, if not actually, an
| air gap.
| snapplebobapple wrote:
| Thats broken in the sdl freerdp client (which is the one
| they recommend for wayland since they deprecated
| wlfreerdp). Its go8ng to be annoying for a while until sdl3
| comes out and they code that bavk into the sdl client.
| viraptor wrote:
| And it's just one specific implementation of the RDP
| channel. You can also share drives and printers, or write
| your own custom stream virtual channels.
| pdntspa wrote:
| > RDP does have more features, but they seem mostly for
| niche/side things.
|
| I have seen people whose entire jobs live inside an RDP
| connection
| fortyyearsafool wrote:
| Sunshine and Moonlight are as close to magic as I've ever felt
| for incredibly low-latency streaming. I used it a lot early in
| the pandemic to play games from my PC in a shared space in my
| home on a low spec laptop while I was sick with COVID.
|
| Later, I tried it while traveling and was shocked at how well
| it worked over a pretty bad link and a VPN (Wireguard).
| sandreas wrote:
| If someone is looking for a working RDP config, that can be used
| without manually logging in at the machine and that works
| completely remote, I would recommend using xrdp.
|
| Problems I ran into:
|
| - Black screen after login
|
| - Permission issues / strange password prompts
|
| - Login does not work if not logged in / having a HDMI connected
|
| - Copy & Paste did not work
|
| - Shift key led to caps lock /wrong keymapping on Remmina
|
| I found the following fixes:
|
| Script containing various fixes for different problems:
| https://www.c-nergy.be/products.html
|
| KDE config, that worked for me:
| https://pilabor.com/blog/2021/05/remote-desktop-with-xrdp-an...
|
| Remmina Shift-Key workaround:
| https://pilabor.com/blog/2023/09/fixing-remmina-typing-issue...
| ckbishop wrote:
| Black screen after login is a GNOME problem, which is caused by
| trying to remote in as a user that is logged into the desktop
| already. I solved this by creating an additional user. It was
| intensely annoying.
| nqzero wrote:
| assuming that you have a potentially compromised linux host (or
| VM)
|
| what level of client-side risk are you taking connecting a
| freeRDP client to that host ? (i'm not worried about the case of
| the client infecting the host)
|
| what is the most secure similar application ? i prefer a linux
| client, though would be willing to consider windows if there was
| a client that was significantly more secure
| ahmetsait wrote:
| I recently tried to get remote desktop working on my KDE laptop
| with xrdp. Spent days trying to get it working properly with all
| the fixes and workarounds I've found online and yet it didn't
| even come close to how smooth it all works in Windows. In the
| end, I accepted defeat, depressed about the state of linux
| desktop even more.
| supertron wrote:
| Last time I played with RDP on Linux it really just seemed to
| be a wrapper around {the equivalent of} a VNC connection - so
| even when it worked, it was nothing like the streaming
| experience when RDP'ing into a Windows machine. Not sure if
| things have improved since, or FreeRDP does things differently.
|
| I had a quick glance through the FreeRDP site but didn't spot
| any immediate clues as to whether this is a true Windows-style
| optimised/streamed RDP implementation or a "we'll send you a
| constanst stream of compressed bitmap screenshots" VNC-style...
|
| RDP on Windows is one of the few things I really miss from the
| Windows ecosystem. There is nothing on Mac or Linux that I've
| seen to date which comes even close to the near-instantanous
| experience of using a Windows machine over RDP.
| Borg3 wrote:
| Hell yeah. I spent a lot of time on RDP (Working remotly on
| my work laptop). Its great protocol, and over LAN its very
| very snappy, you can pretty much stream video via it but it
| will choke bandwidth like there is no tomorrow ;) (around
| 80Mbit 640x400@25)
|
| Indeed, comparing it to Xserver, its much better. I use quite
| a lot Xserver on windows too, to render for example remote
| Firefox. It works pretty well, but not that good compared to
| RDP.
| supertron wrote:
| About 15 or maybe even 20(?) years ago I could RDP into a
| Windows server over a crappy mobile phone data connection
| connected to my laptop _on a moving train_ and get stuff
| done. It is a phenomenal protocol, when implemented
| correctly!!
| rcarmo wrote:
| You need to set sesman.ini to use Xrdp instead of the Xvnc
| back-end - that is a packaging issue in some distros. With
| the right gear you can do 60fps without any issues:
| https://taoofmac.com/space/blog/2022/10/23/1700
| mmcgaha wrote:
| Probably about the same level of smooth as getting X Windows
| working well on Windows.
| seabrookmx wrote:
| vcxsrv worked pretty well in my experience!
|
| It eats your CPU for breakfast, but before VS Code Remote SSH
| I used to use X forwarding to get a get a Linux VS Code
| window on my Windows box.
| orangepurple wrote:
| Use rdesktop if you want an actual functional RDP client on
| Linux or krdc if you want convenience (GUI)
| icelancer wrote:
| RDP / xRDP / Windows -> Linux is a complete shitshow. I forget
| this about every 14 months, try to get it working, get
| extremely mad, and just resign myself to using the completely
| awful VNC protocol.
| isilofi wrote:
| try xpra.
| salawat wrote:
| Why use xrdp, and not x11 forwarding over ssh -C (compression)?
|
| I can reasonably drive firefox over that link whereas anything
| bitmap based tends to just die.
| u801e wrote:
| One advantage of a remote desktop protocol over x11
| forwarding is being able to keep the application(s) open and
| in the same state when you disconnect and connect from
| another machine or access the host machine.
|
| I haven't really used xrdp, but I have used xpra and have
| been able to attach to running instances of applications that
| I left open on the host machine remotely (much like I can
| reattach to a screen or tmux session remotely).
| hexo wrote:
| exactly this. i cant get over why people need to reinvent the
| wheel again and again.
|
| i dont get why there isnt SPICE implementation outside of
| libvirt. because, thats even better. i mean - usb
| redirection, sound, (possibly even 3d accel)...
|
| and suggesting doubt-ware like anydesk or even worse -
| teamviewer... okay, these last ones make sense in some
| situations.
| breakds wrote:
| Just in case anyone uses NixOS, the following simple piece of
| code just works for me, and I spent no time setting up a new
| NixOS machine that enables remove desktop with RDP:
|
| https://github.com/nixvital/vital-modules/blob/main/modules/...
| SkyMarshal wrote:
| Gnome has RDP built in, may be worth a try depending on your
| distro.
| flashback2199 wrote:
| AnyDesk is surprisingly good and works on Linux
| robertlagrant wrote:
| I did it on a Gnome desktop recently and had the opposite
| experience - it was really simple! There was (of course) one
| issue regarding profiles, but it was very easy to fix and it
| auto logs in from my saved credentials in the MacOS Remote
| Desktop client.
| freedomben wrote:
| Same, with Gnome it worked amazingly well for me. I didn't
| even have to install anything since it's built in to Gnome
| (under Sharing -> Remote Desktop)
| sho_hn wrote:
| The good news is: We know and we're taking your needs
| seriously.
|
| Much improved RDP support is coming with Plasma 6 in early
| 2024: https://planet.kde.org/arjen-hiemstra-2023-08-08-remote-
| desk...
|
| It's integrated into the Plasma display server, so no more
| fiddling with xrdp.
| SrZorro wrote:
| That's great news. At the beginning of the year, I had to
| decide between Windows and Kubuntu for our company's remote
| desktop developers. Windows RDP outperformed every Kubuntu
| option I tested by far. 2023 hasn't been the year of the
| Linux desktop (remote edition) for us. With these news, it
| seems 2024 might just be the year!
| magicalhippo wrote:
| Been using KDE Neon on a NUC as a second desktop for years
| and been loving it, but the complete lack of a usable remote
| desktop solution for it (I've tried them all, they all suck)
| has meant my main desktop stays on Windows.
|
| With how Windows 11 is shaping up the future was looking
| rather depressing.
|
| So this news sounds great, crossing my fingers!
| donmcronald wrote:
| > exposing a KDE Plasma Wayland session
|
| Does that mean I'll need to start a session locally before I
| can connect via RDP or will it be like Windows RDP where it
| starts a session on-demand?
| bmicraft wrote:
| Currently it seems to be intended for sharing a physical
| screen only
| binkHN wrote:
| Love KDE! Thank you for the excellent work! The release of
| the abomination known as Windows 11 has really given a lot of
| people the opportunity to evaluate new, and better, things!
| npteljes wrote:
| For similar reasons, I ended up using x11vnc as server, and
| Remmina as the client. Granted, it has been a few years since I
| last needed it, but this was what worked best, and mostly out
| of the box too.
| x3haloed wrote:
| NoMachine works great for me :) It's not perfect, but it's darn
| good, and I can consistently use it across all my Mac/Win/Lin
| devices.
| cf100clunk wrote:
| https://www.nomachine.com/
| BLKNSLVR wrote:
| NoMachine was the closest to Windows RDP that I could find,
| and I tried FreeRDP, xpra, x2go, various vnc flavours and
| forwarding X windows / sessions. It was a few years ago that
| I tested them so alternatives may have improved.
|
| NoMachine is still snappy enough for my needs: primarily
| browser usage.
|
| It does need the remote machine to be logged in, however,
| which can be annoying and is a differentiator from how
| Windows RDP works.
| aruggirello wrote:
| Your best bets are (in order): - Remmina - Xpra - Anydesk
| mrj wrote:
| Try NoMachine, it's been around for a long time and works great
| on all of my devices
| seabrookmx wrote:
| I too have gone down that rabbit hole with xrdp. I compiled a
| step-by-step guide that worked on an older version of Ubuntu
| but it broke with later versions and I gave up.
|
| I can't speak for KDE, but modern versions of gnome+wayland
| have a built-in RDP server that "just works" (Settings, select
| Sharing, and enable Remote Desktop). It doesn't perform quite
| as well as windows RDP (a bit more lag) but is vastly superior
| to other options I've tried (VNC, NoMachine).
|
| If you just need an RDP _client_ on Linux, Remmina is really
| solid.
| Octabrain wrote:
| I've never used xrdp but I've used Remmina (snap and also
| flatpak) without an issue. In fact and as a confession, it's
| what I use when working from home to connect to my work laptop
| and be able to work from my Linux desktop.
| metadat wrote:
| https://remmina.org/
|
| The promise behind this sounds like the holy grail of Remote
| Access.
|
| Is it Linux-only for the clients? Or can you use Mac and/or
| Windows to reach a Remmina server?
|
| Edit: looks like it is RDP protocol compatible? If so, WOW,
| that's cool!
|
| From https://remmina.org/authors/:
|
| > I've been using Remmina now for several years. I love how
| it's integrated into Ubuntu by default and how I can access
| the multiple platforms I have to support in one application.
| I mostly use RDP and VNC (Ultra VNC).
| jeroenhd wrote:
| Remmina is a client only, and when it works, it works
| great. Supports all the basic protocols and has a bunch of
| plugins (including Teamviewer!) for protocols that don't
| come with the program.
|
| It used to have some weird bugs on Ubuntu though, making it
| crash after clicking the wrong buttons for some reason.
| That seems to have been corrected and now it just works.
| Make sure to use an up to date version, especially if
| you're on an older LTS machine.
| brunoqc wrote:
| remmina is awesome. it even supports spice
| crtasm wrote:
| Remmina is great but it's a client only, no server.
|
| I use it for both RDP and VNC to my Windows desktop. The
| flatpak currently has a bug with audio over RDP so I've
| gone back to the version in my distro's packages.
| metadat wrote:
| Thanks for the clarification!
| davkan wrote:
| I work out of a reminna session every day. I rdp into my
| windows work laptop from my linux desktop and use it all day.
| Works great. Audio and video passthrough working well enough
| that i can use my speakers and boom mic for meetings without
| getting echo.
|
| I have i3wm configured to always launch my work rdp session
| in virtual desktop 10. Switching between work and personal
| desktops is instantaneous. 10x more convenient than the kvm
| and thunderbolt dock setups I've used before.
| [deleted]
| polski-g wrote:
| I use NoMachine for remote desktop across all 3 platforms (the
| client runs on Android too). Works out of the box with zero
| configuration needed. Even supports copy/paste.
| rapht wrote:
| Same here. Smooth experience.
| xp84 wrote:
| It would be helpful if it was specified prominently anywhere
| whether this was a client, a server, or both. I've been looking
| at the screenshots to try to make an educated guess.
| x3haloed wrote:
| I'm glad someone is working on this! We need it.
| jchw wrote:
| Note that using FreeRDP (directly or via a client like Remmina)
| can be a great option for accessing a Windows virtual machine on
| KVM/libvirt, as it often performs a lot better than SPICE but
| supports much of the same features (remote audio, USB and serial
| port forwarding, etc.)
| StillBored wrote:
| AFAIK, FreeRDP is largely what is underneath most of the
| iOS/Android/etc RDP clients. Largely because rdesktop which
| preceded it is GPL licensed. Which focused a lot of commercial
| development to create an alternative, and hence freeRDP. Which
| also did a better job of not being as tightly integrated with X11
| as rdesktop is/was because a lot of the windows GDI API has
| corresponding X11 functionality, so if the function is an Xored
| Blit operation, or a hatched pen fill, then rdesktop just
| offloadeds to X11 and presumably the graphics card rather than
| being software rendered.
| debarshri wrote:
| Is there a universal remote desktop protocol, that works both for
| windows and linux?
| isilofi wrote:
| VNC. But it sucks.
| giancarlostoro wrote:
| Just curious, how do all the different alternatives compare. I
| know VNC iirc uses raw screenshots, and some implementations will
| do their best to only send the differences over the network. How
| do others compare in approach? I almost always reach for VNC
| because I'm already familiar with it.
| philsnow wrote:
| I've long been a huge fan of Xpra https://github.com/Xpra-
| org/xpra , both because of its "screen for X" original focus
| (though now it supports shadowing an existing session).
|
| There was NoMachine / nx / freenx but it always seemed to be a
| weird animal to me, requiring installation as a separate unix
| user, at least at the time.
| q3k wrote:
| RFB (the protocol used for VNC) implements at its base level
| rectangle-based updates which can be used to send over just
| rectangle-bound differences between frames. It's just that some
| shoddy server implementations send over the entire screen at
| once without damagerect tracking.
|
| There's also plenty of extensions, some proprietary some not,
| which allow for more advanced compression/optimization:
| https://en.wikipedia.org/wiki/RFB_protocol#Encoding_types
| Neil44 wrote:
| Windows RDP is a much better experience than basically
| everything else, it's not diffing a big jpeg of the screen like
| almost everything else does it sends more primitives to do more
| compositing on the client end. If the latency is low you often
| can't tell you're remote. You can actually work on it all day
| rather than just for doing odd bits of tech support. Plus it
| maps printers, audio etc.
| while_true_ wrote:
| +1 for Windows RDP. One thing Windows RDP excels at is
| working over low bandwidth connections. My remote desktop is
| in a rural area with very poor internet service -- uploads
| under 1 Mb/sec. With Win RDP I set the "Experience" to "56k
| Modem" (not joking) and it eliminates eye candy stuff like
| font smoothing and window animations, which is fine, at least
| I have a steady connection that works. I've tried other RDP
| programs and they always say "connection lost" due to
| insufficient bandwidth.
| MikusR wrote:
| IIRC it hasn't worked like that since Windows 10. It's more
| or less h264. As due to Electron, QT, and UWP nothing draws
| those primitives anymore.
| StillBored wrote:
| RDP itself in its earliest versions is just a windows GDI
| async RPC. Which is why its so fantastically
| fast/responsive on windows. And as of last time I mess with
| this, thats the way it still behaves for things like MS
| office, and basically anything that is older than a half
| dozen years or so, because they are still sitting on the
| win32 GDI.
|
| But, yes your right if you have a "modern" application that
| is basically doing all the drawing on the CPU to a generic
| canvas with custom libraries none of that works, and RDP
| has to fall back to diffing and compressing. Which is
| really terrible on any number of fronts.
|
| At that point you might as well just use VNC because the
| perf is going to be roughly the same.
| applied_heat wrote:
| Progress!
| MikusR wrote:
| The ui of modern Office is React Native
| mook wrote:
| For VMs, I find RDP to be on par with SPICE (which is more of
| a qemu/libvirt thing). Both have support for device/drive
| mapping, I believe. That's both over ssh sessions (I know RDP
| has encryption, but I'd rather not trust it).
| isilofi wrote:
| VNC is dog-slow compared to RDP. RDP is slow compared to xpra.
| What xpra does is sending a h.264 video stream (some other
| compression algos are also available). Also, xpra can forward
| the whole desktop as well as single applications. Far
| preferable to any kind of RDP server.
|
| However, the xpra client is somewhat strange and inconsistent
| when it comes to CLI/UI behaviour.
| thefourthchime wrote:
| I wrote a man-in-the-middle recording for RDP way back when. We
| did recording for both, RDP is much more sophisticated.
|
| Besides using a TLS style encryption (VNC at the time had
| none). RDP tries as hard as possible to not just send bitmaps.
| It first shares what fonts it wants to use, then a cache of
| bitmaps from the previous session (for the wallpaper for
| example). When Windows move it doesn't send bitmap updates, it
| sends window updates and tells the client to paint a rect, then
| draw fonts, etc..
|
| That said, it's a bear of a protocol with countless versions
| and "speed mode" hacks that bypass the layered protocol setup,
| tons of weird features, etc..
| giancarlostoro wrote:
| Interesting, is there software that still records RDP
| sessions? I'm not sure if Teams uses RDP or what, but I know
| it lets you record a call, whether there's screensharing or
| not.
| thefourthchime wrote:
| This seems to do the same kind of thing.
| https://github.com/GoSecure/pyrdp
| londons_explore wrote:
| RDP is a crazy complex protocol, and you have options for
| pretty much everything.
|
| On the graphics side, you can send over draw commands "draw the
| letter A here using this font", or you can send opengl calls,
| or you can send dumb bitmap updates. You can get the other end
| of the connection to do compositing ("blur this buffer and
| overlay it over that buffer with 50% transparency").
|
| You can also get the remote end of the connection to decode
| videos - so when you hit play on an MP4 video inside an RDP
| connection, the actual video decoding gets done on the client
| not the server.
| jeroenhd wrote:
| Windows has a special rendering mode for applications when RDP
| is being used to optimise the connection by redrawing as little
| as possible. It has the ability to dynamically switch between
| crisp, pixel accurate forward-chunked-GDI-draw-calls mode to a
| connection speed based compression level of an H.264/H.265
| stream. There are also a bunch of extensions related to GPU
| acceleration.
|
| If you use RDP on a Windows server with a consumer GPU, you van
| hack the Nvidia driver to make more NVENC streams available
| (they're capped in software) to run more RDP heads without
| overhead.
|
| RDP also does sound forwarding, local drive forwarding, printer
| forwarding, and USB device forwarding (up to a point). It also
| supports a wide range of security features and authentication
| as security requirements have increased over the years, and has
| built-in support for bastion hosts/gateways.
|
| One very interesting feature is the ability to RDP only
| specific applications rather than the desktop. Cassowary will
| let you "use Windows applications" by using a Windows VM and
| using RDP to run the applications on Linux as if they were
| running locally (Cassowary also automatically suspends the VM
| which is what sets it apart). It's a bit like X11 forwarding,
| except your local files and drives available without extra
| commands to set up reverse SSHFS mounts.
|
| VNC is to RDP what telnet is to HTTP/3. The underlying concepts
| are the same, but the implementations have very different
| feature sets and advancements. Does VNC even support passwords
| longer than right characters yet? Last time I checked, VNC
| servers still truncated your password.
|
| Being proprietary, RDP support on Linux is very limited in
| comparison. RDP clients like Remmina support a surprising
| amount of features, but on the server side things aren't as
| compatible. For example, connecting to xrdp works great from
| desktop clients, but the Microsoft client on Android is slow as
| hell.
|
| I've also experienced buggy behaviour on Gnome when FreeRDP
| tries to render window borders in app mode. Window borders
| don't get drawn right and clicks seem to be shifted by it for
| some reason.
|
| I don't blame the FreeRDP/xrdp developers for any bugs or
| problems because RDP is a terribly complex protocol with tons
| of features, but sadly Linux doesn't seem to have an
| implementation or alternative that compares to Windows and RDP
| together.
| remram wrote:
| Is that only a client? Or is there also a server that can run on
| Linux?
| aidenn0 wrote:
| It includes a server as well, at least for shadowing an x11
| desktop.
| hedora wrote:
| RDP is definitely the better protocol (cached client side assets,
| hardware accelerated video compression), but I've always had
| trouble making it work.
|
| For Linux, FreeBSD and OpenBSD hosts, and Unix / MacOS clients, I
| use tigervnc (be sure to also use their client). It's the fastest
| vnc implementation I have seen, and reasonably trouble-free.
|
| My main complaint is that the MacOS client hasn't been updated
| for hidpi mode, so MacOS applies a gaussian blur to the session
| window. (Screen Sharing is the built in MacOS VNC client. It
| supports HiDPI, but the session immediately hangs when I use it.)
| tekchip wrote:
| I'm surprised to find no mention of RustDesk.
| https://rustdesk.com/ I self host it and it works great
| everywhere I need it.
| Semaphor wrote:
| Just wanted to mention that I thought their banner was cool,
| great for non-technical people:
|
| > WARNING: YOU MAY BE BEING SCAMMED!
|
| > If you are on the phone with someone you DON'T know AND TRUST
| who has asked you to install RustDesk, do not install and hang
| up immediately.
|
| > They are likely a scammer trying to steal your money or other
| private information.
| karrot-kake wrote:
| Thanks for the suggestion. What do you use it for? Is it good
| for coding? Reading emails? I am in a position where I have to
| do student work from two computers and I would love to host
| this on my server and always work using it.
| sneak wrote:
| It appears to not be free software; it is only open core.
___________________________________________________________________
(page generated 2023-09-28 23:00 UTC)