For everyone’s information. The free version of NoMachine v4 no longer supports connecting directly via SSH (it is only supported in the Enterprise version).
In fact when you download the rpm from their website, you are confronted with this warning:
NoMachine NX Free Edition 3 users read here:
The free NoMachine 4 is a new product aimed at a different use case. While NoMachine NX Free Edition 3 offered a free terminal server with virtual desktops created on demand, the free NoMachine 4 is designed to work the same across Windows, Mac and Linux and give users access to the physical desktop of the remote computer. If you need to create virtual desktops on demand, want to limit the logins to SSH, or are using NIS, Kerberos or other enterprise server functionalities, you need one of the NoMachine Enterprise server products you can download here.
Note that you can use NoMachine 4 as a client of an Enterprise server, or you can download the free Enterprise client here.
More information on this topic can be found here:
Some people don’t like these changes, and have suggested some alternatives here [arstechnica.com]
However, it is still possible to use SSH, as long as you create a tunnel to the machine you are trying to connect to. This is very well documented by NoMachine on their website here:
Connecting through SSH has some advantages:
- It [size=2]doesn’t require you to open any ports in the Firewall on the server side (apart from a port for SSH).
- It doesn’t rely on a single encryption technique to keep your data safe. (Set up password protected private-public SSH key pair for optimal security; more info: basics, link1, link2)
- It combines well with SSH so that it can also be used to connect to machine’s that are in a (corporate / academic) network where the machine can only be reached via an SSH Stepstone. (see Note 1 below)
- Can easily connect to a multi monitor setup (however, this works best if both the resolution and the number of screen on client and server match)
And some disadvantages:
- According to NoMachine it is slower (more processes involved and more encryption steps) than using their own protocol.
[/size]- Audio doesn’t work yet (application says: “Audio disabled on local connection”, which makes a bit of sense since I connect to localhost), but apparently it’s a bug that’s going to be fixed.
- Same problem for USB Devices, it seems. (“USB Devices disabled on local connection”)
- Also I haven’t been able to connect to printers on the server yet, or connect a disk.
- There was some problem with changing the resolution of the server to my client’s resolution (I would get kicked out) but as long as I adopt the server’s resolution, things work fine.
Nevertheless, the basic works, and it works smoothly*.
### Note 1: To use NX via an SSH Stepstone ###
Imagine the scenario where you cannot connect directly from a local pc to your remote pc because of a restrictive firewall.
However you can connect to a machine in the same network as your remote pc via SSH, and this machine can then connect to your remote pc. This is called an SSH Stepstone server.
i.e.
local-pc <---- SSH ----> SSH_Stepstone <---- SSH ----> remote-pc1
To work with NX in this case, add to your ~/.ssh/config file the following lines for respectively your SSH Stepstone server and your remote pc:
Host stepstone
User <your username>
HostName stepstone-server-hostname.domain.tld
Host remote-pc-hostname.domain.tld remote-pc
ProxyCommand ssh -q stepstone nc %h %p
Now you should be able to create a tunnel
ssh -L 4003:localhost:4000 username@remote-pc-hostname.domain.tld
And then point NX to your localhost port 4003
- Disclaimer: My personal opinion. I am in no way affiliated with NoMachine; just a regular academic user.