jueves, abril 20, 2017

Para hacer tunneling por SSH para VNC en MacOS/Linux

Paso 1: Ingrese vía terminal a la máquina remota (RemoteHost), en la máquina remota, revisar en qué puerto esta escuchando nuestra sesión VNC:

sudo lsof -i -P | grep -i "listen"

Paso 2: en el listado que aparece, buscar la de nuestro interés, por ejemplo, en éste listado busqué la de mi interés:

Xvnc4     28258       user1    3u  IPv6 23132179      0t0  TCP *:5903 (LISTEN)

y veo que mi sesión esta siendo escuchada en el puerto TCP: 5903

Paso 3: Procedo en mi computadora u ordenador local a pedir un túnel por SSH vía terminal:

ssh -L 5903:localhost:5903 user1@RemoteHost -f -N

ingreso el passwd de la máquina remota y listo.

Paso 4: ahora abro el cliente VNC en mi máquina local, y solo pido: 

localhost:3

y listo.

Paso 5: Puedo verificar en la terminal de la máquina local el túnel abierto:

ps x

y en el listado de procesos veo el túnel asi:

 2294   ??  Ss     0:00.17 ssh -L 5903:localhost:5903 user1@RemoteHost -f -N

Paso 6: por seguridad, al terminar la sesión hay que matar ese proceso en mi computadora local:

kill 2294

y listo. 

Para volver a tener el túnel hay que repetir estos 6 pasos.

Nota: Si usas como cliente VNC en Mac OS X,  visor ahí nativo es "Compartir Pantalla", al abrirlo desde el FINDER, con la opción CMD+K, sólo escribe en el campo ir:

localhost:5903

y podrás accesar sin problema alguno.