Conectarse a máquinas virtuales Windows mediante SSH


En este documento se describe cómo conectarse a instancias de máquinas virtuales (VMs) de Windows mediante SSH. Para ver otras formas de conectarse a máquinas virtuales de Windows, consulta los artículos Conectarse a máquinas virtuales de Windows mediante RDP y Conectarse a máquinas virtuales de Windows mediante PowerShell. Para saber cómo funciona SSH en Compute Engine, consulta el artículo Acerca de las conexiones SSH.

Antes de empezar

  • Si aún no lo has hecho, configura la autenticación. La autenticación verifica tu identidad para acceder a Google Cloud servicios y APIs. Para ejecutar código o ejemplos desde un entorno de desarrollo local, puedes autenticarte en Compute Engine seleccionando una de las siguientes opciones:

    Select the tab for how you plan to use the samples on this page:

    Console

    When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.

    gcloud

    1. Instala Google Cloud CLI. Después de la instalación, inicializa la CLI de Google Cloud ejecutando el siguiente comando:

      gcloud init

      Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.

    2. Set a default region and zone.

Imágenes compatibles

Se admite SSH para Windows en imágenes de Windows Server que ejecuten la versión 20220527.00 o posterior del agente invitado (GCEGuestAgent) y la versión 8.6 o posterior de OpenSSH.

Habilitar SSH para máquinas virtuales Windows

Para habilitar las conexiones SSH a máquinas virtuales Windows, instala el paquete google-compute-engine-ssh y asigna el valor TRUE a la clave enable-windows-ssh en los metadatos del proyecto o de la instancia. Si habilitas SSH para Windows en los metadatos del proyecto, se habilitará en todas las VMs Windows de tu proyecto. Si habilitas SSH para Windows en los metadatos de una instancia, se habilitará SSH en una sola VM y se anulará el valor definido en los metadatos del proyecto.

Habilitar SSH para Windows al crear una VM

Habilita SSH para Windows al crear una VM mediante la Google Cloud consola o la CLI de Google Cloud.

Consola

Crea una VM a partir de una imagen pública que instale el paquete google-compute-engine-ssh y habilite SSH al inicio:

  1. Especifica las siguientes propiedades de Disco de arranque:

    • Sistema operativo: Windows Server
    • Versión: cualquier versión
  2. En la sección Opciones avanzadas, despliega la sección Gestión.

  3. En la sección Metadatos, haz clic en Añadir elemento. Añade una secuencia de comandos de inicio que instale el paquete google-compute-engine-ssh introduciendo el siguiente par clave-valor de metadatos:

    • Clave: sysprep-specialize-script-cmd
    • Valor: googet -noconfirm=true install google-compute-engine-ssh
  4. En la sección Metadatos, haz clic en Añadir elemento. Asigna el valor enable-windows-ssh a TRUE introduciendo el siguiente par clave-valor de metadatos:

    • Clave: enable-windows-ssh
    • Valor: TRUE
  5. Haz clic en Crear para crear e iniciar la VM.

gcloud

Ejecuta el siguiente gcloud compute instances createcomando para crear una VM de Windows Server que instale el paquete google-compute-engine-ssh y habilite SSH al inicio:

gcloud compute instances create VM_NAME \
    --image-family=IMAGE_FAMILY \
    --image-project=windows-cloud \
    --metadata sysprep-specialize-script-cmd="googet -noconfirm=true install google-compute-engine-ssh",enable-windows-ssh=TRUE

Haz los cambios siguientes:

Habilitar SSH para Windows en una VM en ejecución

Para habilitar SSH en una VM Windows en ejecución, haz una de las siguientes acciones, en función de si puedes usar RDP para acceder a tu VM o si tu carga de trabajo puede tolerar un reinicio:

  • Acceso RDP necesario: conéctate a la VM mediante RDP e instala el paquete SSH.
  • Reinicio necesario: usa una secuencia de comandos de inicio para instalar el paquete SSH

RDP

Si puedes acceder a tu VM mediante RDP, habilita SSH haciendo lo siguiente:

  1. Conéctate a la VM mediante RDP.

  2. Abre una sesión de petición de comando de administrador de la siguiente forma:

    1. Abre el menú Inicio.

    2. Ve a Símbolo del sistema.

    3. Haz clic con el botón derecho en Símbolo del sistema y selecciona Ejecutar como administrador.

      Si se te pide que permitas que el símbolo del sistema haga cambios en tu dispositivo, selecciona .

  3. Descarga e instala el paquete google-compute-engine-ssh ejecutando el siguiente comando:

    googet -noconfirm=true install google-compute-engine-windows && googet -noconfirm=true install google-compute-engine-ssh
    
  4. Cierra la sesión RDP.

  5. Habilita SSH de Windows en los metadatos configurando la clave enable-windows-ssh en TRUE. Para obtener más información sobre cómo definir metadatos, consulta Definir metadatos personalizados.

Secuencia de comandos de inicio

Si no puedes acceder a tu VM mediante RDP, habilita SSH siguiendo estos pasos:

  1. Detén la VM.

  2. Define los siguientes pares clave-valor de metadatos en la VM para habilitar SSH. Para obtener más información sobre cómo definir metadatos, consulta Definir metadatos personalizados.

    • Metadatos de instalación del paquete SSH:

      • Clave: windows-startup-script-cmd
      • Valor: googet -noconfirm=true update && googet -noconfirm=true install google-compute-engine-ssh
    • Metadatos de habilitación de SSH:

      • Clave: enable-windows-ssh
      • Valor: TRUE
  3. Inicia la VM. La VM puede tardar unos minutos en reiniciarse.

Conectarse a máquinas virtuales mediante SSH

Conéctate a las VMs mediante el comando gcloud compute ssh:

gcloud compute ssh VM_NAME

Sustituye VM_NAME por el nombre de la VM de Windows a la que quieras conectarte.

Conectarse a máquinas virtuales que usan AD

Si la VM a la que te vas a conectar usa Active Directory (AD), conéctate con el siguiente comando:

gcloud compute ssh DOMAIN\USERNAME@VM_NAME

Haz los cambios siguientes:

  • DOMAIN: tu dominio de AD. Por ejemplo, el dominio del ad.example.com AD es example.
  • USERNAME: tu nombre de usuario de AD. Por ejemplo, cloudysanfrancisco.
  • VM_NAME: el nombre de la VM de Windows a la que quieras conectarte.

Siguientes pasos