Geek Gal: Setting up NX Terminal Server on Ubuntu

French German Italian Spanish

WARNING RARE TECHNICAL POSTING – please feel free to glaze over if the following means nothing to you (please try not to dribble uncontrollably though, I hate that). For those that do have the need or desire to do computer technical duties then you might find this useful (or not, as the case may be) as a remote desktop or terminal server/ thin client solution.

Background:
My partner is in Australia for several months and so has to use a dial-up Internet connection with capped bandwidth usage (Advance Australia unfair?). I have setup a remote desktop to allow her to connect to and use, thus confining the greater bandwidth usage to our unlimited broadband connection in Blightey so she gets a speedier desktop experience via dialup whilst only consuming the small bandwidth needed to receive the remote desktop itself. The solution I’ve chose is NX server which is a way of transmitting a compressed X desktop via an encrypted SSH connection thus ensuring security. It’s best thought of as almost like citrix for linux. This is a true linux terminal server solution that will allow multiple accounts and users to be logged in at the same time whether on dial-up or broadband. I intend to employ a similar thin client setup for a local community group enabling the running of a fast modern desktop on ancient donated computers.

Here’s the heads up on the setup:

PIII 866 computer with 384Mb ram (one of the pile of donated computers I have around)
Ubuntu 6.10

NX free edition for linux

The setup routine (in order)went like this
Install Ubuntu Linux on the PIII
Undertake any upgrades or extra software installs
setup account(s)
Install Free NX in this order:

Client, node and then server from here (Ubuntu .deb)

(Non Ubuntu RPM and tar options here )

Install ssh:

Gnome terminalOpen Terminal:

sudo apt-get install ssh

(Optional bits in italics)On some machines or networks, port 22 may be blocked or not allowed. For example, some providers block port 22. To make the SSH server listen on port 877, you can do the following

Edit the file /etc/ssh/sshd_config

sudo gedit /etc/ssh/sshd_config

Find

Port 22

and change it to

Port 877

You then need to restart SSHD:

Gnome terminalagain in terminal:

sudo /etc/init.d/ssh restart

(Optional bits ONLY if you had to change the default SSH port)

Edit the file /etc/nxserver/node.conf

sudo gedit /etc/nxserver/node.conf

Find

# The port number where local ’sshd’ is listening.

#SSHD_PORT=22

and change it to

# The port number where local ’sshd’ is listening.

SSHD_PORT=877

(end of optional bit)

Install no-ip dynamic dns service on the server (if like me you are not guaranteed a permanent static IP address)
Go to the website, signup and choose a host identity

Gnome terminalOpen up your terminal and run “sudo apt-get install no-ip”.
Then run “sudo no-ip -C”
Select your appropriate login information and chosen host

Port forward port 22 (or 877 if you’ve optionally configured for that port) to the server station via your firewall. Mine is done via my broadband router.

Issue connection details to the person desiring remote access
Available clients (windows, OS X, and linux) are here

Problems:
Unlike my previous experience with FreeNX installed via apt, I only had one initial support issue once setup and that was that the remote connection was only getting a black screen so I added the /usr/bin/gnome-settings-daemon via the Ubuntu system-prefs-sessions to the server start-up which seemed to clear the problem.

There, icky technical stuff over and done with….bleeeaaahhh! (chocolate, I need chocolate, give it to me).

What did I tell you about the dribbling?


add to del.icio.us :: Add to Blinkslist :: add to furl :: Digg it :: add to ma.gnolia :: Stumble It! :: add to simpy :: seed the vine :: :: :: TailRank