El uso de aplicaciones de acceso a escritorio remoto permiten tener el control total de una computadora remota desde cualquier computadora o dispositivo, sin importar el sistema operativo del dispositivo con el que se quiere acceder.

La ventaja de configurar este servicio en la Raspberry es que permite utilizarla sin dispositivos conectadas a ella y tampoco es necesario configurar el firewall ya que no cuenta con uno.

Instalación.

Para instalar el servidor de VNC en la Raspbery Pi se utiliza el comando apt desde una terminal de comandos.

$ sudo apt install tightvncserver

Para la configuración inicial, se ejecuta el servico de tightvnc, en este caso pedirá una contraseña que no pase de 8 caracteres.

$ tightvncserver

En caso de querer cambiar la contraseña de acceso al servidor remoto, se puede utilizar el siguiente comando.

$ vncpasswd

Configuración de VNC server como un servicio de arranque automático.

Existen diferentes modos de invocar el servicio de VNC server, ya sea una línea de comando indicando todos los parámetros de configuración, en un archivo de comando para su ejecución rápida desde una terminal o como un servicio que se ejecute de modo automático al iniciar el sistema operativo. En este caso, instalaremos el servicio de VNC para que se ejecute al arrancar el sistema operativo.

Para ello se requiere crear un archivo llamado vncboot en la carpeta de init.d, en el se indicarán los parámetros de configuración del servidor de VNC.

Desde una terminal de comandos se crea un archivo con el editor de texto.

$ sudo nano /etc/init.d/vncboot

En el se copia el siguiente código, si se desea cambiar la resolución del monitor o los colores del mismo, se tiene que modificar la línea donde se indica -geometry y -depth.

#! /bin/sh
# /etc/init.d/vncboot

### BEGIN INIT INFO
# Provides: vncboot
# Required-Start: $remote_fs $syslog
# Required-Stop: $remote_fs $syslog
# Default-Start: 2 3 4 5
# Default-Stop: 0 1 6
# Short-Description: Start VNC Server at boot time
# Description: Start VNC Server at boot time.
### END INIT INFO

USER=pi
HOME=/home/pi

export USER HOME

case "$1" in
 start)
  echo "Starting VNC Server"
  #Insert your favoured settings for a VNC session
  su - $USER -c "/usr/bin/vncserver :1 -geometry 1280x800 -depth 16 -pixelformat rgb565"
  ;;

 stop)
  echo "Stopping VNC Server"
  /usr/bin/vncserver -kill :1
  ;;

 *)
  echo "Usage: /etc/init.d/vncboot {start|stop}"
  exit 1
  ;;
esac

exit 0

Finalmente, se tienen que cambiar los permisos de ejecución del archivo, para que de este modo el sistema operativo pueda ejecutarlo.

$ sudo chmod 755 /etc/init.d/vncboot

Para actualizar las reglas, se ejecutan los siguientes comandos y se reinicia la Raspberry.

$ sudo update-rc.d -f lightdm remove
$ sudo update-rc.d vncboot defaults
$ sudo reboot

De este modo se tiene activado el servicio de VNC en la Raspberry Pi, y con cualquier cliente de VNC es posible realizar la conexion, solo se tiene que indicar el puerto VNC al final de la dirección IP, el puerto de conexión VNC es :1,

Conclusión. Aunque la Raspberry Pi ya tiene activado por default la conexion SSH, muchas veces es útil tener acceso al entorno gráfico del sistema operativo, cabe mencionar, que ha diferencia del tradicional escritorio remoto, no se va a tomar posesion del escritorio que se observa en el monitor, sino que se crea un monitor nuevo en el puerto :1, de este modo, se podrían crear múltiples monitores para los accesos remotos de VNC.

@viktor_ivan