Accediendo a Linux con VNC

Recientemente he instalado VNC en los ordenadores que tengo en casa con el fin de poder acceder a ellos desde cualquier otro.

La versión de VNC que he utilizado ha sido TightVNC y la verdad es que ha sido realmente sencillo hacerlo en Windows. Sin embargo la instalación del servidor en Linux ha sido algo más complicada. Para empezar tuve problemas instalando el rpm ya que me indicaba que no tenía instalado el paquete XFree86. Revisando un poco vi que ya tenía instalado RealVNC a partir de la instalación que hice en su día de Fedora Core 2. Dado que ambos utilizan el mismo protocolo me decidí a arrancarlo y probar a conectarme desde un equipo windows, aunque no iba a ser tan sencillo.

Trasteando y mirando por internet comencé a entender el funcionamiento de VNC bajo Linux, que es sustancialmente diferente al de Windows. En windows lo que hace VNC es tomar el control de la sesión activa, por lo que si hay un usuario delante del equipo verá moverse el ratón conforme otro usuario lo mueva desde el cliente VNC. Sin embargo bajo Linux VNC funciona creando un nuevo display, por lo que no se interfiere con el display que esté utilizando un usuario activo. Aún así es posible obtener el mismo funcionamiento que bajo windows utilizando utilidades como Gemsvnc o Gnome-Vino.

Para poder acceder desde el cliente windows tuve que modificar únicamente un par de archivos:

En el archivo /etc/sysconfig/vncservers hay que añadir las siguientes entradas para habilitar el display 1 para el usuario «nombreusuario» a un tamaño 1024×768

VNCSERVERS="1:nombreusuario"
VNCSERVERARGS[1]="-geometry 1024x768"

En el archivo /home/nombreusuario/.vnc/xstartup hay que descomentar algunas líneas y comentar otras para que arranque el gestor de ventanas correcto. En otro caso el gestor que nos arranca es muy básico, el twm, con una terminal únicamente.

# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc
 
#[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
#[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
#xsetroot -solid grey
#vncconfig -iconic &
#xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
#twm &

Ahora ya sólo falta crear un password para el usuario en vnc. Esto se hace mediante el comando vncpasswd nombreusuario.

Una vez realizados estos pasos ya tendríamos configurado el servidor VNC en linux. Para conectarnos desde el cliente deberíamos solicitar una conexión indicando la dirección IP o nombre del servidor, y el display que queramos utilizar, por ejemplo: 192.168.10.100:1

Si todo ha ido bien nos pedirá el password que hemos configurado, tras lo cual se nos mostrará el escritorio de Linux, tal como lo habríamos visto de conectarnos directamente en el equipo. Hay que recordar que estamos manejando un display diferente (1), por lo que sería posible acceder al equipo y trabajar desde el display normal (0) sin interferir entre ellos.

Más referencias:

Twitter Digg Delicious Stumbleupon Technorati Facebook Email

7 Respuestas para “Accediendo a Linux con VNC”

  1. Necesito tener multisesiones con VNC se puede hacer

  2. Pues no lo he probado pero supongo que sí. En los archivos de configuración mencionados hemos preparado un display para controlarlo con el vnc, en concreto el display 1, pero se podrían añadir más líneas en los archivos para activar otros displays, cada uno con su configuración.

  3. Fantástica explicación y ejecución perfecta
    Ya iba a instalar otras herramientas porque no encontraba la solución.

  4. Hola.
    He seguido todos los pasos pero no puedo conectarme desde el cliente. He buscado algún proceso que se llame vnc pero no hay nada. Puede ser que no lo tenga arrancado? Debo reiniciar?

  5. Ah, vale, hay que ejecutar el comando «vncserver» para levantar el proceso.

  6. Hola, me estoy iniciando en linux, tengo Centos y al instalar vnc-server no me aparece por ningun lado el xstartup…que sera?
    no creo que haya que reiniciar..please ayuda….
    Aps, si me conecto desde linux a windows no hay problema…

  7. Hector Martinez 01. Jun, 2011 en 11:35 pm

    Hola.

    tengo instalado VNC en un server con Centos pero no me deja mover el mouse, es como si estubiera bloqueado, solo puedo trabajar con el teclado, ¿alguna sugerencia para esto? Gracias