Using NoMachine software (4.6.4 or earlier) to connect to unsupported platforms

Offering packages for a wide range of platforms and operating systems is a great effort in terms of development, maintenance and support and even if NoMachine pays the greatest attention to its users' needs, it is possible that your platform is not currently supported.

NoMachine is planning to make it easier to handle remote nodes when they are not NoMachine nodes. In its current implementation, when the server has multi-node support, you can add a new node (with NoMachine software installed) by running the 'nxserver --nodeadd' command. In the future it will be possible to extend this command to allow the adding of remote hosts without the NoMachine software installed there.

Until then, if your platform is not among the supported ones you can exploit all the NoMachine capabilities by getting your X application to securely forward its display to your NoMachine (virtual) session by X11 Forwarding over SSH. You can do this by means of a shell script to be executed on demand at session start-up.

This works with both connections by SSH and NX protocol and requires that the NoMachine server supports virtual sessions (not available with the free to download NoMachine package and NoMachine Enterprise Deesktop).

How to forward display of any X application to the NX session

The example below illustrates how to get a Solaris X86 desktop forwarded to the NoMachine session. You may easily extend this to fit your needs.

machine A is the machine owning the X application you want to forward. machine A could run Solaris X86 or whichever O.S. supporting X.

machine B is the machine where NoMachine server and its subsystem is installed. Machine B can run any of the O.S. among the Linux platforms supported by NoMachine. It's necessary that the NoMachine server supports virtual desktop sessions (not available with NoMachine free and NoMachine Enterprise Desktop).

machine C is the machine where a NoMachine client is installed and the NoMachine session will be displayed. It's the end-user's machine.

user A is any of the system accounts on machine A.

user B is any of the system accounts on machine B.

Configure machine A

It is advisable to enable public key authentication on machine A. This allows secure authentication of users on machine A by means of an SSH key pair and without the need for providing any password.

1) Ensure that SSH server on machine A:

- Is configured to permit public-key authentication.

- Has the X11Forwarding directive enabled.

2) Generate a pair of SSH keys, by default id_dsa.pub and id_dsa.

3) On machine A, add the public key, i.e. id_dsa.pub, to the authorized keys file of user A, usually '/home/userA/.ssh/authorized_keys2' or '/home/userA/.ssh/authorized_keys'.

- In the Custom - Settings panel choose 'Run the following command' and specify path to the forward.sh script on machineB.
For example: /home/userB/scripts/forward.sh

- In the NX Client login dialog, insert login and password for user B and start the session.

Alternative method

As an alternative, you might want to configure NoMachine to run the forward.sh script as an X-window system start-up script. In this way forward.sh will become the X-window system start-up script for all users enabled to log on to the NoMachine server on machine B and a request for running the default X client script on the server. The script has to be executable by all users.