When connecting to a Linux desktop remotely it seems like the only games in town are NX and VNC. NX is now very not free. And VNC is stuck in the 70s - authentication doesn't even have the concept of a username, let alone key authentication, PAM integration, secure transport, etc. I don't think it takes advantage of any vaguely modern advances in video coding.

There are a load of other programs but they generally just use VNC underneath.

Is there a program that I can install on my Linux machine, that will then let me connect:

  1. Securely.
  2. Easily - no faffing with web servers or manually creating X sessions, etc.
  3. Using system authentication - ideally it would connect over ssh.
  4. With decent performance.
  5. For no cost.

As far as I can tell NX4 fits the bill except it costs money to run the server.

  • 1
    Don't most VNC clients also support tunneling via SSH? That would meet all 5 of your requirements. To do that manually, see SSH Tunneling to VNCServer on our sister-site.
    – Izzy
    Sep 20, 2018 at 11:55
  • Only in the sense that everything supports tunnelling via SSH. It definitely doesn't meet the "easy" criteria.
    – Timmmm
    Sep 20, 2018 at 14:16
  • Can you clarify "easy"? For example, easy for a techy guy, easy for Aunt Suzie, easy to script, etc. May 21, 2019 at 22:25
  • I would consider it easy if it either comes with a simple GUI, like Windows Remote Desktop, or is as simple as ssh (i.e. I can just run foo me@host).
    – Timmmm
    May 22, 2019 at 7:54

3 Answers 3


I think X2Go fits your requirements, based on NX3. https://wiki.x2go.org/doku.php/start

I use it and while it's not perfect, it's the best I've found so far.

It may be in your distro's repository. X support only, no Wayland.

Uses ssh, logs in to existing sessions or creates new sessions using remote system accounts, and has a cool "seamless" application mode for running a remote program in a local window.

Problems I've encountered are mostly with keymaps. i.e. in session mode, some keys don't register correctly for me.

  • This looks like a decent option. NX3 is still based on remote X, which is why it doesn't support Wayland (or Windows or Mac) but it sounds better than anything anyone else has suggested.
    – Timmmm
    Jan 19, 2020 at 20:07

You might want to clarify what Kind oft "remote desktop" you want:

  1. Mirror the screen, i.e. interact with the user session which is currently active on the physical screen.
  2. Open a New session exclusively for the remote user.

1.) is the target oft VNC, but also TeamViewer and the likes. It is useful for remote assistance, but not well suited for remote working. 2.) is RDP, and NX as well, IIRC. This is useful for (multiple) remote workers.

Back in the days, remote working in UNIX was very common, with thin Clients connected to a central Workstation. After all, that's what the X window system client server model was made for. This is now very uncommon. If you're looking for some remote assistance tool (case 1), then I think VNC+SSH is still the best option. If you're looking for something like windows remote desktop services, then I am afraid there is none.

  • Either would be a start, but this isn't really an answer.
    – Timmmm
    Sep 23, 2018 at 11:11

Even today tunneling an X session over SSH works just fine.

On a Mac, you can install the X server from the apple store, Linux/BSD you have it native, and for Windows there are X servers in the app store, or other commercial offerings, or you can use cygwin-x

  • The performance is not good and it is not easy. (Try RDP if you want to see how easy it should be.)
    – Timmmm
    Apr 22, 2019 at 21:14
  • Xnest :1 & export DISPLAY=:1 ssh -Y user@remote mate-session - not sure what is hard about that, if you need an icon to click on write a little launcher script.
    – ivanivan
    Apr 23, 2019 at 0:40
  • a) This is hard. Did you try Remote Desktop? How many complicated command lines are required by that? b) This requires root, and c) This starts a new X session every time you connect. Who wants that?
    – Timmmm
    Apr 23, 2019 at 15:25
  • 1) Remote Desktop is a Windows thing. 2) does not require root. 3) only requires Xnest (new X server) if you want to run a full desktop.
    – ivanivan
    Apr 23, 2019 at 16:29
  • 1) So? It was just an example of something that isn't difficult to use. 2) You may be right but it gave me a difficult-to-understand permission error when I tried it. I thought you said it was easy? 3) How? Is there another "easy" command?
    – Timmmm
    Apr 24, 2019 at 17:09

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.