15

Currently I have a very powerful dedicated server I run Windows 10 on and RDP into from other Windows "thin clients".

This works very well and you can barely feel that you're RDPing. Multiple monitors, audio, microphones, USB, etc. all just work.

I'd prefer to be using Linux, Manjaro or any of the Debian/Ubuntu flavours, on the dedicated server with a desktop environment.

And I wouldn't mind if my thin clients used Linux or Windows.

I've tried VNC, xrdp, freerdp, nomachine, etc, but none are as performant, stable, and feature-rich as RDP on Microsoft Windows. They still feel very remote.

I only need a single session at a time, and I only ever use one client at a time. Multi monitor support for my client is a must.

Peter Mortensen
  • 1,029
  • 1
  • 8
  • 10
Daniel Dewhurst
  • 266
  • 2
  • 7
  • Do you want to remote from Linux to Windows, or Linux to Linux? – RonJohn Dec 30 '20 at 22:41
  • I want to remote to Linux, from either windows or Linux. The main thing is being able to swap windows for Linux on my server. – Daniel Dewhurst Dec 31 '20 at 00:26
  • 3
    It sounds like a question for [Software Recommendations](https://softwarerecs.stackexchange.com/tour). – Peter Mortensen Dec 31 '20 at 03:28
  • Have you tried anything based on SPICE? I find it to generally be the most performant option, though server implementations are largely limited to VMM software. – Austin Hemmelgarn Dec 31 '20 at 16:24
  • @AustinHemmelgarn I've not. I'm looking into it now. I just tried Fedora WS 33 on my server and installed xrdp and tightvnc-server, it worked pretty damn well, just some visible drawing when the screen did animations. – Daniel Dewhurst Dec 31 '20 at 16:39

4 Answers4

6

Partial answer

I was using vnc, but it was a bit too slow. I then did a little research and found x2go. However I have not yet done more than a basic test, so don't know the performance (but it claims to be good). Both are for sharing the whole desktop. I use ssh -X for sharing individual ad-hoc windows.

Jeff Schaller
  • 66,199
  • 35
  • 114
  • 250
ctrl-alt-delor
  • 27,473
  • 9
  • 58
  • 102
  • I'll spin up a Linux VM on my server and set it up and see what it's like. – Daniel Dewhurst Dec 30 '20 at 14:28
  • Tried it out on Fedora host, Windows 10 client, terrible performance. Horrible drawing when dragging windows around etc. Fiddled with the settings too. – Daniel Dewhurst Dec 30 '20 at 16:54
  • @DanielDewhurst Signed up for Unix/Linux SE for this comment... I've found X2Go is as responsive, if not more, than a Windows RDP setup at my work. My typical use case is CentOS 7 hosts on Win7 or Win10 clients, and I run 2D CAD tools with minimal issue over company intranet or VPN (coast-to-coast US). It's not as great as running locally, but on par with RDP. I'd suggest a little more time adjusting the settings to try and get better performance. I typically use png-jpeg-4k compression, IIRC. – Shamtam Dec 31 '20 at 04:39
  • @Shamtam I'll give it another go and try that compression. Thanks. – Daniel Dewhurst Dec 31 '20 at 12:59
  • `ssh -Y` can be used instead to compress X traffic IIRC. – val - disappointed in SE Dec 31 '20 at 15:48
  • `-Y` is a `ssh` security option (turns off security). Not a compression option. – ctrl-alt-delor Dec 31 '20 at 15:51
  • @Shamtam Thanks for the comment. But why you say "DanielDewhurst Signed up for Unix/Linux SE for this comment." – ctrl-alt-delor Dec 31 '20 at 15:54
5

If you really want the Linux analog of a Windows Remote Desktop Service system, you should look into the Linux Terminal Server Project (ltsp).

This is the very definition of having one server and all clients just being thin clients (that may even run without local hard drives). Your thin client could then be e.g. a virtual machine on your PC.

Setting this up of course is a task of its own, bandwidth a key factor in functionality, and be warned that seemingly the whole project was more or less rewritten from scratch in 2019, so older guides may not be valid anymore and I do no know which version made into Debians current stable release.

FelixJN
  • 12,616
  • 2
  • 27
  • 48
  • This does sound interesting, however maybe overkill for my needs. I just want to remote to a Linux machine and have it feel like it's not remote. – Daniel Dewhurst Dec 30 '20 at 14:16
3

Linux traditionally use the X Window System (or simply X11 or X) as its GUI platform which was an independent project predating both Windows and Linux, as it was originally designed at MIT to solve some of their internal needs. Other GUI's existed at that time. X11 is the only survivor - probably because it was open source and solved an actual need.

X11 has built in support for transparently letting the user work with a program at another machine than the machine where the program actually run across the network. This has been adequate enough for another solution not to get up and replace it even though it has some issues, and may be useful for you too.

If you go that way, you will need X11 server software (the terms are reversed for historical reasons) on your thin clients, which typically allow you to integrate the windows of the remote program(s) so they look native. You can also use the XDMCP protocol to run as an old fashioned X terminal getting a desktop. Running "ssh -Y" will let the server ssh'ed to see the X11 server software on your client. All this is very easy on Linux machines, but require extra software on Windows. You may want to look into a commercial product to save time.

Note that if you run Ubuntu you can enable screen sharing, which will allow a VNC client to connect to your desktop.

  • 3
    Remote X11 has become not as useful as it used to be. It's mostly due to modern software tending to send bitmaps instead of rendering commands (cf. `QT_GRAPHICSSYSTEM=raster` that became default in latest Qt4 and the only mode in Qt5). Also, OpenGL is limited to 1.4 on Mesa when indirect rendering is used, which makes it impossible to run any modern GL apps via remote X11. This technology has become pretty much useless, unfortunately. – Ruslan Dec 31 '20 at 11:47
1

On elementaryOS, I am using Remmina. OSS, supports multiple monitors, and is speedy. It's speedy enough that I am playing games over it, mostly without lag, through a VPN -> SSH Tunnel.

wjandrea
  • 658
  • 7
  • 19
Canadian Luke
  • 1,056
  • 2
  • 12
  • 26