Configurar el inicio de sesión del sistema operativo


Este documento describe cómo configurar el inicio de sesión en el sistema operativo y el inicio de sesión en el sistema operativo con autenticación de dos factores (2FA).

El inicio de sesión del sistema operativo le permite controlar el acceso a instancias de máquinas virtuales (VM) según los permisos de IAM. Puede usar el inicio de sesión del sistema operativo con o sin 2FA, pero no puede usar 2FA sin usar el inicio de sesión del sistema operativo. Para obtener más información sobre el inicio de sesión del sistema operativo y el inicio de sesión del sistema operativo 2FA, incluidos los tipos de desafíos que admite el inicio de sesión del sistema operativo, consulte Acerca del inicio de sesión del sistema operativo .

Antes de comenzar

Limitaciones

El inicio de sesión en el sistema operativo no es compatible con las siguientes máquinas virtuales:
  • Máquinas virtuales Windows Server y SQL Server
  • Máquinas virtuales Fedora CoreOS. Para administrar el acceso de instancia a las máquinas virtuales creadas con estas imágenes, use el sistema de encendido Fedora CoreOS

Asignar roles de IAM de inicio de sesión en el sistema operativo

Asigne todos los roles de IAM requeridos a los usuarios que se conectan a máquinas virtuales que tienen habilitado el inicio de sesión en el sistema operativo.

Role Usuarios requeridos Nivel de subvención
roles/compute.osLogin o roles/compute.osAdminLogin Todos los usuarios

En el Proyecto o instancia .

Si un usuario requiere acceso SSH desde la consola de Google Cloud o la CLI de Google Cloud, debes otorgar estos roles a nivel de proyecto o, además, otorgar un rol a nivel de proyecto que contenga el permiso compute.projects.get .

roles/iam.serviceAccountUser Todos los usuarios, si la VM tiene una cuenta de servicio En la cuenta de Servicio .
roles/compute.osLoginExternalUser Usuarios de una organización diferente a la máquina virtual a la que se están conectando

Sobre la Organización .

Este rol debe ser otorgado por un administrador de la organización.

Habilitar inicio de sesión en el sistema operativo

Puede habilitar el inicio de sesión en el sistema operativo o el inicio de sesión en el sistema operativo con autenticación de dos factores para una única máquina virtual o todas las máquinas virtuales de un proyecto configurando los metadatos de inicio de sesión en el sistema operativo.

Cuando configuras los metadatos de inicio de sesión del sistema operativo, Compute Engine elimina los archivos de authorized_keys de la VM y ya no acepta conexiones de claves SSH que están almacenadas en los metadatos del proyecto o de la instancia.

Habilite el inicio de sesión del sistema operativo para todas las máquinas virtuales de un proyecto

Para habilitar el inicio de sesión en el sistema operativo para todas las máquinas virtuales de un proyecto, establezca los siguientes valores en los metadatos del proyecto :

  1. Habilitar inicio de sesión en el sistema operativo:
    • Clave: enable-oslogin
    • Valor: TRUE
  2. (Opcional) Habilite la autenticación de dos factores:
    • Clave: enable-oslogin-2fa
    • Valor: TRUE

Habilite el inicio de sesión en el sistema operativo para una sola máquina virtual

Para habilitar el inicio de sesión en el sistema operativo para una única máquina virtual, establezca los siguientes valores en los metadatos de la instancia :

  1. Habilitar inicio de sesión en el sistema operativo:
    • Clave: enable-oslogin
    • Valor: TRUE
  2. (Opcional) Habilite la autenticación de dos factores:
    • Clave: enable-oslogin-2fa
    • Valor: TRUE

Habilite el inicio de sesión del sistema operativo durante la creación de VM

Habilite el inicio de sesión en el sistema operativo (opcionalmente, con verificación en dos pasos) mientras crea una máquina virtual mediante la consola de Google Cloud o la CLI de gcloud.

Consola

Cree una máquina virtual que habilite el inicio de sesión en el sistema operativo y (opcionalmente) el inicio de sesión en el sistema operativo 2FA al inicio; para ello, cree una máquina virtual a partir de una imagen pública y especifique las siguientes configuraciones:

  1. Expanda la sección Opciones avanzadas .
  2. Expanda la sección Seguridad .
  3. Expanda la sección Administrar acceso .
  4. Seleccione Controlar el acceso a la máquina virtual mediante permisos de IAM .
  5. Opcional: si desea habilitar el inicio de sesión en el sistema operativo 2FA, seleccione Requerir verificación en dos pasos .
  6. Haga clic en Crear para crear e iniciar la VM.

