Voy a ser lo más breve posible, pues siempre que he buscado algo relacionado con este tema, me he vuelto loco. Pasos para hacer un tunel SSH a VNC:
- Acceder remotamente al servidor destino (ssh) y arrancar el servidor VNC (personalmente prefiero arrancarlo manualmente por motivos de seguridad, y poder terminar cuando finalice la tarea)
- sudo apt-get install vnc4server
- vncpasswd (para establecer la contraseña)
- vncserver :2 -geometry 1024×768 (para lanzarlo en la X 2 –> puerto 5902 y con el tamaño oportuno)
- Ejecutar: ssh -p 2222 -f -L 5901:localhost:5902 usuario@<ip> sleep 7200 donde
- -p si el puerto ssh se encuentra configurado en otro puerto p.ej: 2222
- -L puertolocal:localhost:puertoremoto, se establece un tunel ssh entre el puerto local 5901 y el puerto remoto 5902
- usuario@<ip>
- sleep 7200, establecemos el tunel durante 2 horas. No es bueno mantener el tunel hasta la eternidad.
- Abrir el cliente de conexión remota preferido y teclear: localhost:1 (puerto local donde se ha establecido el tunel)
Para finalizar que no se os olvide, una vez terminada la tarea, bajar el servidor vnc:
vncserver -kill :2 (indicando el entorno X a terminar)