NX inside VE
My goals were simply to be able to connect to a VE using an NX client. This is handy for when I work from home and wish to run a web browser on my work's internal network to access local resources. I connect using a gutsy desktop and using nxclient.
Contents
Installation
Create a new VE using the gutsy template. Edit /etc/apt/sources.list and enable the "multiverse" repository. Installed X and XDM
apt-get install xorg xdm
Then I added this 3rd party repo to sources.list
deb http://www.datakeylive.com/ubuntu gutsy main deb-src http://www.datakeylive.com/ubuntu gutsy main
Install the repo keys and update:
wget http://www.datakeylive.com/ubuntu/dists/gutsy/wjeremy.key -O - | sudo apt-key add - wget http://www.datakeylive.com/ubuntu/dists/gutsy/alivesoftware.key -O - | sudo apt-key add - sudo apt-get update
Install FreeNX
apt-get install expect openssh-server tcl8.4 libxcomp2 libxcompext2 libxcompshad nxlibs nxagent nxproxy nxclient freenx
Finally install XFCE
apt-get install xfce4
Configuration
Configuring X
In /etc/X11/xdm/xdm-config, comment out the line where it says DisplayManager.requestPort: 0
In /etc/X11/xdm/Xservers, comment out the line :0 local /usr/bin/X :0 vt7 (this starts a local X server, which will fail)
In /etc/X11/xdm/Xaccess, uncomment the line with * #any host can get a login window (Please keep in mind the security implications by the above line. Read the comments found in the file and set it appropriately)
Configure NX Server
Edit /etc/X11/xorg.conf. Ensure that the files section looks similar to this:
Section "Files" # path to defoma fonts FontPath "/usr/share/fonts/X11/misc" FontPath "/usr/share/fonts/X11/100dpi/:unscaled" FontPath "/usr/share/fonts/X11/75dpi/:unscaled" FontPath "/usr/share/fonts/X11/Type1" FontPath "/usr/share/fonts/X11/100dpi" FontPath "/usr/share/fonts/X11/75dpi" EndSection
Now create a local user account:
useradd -m <username>
Now add this user to nxserver:
nxserver --adduser <username>
Configure NX client
Setup the Host/Port. In the desktop section select Unix and Custom. In Settings, select "Run the default X client script on server" and select "New virtual Desktop".
Now try to connect. You should get the XFCE desktop.
Thanks to dantalizing for the feedback.