nube de gcloud

  1. In the Google Cloud console, activate Cloud Shell.

    Activate Cloud Shell

    At the bottom of the Google Cloud console, a Cloud Shell session starts and displays a command-line prompt. Cloud Shell is a shell environment with the Google Cloud CLI already installed and with values already set for your current project. It can take a few seconds for the session to initialize.

  2. Cree una máquina virtual que habilite el inicio de sesión en el sistema operativo y (opcionalmente) el inicio de sesión en el sistema operativo 2FA al inicio ejecutando uno de los siguientes comandos gcloud compute instance create :

    • Para habilitar solo el inicio de sesión en el sistema operativo, ejecute el siguiente comando:

      gcloud compute instances create VM_NAME \
       --image-family=IMAGE_FAMILY \
       --image-project=IMAGE_PROJECT \
       --metadata enable-oslogin=TRUE
      
    • Para habilitar el inicio de sesión en el sistema operativo 2FA, ejecute el siguiente comando:

      gcloud compute instances create VM_NAME \
       --image-family=IMAGE_FAMILY \
       --image-project=IMAGE_PROJECT \
       --metadata enable-oslogin=TRUE,enable-oslogin-2fa=TRUE
      

    Reemplace lo siguiente:

    • VM_NAME : el nombre de la nueva VM.
    • IMAGE_FAMILY : la familia de imágenes de un sistema operativo Linux. Esto crea la máquina virtual a partir de la imagen del sistema operativo no obsoleta más reciente. Para todas las familias de imágenes públicas, consulte Detalles del sistema operativo .
    • IMAGE_PROJECT : el proyecto de imagen que contiene la familia de imágenes. Cada sistema operativo tiene su propio proyecto de imagen. Para todos los proyectos de imágenes públicas, consulte Detalles del sistema operativo .

Terraformar

Puede aplicar los valores de metadatos a sus proyectos o máquinas virtuales mediante una de las siguientes opciones:

  • Opción 1: configure enable-oslogin en los metadatos de todo el proyecto para que se aplique a todas las máquinas virtuales de su proyecto.

    Utilice el recurso Terraform google_compute_project_metadata y establezca un valor de metadatos donde oslogin=TRUE :

    resource "google_compute_project_metadata" "default" {
      metadata = {
        enable-oslogin = "TRUE"
      }
    }

    Alternativamente, puede configurar enable-oslogin en FALSE para deshabilitar el inicio de sesión en el sistema operativo.

  • Opción 2: configurar enable-oslogin en los metadatos de una máquina virtual nueva o existente.

    Utilice el recurso Terraform google_compute_instance y establezca oslogin=TRUE . Reemplace oslogin_instance_name con el nombre de su VM.

    resource "google_compute_instance" "oslogin_instance" {
      name         = "oslogin-instance-name"
      machine_type = "f1-micro"
      zone         = "us-central1-c"
      metadata = {
        enable-oslogin : "TRUE"
      }
      boot_disk {
        initialize_params {
          image = "debian-cloud/debian-11"
        }
      }
      network_interface {
        # A default network is created for all GCP projects
        network = "default"
        access_config {
        }
      }
    }

    Alternativamente, puede configurar enable-oslogin en FALSE para excluir su VM del uso del inicio de sesión del sistema operativo.

Conéctese a máquinas virtuales que tengan habilitado el inicio de sesión en el sistema operativo

Conéctese a máquinas virtuales que tengan habilitado el inicio de sesión en el sistema operativo mediante los métodos descritos en Conexión a máquinas virtuales Linux .

Cuando te conectas a máquinas virtuales que tienen habilitado el inicio de sesión en el sistema operativo, Compute Engine usa el nombre de usuario que el administrador de tu organización configuró para ti . Si el administrador de su organización no ha configurado un nombre de usuario para usted, Compute Engine genera un nombre de usuario con el formato USERNAME_DOMAIN_SUFFIX . Para obtener más información sobre los nombres de usuario, consulte Cómo funciona el inicio de sesión en el sistema operativo .

Cuando se conecta a máquinas virtuales que tienen habilitado OS Login 2FA, también ve un mensaje basado en el método de verificación en dos pasos o el tipo de desafío seleccionado. Para el método de indicación telefónica, acepte las indicaciones en su teléfono o tableta para continuar. Para otros métodos, ingrese su código de seguridad o contraseña de un solo uso.

Solucionar problemas de inicio de sesión del sistema operativo

Para encontrar métodos para diagnosticar y resolver errores de inicio de sesión en el sistema operativo, consulte Solución de problemas de inicio de sesión en el sistema operativo .

¿Qué sigue?