FreeNX en Ubuntu Dapper Drake

Tras un fin de semana desastroso, continuo con el blog.
El tema de hoy, FreeNX en Ubuntu.

Una cosa que debo reconocer de Microsoft, es el grado de optimización que ha logrado con el protocolo de Terminal Services, también conocido como Remote Desktop. Cuando me veo forzado a usar windows es el método que prefiero para interactuar con mi máquina, y dado que carece de la seguridad adecuada para un paranoico como yo, lo uso a travez de un tunel de ssh. El rendimiento simplemente es magnífico, sobre mi velocidad de salida de 128K en mi casa. Cuando migré a linux, buque una alternativa similar. El sistema X windows soporta nativamente conexión remota, pero consume ancho de banda en cantidades industriales. Mis 128k de subida no eran suficientes para una conexión usable de X. El protcolo VNC nunca ha sido de mi agrado, por la falta de privacia que supone en el servidor. Me resigné a usar solo command line a travez de ssh, hasta que encontré FreeNX, una implementación open source del protocolo NX.

Para intalarlo en ubuntu dapper drake, di de alta los repositorios de seveas: http://free.linux.hp.com/~brett/seveas/freenx/

Y despues un:

sudo apt-get update
sudo apt-get install freenx

Y el tutorial en: https://help.ubuntu.com/community/FreeNX

Decidí no usar las llaves de NX, por mi naturaleza paranoica, asi que cree las llaves propias. el comando es:

sudo su
cd /var/lib/nxserver/home/.ssh
ssh-keygen -d -f /var/lib/nxserver/home/.ssh/id_dsa
chown nx id_dsa*
cat id_dsa.pub > authorized_keys2
cat id_dsa.pub > authorized_keys
chown nx authorized_keys*
nxserver –restart
nxserver –adduser <nombre_de_usuario>
nxserver –passwd <nombre_de_usuario>
exit

este último paso agrega la llave de freenx a ~/.ssh/authorized_keys2 pero esto no es suficiente, (al menos en mi caso). Hay que realizar un:

cat ~/.ssh/authorized_keys2 >> ~/.ssh/authorized_keys

para que se logre la autenticacion. De las llaves que creamos al principio, la que no tiene extension pub es la que utilizaremos para autenticarnos ante el servidor. Debemos moverla a un drive usb u otra carpeta que podamos accesar de manera remota en dado caso. Despues de eso, dependiendo del window manager que querramos ejecutar, le podemos dar en custom en el client, yo en mi caso al estar usando xfce4 el comando es startxfce4.

Al iniciar por primera vez, me di cuenta que el aMsn no queria correr por un error relacionado con que no identificaba el color negro, lo que ocurre es que el servidor FreeNX tiene compilado en si buscar el archivo rgb.txt en /usr/X11R6/lib/X11/rgb, siendo que la familia ubuntu lo guarda en /etc/X11/rgb.txt. Para arreglar esto:

sudo ln -s /etc/X11/rgb.txt /usr/X11R6/lib/X11/rgb.txt

y listo, el amsn y cualquier otro programa que dependa de la tabla rgb se ejecuta de manera perfecta.

Este no pretende ser un tutorial completo, hay varios en internet, pero algunos tips son:

– Modificar /etc/nxserver/node.conf, y cambiar el puerto sshd al que use en realidad la máquina.
(tener sshd corriendo en puerto 22 es maaaala idea) SSHD_PORT=xxxxx
– Modificar el mismo archivo y escribir NX_LOG_LEVEL= 7, esto ayuda mucho en saber que esta fallando en caso de problemas, el log del servidor se almacena en /var/log/nxserver.log

Fuera de eso, tener sueeeerte, el soporte de FreeNX para ubuntu Dapper Drake no es tan bueno como podria ser.
Proximamente continuare con este tema.

3 respuestas to “FreeNX en Ubuntu Dapper Drake”

  1. charlie Says:

    Ei, saludos compañero!
    Verás, estoy liado hace un rato tratando de poner en marcha nx (lo he instalado desde los repos de free linux hp) y me he encontrado con que… no se qué debo emplear como cliente! jaja, me podrías decir que debo usar como tal?

    Venga grácias. Y ánimo, que parece que tienes el blog abandonaillo xD

  2. Rubén Says:

    Charli, como cliente te recomiendo que utilices el de nomachine (http://www.nomachine.com/download.php). No es libre, pero sí gratuito, y además está disponible para MUCHAS plataformas (hay una versión para la PS2).
    Creo que hay algún proyecto de cliente libre, pero por visto aún le queda camino que andar.

  3. daniel Says:

    que buen how to pero tengo una pregunta debo tener instalado ssh-server o solo ssh client, para ser mas calro como lo instalo
    sudo apt-get sshxxxxxx-xxxx

    gracias por tu ayuda de antemano

Deja un comentario