FreeNX

Differences between revisions 52 and 53
Revision 52 as of 2006-06-16 12:36:47
Size: 5260
Editor: 84-12-33-28
Comment:
Revision 53 as of 2006-06-19 16:06:29
Size: 50
Editor: 127
Comment:
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
[http://freenx.berlios.de FreeNX] is a system that allows you to access your desktop from another machine over the internet. You can use this to login graphically to your desktop from a remote location. One example of its use would be to have a FreeNX server set up on your home computer, and graphically logging in to the home computer from your work computer, using a FreeNX client.
## Removed link to spec, won't happen.

== Terminology ==

The ''Server'' is the computer you want to connect to. This is the computer where the FreeNX server will need to be installed. The name of the Ubuntu package providing the server is "freenx". For the example used here, the home computer is the server.

The ''Client'' is the computer from which you want to be able to access the ''Server''. The name of the Ubuntu package providing the client is "nxclient". For the example used here, the work computer is the client.

== Installing the FreeNX server ==
We will be installing the FreeNX server on the ''Server'' machine, i.e., the machine that you want to access remotely. In the stated example, this is your computer that is at home. For Ubuntu 5.10 and 6.06, there are prebuilt packages available. Several mirrors can be found at: SeveasPackages. After you add the repository, refresh your package information and then install the {{{freenx}}} package.

During installation you will be given the option to select NoMachine keys, or custom keys. It is best to select NoMachine keys.
''For the paranoid: there is absolutely NO added security risk involved in using the default keys. Read an [http://en.wikipedia.org/wiki/Secure_Sockets_Layer SSL] primer if you want to know the details about why this is the case''

## For defining custom keys; see below.

=== Configuring SSH ===
## Removed bogus section. Ubuntu doesn't do this by default and if you have the knowledge to break it, you can also fix it. Keep the howto simple.
By default, nxserver uses port 22 for communicating over SSH. On some machines or networks, port 22 may be blocked. For example, some providers block port 22. To make the SSH server listen on port 8888, you can do the following:

Edit the file /etc/ssh/sshd_config

Find {{{
Port 22}}}

and change it to {{{
Port 8888}}}

You then need to restart SSHD. Try {{{
/etc/init.d/ssh restart}}}

Edit the file /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=8888
}}}

That is, change the port number to the one that sshd is listening to, and uncomment the line.

== Installing the NX Client ==
You should be able to access your Ubuntu box from any Windows or Linux box using the free client from [http://www.nomachine.com/download_product.php?Prod_Id=10 NoMachine's website]. You can also embed your NX Server in a webpage by installing the Nomachine Web Companion and the Apache webserver.

Now you can execute the installed client using the following command:
{{{
/usr/NX/bin/nxclient &}}}
Or by looking it up in the menu

This will start the NX client in a GUI, and step you through getting connected to the FreeNX server, and you will be on your way!

== Miscellany ==

=== FreeNX on PowerPC ===
There are no precompiled binaries of FreeNX on this platform, so FreeNX have to be compiled from source. Sources for breezy can be found at SeveasPackages

These steps will build FreeNX from source:

 1. Create a directory to hold the FreeNX source, and cd into it. {{{
mkdir freenxSource; cd freenxSource}}}
 1. Build the freenx pacakges and install related packages. {{{
sudo apt-get build-dep nx freenx
apt-get -b source nx freenx}}} This will download the souce tarballs and build the freenx packages (*.deb) in the current directory.
 1. Install the FreeNX packages. {{{
sudo dpkg -i *.deb}}}
 1. If dpkg complains about missing packages, let apt fix it {{{
sudo apt-get -f install
sudo dpkg -i *.deb}}}

=== FreeNX on 64bit ===

FreeNX is not 64-bit safe, so you will have to build a 32-bit chroot.

=== How to start/stop FreeNX ===

The FreeNX server is not a service but uses ssh. The following command will stop the FreeNX program from accepting connections.

{{{
sudo nxserver --stop
}}}
(Replace --stop by --start for starting it again)

=== Using custom SSH keys ===
/!\ This is NOT supported by the FreeNX developers - only do this if you have no other option

 1. Generate the DSA private-public key pair. {{{
 ssh-keygen -t dsa}}} By default this key is places in ~/.ssh/id-dsa. You can leave the passphrase empty, this will not pose a security risk.
 1. Install the public key in the FreeNX serving machine. The key should be placed in the file authorized_keys2 in the .ssh dir of the user named nx. {{{
cat ~/.ssh/id_dsa.pub | sudo -u nx tee -a ~nx/.ssh/authorized_keys2}}}
 1. Install the private key in the NX client software. When creating a session, press the button labeled "Key" and select your new key in the window that pops up.

== References ==
 * [http://en.wikipedia.org/wiki/FreeNX FreeNX on Wikipedia]
 * [:SeveasPackages:FreeNX repository]

----
CategoryDocumentation
#REFRESH 0 http://help.ubuntu.com/community/FreeNX

FreeNX (last edited 2008-08-06 16:28:22 by localhost)