¡Esta es una revisión vieja del documento!
Como desplegar remoto con un tunel SSH
Descripción
VNC para despliegue remoto es muy inseguro para sacarlo a internet. Sin demasiada complicacion se puede
hacer un tunel con SSH y desplegar remoto.
Prerequistos
VNC y SSH
Procedimiento
Para hacer vnc a traves de ssh .. .para hacerlo mas seguro se usael port-forwarding de ssh.
1. Tiene cuenta al otro lado
Debe tener cuenta y password en el otro lado con servidor sshcorriendo. O sea tiene acceso ssh. Ademas debe tener un sesionde vnc corriendo en el servidor.
2. Debe ejecutar el forwardeador
ssh -N -f -L 5901:server.example.com:5901 server.example.com Con este comando se asocia el puerto 5901 (primer valor) de lamaquina local con el puerto remoto de server.example.com(segundo valor)Si su usuario es diferente tendra que hacerssh -l usuario -N -f -L 5901:server.example.com:5901 server.example.com
Si el puerto es otro
ssh -p 2222 -l usuario -N -f -L 5901:server.example.com:5901 server.example.com Por ejemplo para babylon desde afuerassh -p 2222 -l usuario -N -f -L 5901:192.168.8.200:5901 skina.homelinux.org
3. Lance el aplicativo
vncviewer localhost:1
Lo que implica que realmente se esta haciendo vncviewer server.example.com:5901
pero por el tunel ssh.
Y debe funcionar.
4. O al reves. Mapee el puerto de aqui para alla
Puede hacer lo contrario .. que es mapear el puerto de alla hacia aca. Por ejemplo si quiere que user un proxy en mi maquina
ssh -p 2222 -l usuario -N -f -R 3128:192.168.8.200:3128 skina.homelinux.org
Por ejemplo si requiero tener internet en una maquina cerrada que solo tengo con ella conexion VPN + SSH .. Que hago?
- Levanto la VPN - Monto proxys: squid (3128) y un DNS (53) (ejm: dnsmasq) - Mapeo los puertos ssh -p 2222 -l root -N -f -R 3128:192.168.8.253:3128 172.19.4.21 - Varibles de ambiente en el destino export ftp_proxy=“http://localhost:3128” export http_proxy=“http://localhost:3128” export https_proxy=“http://localhost:3128”
Esto suele ser suficiente pero si esta tan bloqueado a veces toca agregar DNS tambien - ssh -p 2222 -l root -N -f -R 53:192.168.8.253:53 172.19.4.21 En el resolv.con toca agregar options use-vc nameserver 127.0.0.1
En el caso de NPM tambien toca otra variable de ambiente export CGI_HTTP_PROXY=“http://localhost:3128”
Problemas
1. En windows se muere la conexion
Toca ponerle un keepalive a mano .. y funciona
.\\plink.exe -a -2 -C -t -noagent -ssh -i .\\id_rsa.ppk -P 2222 -l admin -L 0.0.0.0:2222:172.16.63.129:2222 172.16.63.129 while true ; do echo -n -e “\\\\r\\\\e[OK– `date`” ; sleep 60s ; done
Este script imprime cada minuto la fecha … bonito
-
Referencias
- https://blog.trackets.com/2014/05/17/ssh-tunnel-local-and-remote-port-forwarding-explained-with-examples.html
- http://www.passivemode.net/updates/2006/6/5/ssh-vnc.html –
FIN
Advertencia
Este documento es privado y es de uso exclusivo de sus autores y de SKINA TECH. Cualquier uso sin una autorización escrita es contra le ley de derechos de autor y de propiedad intelectual, y será motivo de una acción legal.
14-Julio-2005\t\tKasandra\tv0.1 Primera version