Remote Access to UNIX X windows applications

The easiest way to get a remote X windows session is to use the Remote Access Portal. The portal provides a simple link that automatically sets up the necessary connection and runs an appropriately configured nxclient session for you.

 

Below are further details should you wish to have more control over the remote connection setup.

From UNIX/Linux/BSD systems

Using nxclient

The nxclient can provide remote terminal server access to the Linux desktop machines. It is designed to be efficient and fast.

To use the nxclient from outside the department you need to first create an ssh tunnel through the gate machine onto a local machine within the department. You can do this with a command of the form

ssh -L 2222:maths_host:22 username@gate.maths.ox.ac.uk

where you need to replace username with your maths username and maths_host with the name of a suitable machine within the department.

Having created the ssh tunnel start the nxclient and configure a session to connect to machine localhost with port 2222 using a UNIX GNOME desktop with SSL encryption of all traffic . When you start the session it will connect to port 2222 on your local machine which is the one being tunnelled via gate to the departmental machine.

You can also connect the remote nxclient session to your local printer. Note you may also need to adjust apparmor for remote printing to work. Lastly the cups ipp backend binary must be executable by an ordinary user - on the latest Ubuntu versions this is not correctly set so you need to correct it with sudo chmod 755 /usr/lib/cups/backend/ipp (you also have to rerun this if the cups package is updated on the machine, e.g. any automatic security updates).

Using ssh with X11 forwarding

Provided your UNIX/Linux system is running an X windows interface then all you need to do is ssh into a department machine making sure ssh is configured to do X forwarding. Note this approach is likely to be slower than using nxclient.

Note: if you are connecting from outside the department you need to first ssh to gate.maths.ox.ac.uk. Having connected to gate you should then ssh to another machine in the department that you know of to keep the load on gate down.

Example

ssh username@gate.maths.ox.ac.uk
ssh other-machine.maths.ox.ac.uk

where username would be replaced by your own username and other-machine would be replaced with a suitable machine name.

If you get an error about the DISPLAY not being set it most likely means your ssh client by default does not have X11 forwarding enabled. In this case you can either change the default settings, e.g. in the /etc/ssh/ssh_config, or use the additional option -X with the ssh command to enable X11 forwarding.

From Apple Macs (a BSD based system)

Firstly make sure you you install X11 from the OS X 10.3 or later CD set.

Having installed X11 you just need to start it before following the same procedure as above for UNIX/Linux/BSD systems using ssh with X11 forwarding.

Alternatively you can use an nxclient in which case start X11 first, then from the xterm that appears create the ssh tunnel as above and then start the nxclient as above.

Since Macs also use the cups printing system it is likely the information/links above for for Linux printing will be relevant.

From MS Windows

Using nxclient

The nxclient can provide remote terminal server access to the Linux desktop machines. It is designed to be efficient and fast.

To use the nxclient from outside the department you need to first create an ssh tunnel through the gate machine onto a local machine within the department.

Creating an ssh tunnel using putty

If you are using PuTTY, before you log in, click on Tunnels (at the bottom of the list on the left), and set

Source port: 2222,
Destination: maths_host:22,

select ``Local'' and click ``Add''.

In the above replace maths_host with the name of a suitable machine within the department.

Now log in to gate, as normal.

Creating an ssh tunnel using the SSH Secure Shell client

If you're using the SSH Secure Shell Client, click on Profiles -> Add Profile. Give the profile a name, for example, ``Tunnel to maths_host''. Now click Profiles -> Edit Profiles, select the profile you just created, and click on the Tunneling tab. Make sure the Outgoing tab is selected, click add, and set

Display Name: maths_host SSH
Type: TCP
Listen Port: 2222
Allow Local Connections Only: <ticked>
Destination Host: maths_host
Destination Port: 22

In the above replace maths_host with the name of a suitable machine within the department.

Now log in to gate as normal.

Having created the ssh tunnel start the nxclient and configure a session to connect to machine localhost with port 2222 using a UNIX GNOME desktop with SSL encryption of all traffic . When you start the session it will connect to port 2222 on your local machine which is the one being tunnelled via gate to the departmental machine.

You should also be able to connect the remote nxclient session to your local printer.