Esta es una pregunta frecuente y respondida. Sin embargo, las soluciones no me funcionan, así que me gustaría un poco de ayuda para descubrir por qué no. Sé que he hecho esto con éxito en el pasado.
He mirado: Túnel VNC a través de conexión SSH
Túnel VNC a través de conexión SSH
http://crl.ucsd.edu/handbook/vnc/
http://martybugs.net/smoothwall/puttyvnc.cgi
Tengo PUTTY configurado de la siguiente manera:
Abro la conexión al servidorA. Entonces
ssh -L 5901:localhost:5901 serverB
Una vez conectado, inicio una sesión de VNC
-bash-4.1$ vncserver :1
New 'serverB:1 (balter)' desktop is serverB:1
Starting applications specified in /home/users/balter/.vnc/xstartup
Log file is /home/users/balter/.vnc/serverB:1.log
-bash-4.1$
Debería estar listo, así que intento conectar VNC a localhost
o localhost:0
o localhost:5900
. La conexión falla.
¿Sugerencias?
EDITAR:Debería haber agregado que el servidor B está detrás de un firewall, por lo que necesito usar el servidor A como intermediario.
EDITAR 2 - basado en el comentario de Nikita:
Salida de netstat -inpt
en el servidor B
-bash-4.1$ netstat -inpt
Kernel Interface table
Iface MTU Met RX-OK RX-ERR RX-DRP RX-OVR TX-OK TX-ERR TX-DRP TX-OVR Flg
bond0 1500 0 25034847553 0 0 0 0 0 0 0 BMmRU
eth0 1500 0 7645087 0 0 0 148398 0 0 0 BMRU
eth4 1500 0 10494292891 0 0 0 0 0 0 0 BMsRU
eth5 1500 0 10644409020 0 0 0 0 0 0 0 BMRU
eth6 1500 0 14540554669 0 0 0 0 0 0 0 BMsRU
ib0 1500 0 5055 0 0 0 4267 0 1 0 BMRU
lo 65536 0 8932391289 0 0 0 8932391289 0 0 0 LRU
-bash-4.1$
¿Cómo interpreto esto?
Respuesta1
¿No se olvidó de hacer clic en el botón "Agregar" en el cuadro de diálogo capturado para agregar especificaciones directas a la lista?
¿Está seguro de que su último servidor remoto utiliza 5901? Parece que debería, pero verifique esto con netstat después de ejecutar vncserver.
Podría ser mejor utilizar sólo un delantero. Reenvíe no al host local, sino al servidor B directamente en el cuadro de diálogo de Putty. Solo necesitará conectarse al servidor B a través de SSH para ejecutar vncserver allí, no es necesario reenviar nada. Por supuesto, el vncserver del servidor B no solo debería escuchar en el host local. (El código de reenvío SSH resuelve los nombres en el servidor, por lo que el servidor B solo debe poder resolverse en el servidor A, incluso si usa su nombre en el cuadro de diálogo de Putty).