¿Cómo iniciar sesión en VM desde un host que es un servidor remoto?

¿Cómo iniciar sesión en VM desde un host que es un servidor remoto?

Mi máquina host es un servidor remoto en el que creé una VM usando qemu. Creé la VM usando el siguiente comando:

./qemu-system-x86_64 -hda /home/divija/images/xenial-server-cloudimg-amd64-disk1.img -cdrom /home/divija/images/ubuntu-16.04.6-server-i386.iso -m 8G -boot d -smp 4 -monitor stdio -net user,hostfwd=tcp::2222-:22 -net nic

Veo el resultado:

QEMU 2.9.91 monitor - type 'help' for more information
(qemu) VNC server running on 127.0.0.1:5900

Luego, en una terminal diferente intento iniciar sesión en la VM desde el host a través de ssh

ssh -p 5900 divija@localhost

Pero recibo el mensaje de error:

 ssh_exchange_identification: Connection closed by remote host
  1. ¿Debo iniciar sesión usando el puerto 2222 o 5900? ¿Por qué se crea en 5900 cuando explícitamente di 2222?
  2. ¿Existe alguna forma de iniciar sesión en la máquina virtual sin reenvío de puertos?

Respuesta1

No estoy seguro de la pregunta 1, ya que nunca he usado qemu, pero creo que podrías estar intentando ingresar mediante ssh a un servidor vnc (tu salida en la máquina virtual dice: VNC server running on 127.0.0.1:5900y puede que me equivoque otra vez, pero no creo que puedas ingresar mediante ssh a un Servidor vnc. Puede utilizar Putty para conectarse a servidores vnc.

para la pregunta 2, le sugiero que use ngrok para reenviar el puerto 5900, por lo que, por ejemplo, ejecutar esto en la máquina virtual: ngrok tcp 5900le permitiría acceder a ese puerto desde más allá de su red local.

información relacionada