En este documento se describe cómo configurar OS Login y OS Login con autenticación de dos factores (2FA).
OS Login te permite controlar el acceso a las instancias de máquina virtual (VM) en función de los permisos de gestión de identidades y accesos (IAM). Puedes usar OS Login con o sin la autenticación de dos factores, pero no puedes usar la autenticación de dos factores sin usar OS Login. Para obtener más información sobre OS Login y la autenticación de dos factores de OS Login, incluidos los tipos de verificación que admite OS Login, consulta Información sobre OS Login.
Antes de empezar
- Si quieres usar la autenticación de dos factores de OS Login, habilita la autenticación de dos factores en tu dominio o cuenta:
-
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
-
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.
- Set a default region and zone.
Terraform
Para usar las muestras de Terraform de esta página en un entorno de desarrollo local, instala e inicializa la CLI de gcloud y, a continuación, configura las credenciales predeterminadas de la aplicación con tus credenciales de usuario.
Instala Google Cloud CLI.
Si utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
If an authentication error is returned, and you are using an external identity provider (IdP), confirm that you have signed in to the gcloud CLI with your federated identity.
Para obtener más información, consulta Set up authentication for a local development environment.
Limitaciones
OS Login no se admite en las siguientes VMs:- Máquinas virtuales de Windows Server y SQL Server
- Máquinas virtuales de Fedora CoreOS. Para gestionar el acceso a las instancias de las VMs creadas con estas imágenes, usa el sistema de Ignition de Fedora CoreOS.
- La autenticación de dos factores de OS Login no se admite en las VMs que usan la federación de identidades de Workforce con OS Login.
Asignar roles de gestión de identidades y accesos de OS Login
Asigna todos los roles de gestión de identidades y accesos necesarios a los usuarios que se conecten a las VMs que tengan habilitado el inicio de sesión con SO.
Rol Usuarios obligatorios Nivel de concesión roles/compute.osLogin
oroles/compute.osAdminLogin
Todos los usuarios En el proyecto o en la instancia.
Si un usuario necesita acceso SSH desde la consola o la interfaz de línea de comandos de Google Cloud, debes asignarle estos roles a nivel de proyecto o, además, asignarle un rol a nivel de proyecto que contenga el permiso
compute.projects.get
. Google Cloudroles/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 de la máquina virtual a la que se conectan En la organización.
Un administrador de la organización debe conceder este rol.
Habilitar OS Login
Puedes habilitar OS Login u OS Login con autenticación de dos factores en una sola VM o en todas las VMs de un proyecto configurando los metadatos de OS Login.
Cuando configuras los metadatos de OS Login, Compute Engine elimina los archivos
authorized_keys
de la VM y deja de aceptar conexiones de claves SSH almacenadas en los metadatos del proyecto o de la instancia.Habilitar OS Login en todas las VMs de un proyecto
Para habilitar OS Login en todas las VMs de un proyecto, define los siguientes valores en los metadatos del proyecto:
- Habilita OS Login:
- Tecla:
enable-oslogin
- Valor:
TRUE
- Tecla:
- (Opcional) Habilita la autenticación de dos factores:
- Tecla:
enable-oslogin-2fa
- Valor:
TRUE
- Tecla:
Habilitar OS Login en una sola VM
Para habilitar el inicio de sesión del SO en una sola VM, define los siguientes valores en los metadatos de la instancia:
- Habilita OS Login:
- Tecla:
enable-oslogin
- Valor:
TRUE
- Tecla:
- (Opcional) Habilita la autenticación de dos factores:
- Tecla:
enable-oslogin-2fa
- Valor:
TRUE
- Tecla:
Habilitar OS Login durante la creación de la VM
Habilita OS Login (opcionalmente, con la verificación en dos pasos) al crear una VM con la Google Cloud consola o la CLI de gcloud.
Consola
Crea una VM que habilite OS Login y (opcionalmente) la autenticación de dos factores de OS Login al iniciarse. Para ello, crea una VM a partir de una imagen pública y especifica las siguientes configuraciones:
- Expande la sección Opciones avanzadas.
- Despliega la sección Seguridad.
- Despliega la sección Gestionar acceso.
- Selecciona Controlar el acceso a la VM mediante permisos de gestión de identidades y accesos.
- Opcional: Si quieres habilitar la autenticación de dos factores de OS Login, selecciona Requerir verificación en dos pasos.
- Haz clic en Crear para crear e iniciar la VM.
gcloud
-
In the Google Cloud console, 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.
Crea una VM que habilite OS Login y (opcionalmente) la autenticación de dos factores de OS Login al iniciarse ejecutando uno de los siguientes
gcloud compute instance create
comandos:Para habilitar solo el inicio de sesión del SO, ejecuta el siguiente comando:
gcloud compute instances create VM_NAME \ --image-family=IMAGE_FAMILY \ --image-project=IMAGE_PROJECT \ --metadata enable-oslogin=TRUE
Para habilitar la autenticación de dos factores de inicio de sesión del SO, ejecuta 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
Haz los cambios siguientes:
VM_NAME
: nombre de la nueva VM.IMAGE_FAMILY
: la familia de imágenes de un SO Linux. De este modo, se crea la VM a partir de la imagen de SO no obsoleta más reciente. Para ver todas las familias de imágenes públicas, consulta Detalles del sistema operativo.IMAGE_PROJECT
: el proyecto de imagen que contiene la familia de imágenes. Cada SO tiene su propio proyecto de imagen. Para ver todos los proyectos de imágenes públicas, consulta Detalles del sistema operativo.
Opción 1: Define
enable-oslogin
en los metadatos de todo el proyecto para que se aplique a todas las máquinas virtuales del proyecto.Usa el recurso de Terraform
google_compute_project_metadata
y define un valor de metadatos dondeoslogin=TRUE
:También puedes definir
enable-oslogin
comoFALSE
para inhabilitar el inicio de sesión del SO.Opción 2: Define
enable-oslogin
en los metadatos de una VM nueva o de una que ya tengas.Usa el recurso de Terraform
google_compute_instance
y defineoslogin=TRUE
. Sustituyeoslogin_instance_name
por el nombre de tu VM.También puedes definir
enable-oslogin
comoFALSE
para evitar que tu máquina virtual use OS Login.
Terraform
Puede aplicar los valores de metadatos a sus proyectos o VMs mediante una de las siguientes opciones:
Conectarse a VMs que tengan habilitado OS Login
Conéctate a las máquinas virtuales que tengan habilitado OS Login mediante los métodos descritos en Conectarse a máquinas virtuales de Linux.
Cuando te conectas a máquinas virtuales que tienen habilitado el inicio de sesión del SO, Compute Engine usa el nombre de usuario que el administrador de tu organización ha configurado para ti. Si el administrador de tu organización no ha configurado un nombre de usuario para ti, Compute Engine genera un nombre de usuario con el formato
USERNAME_DOMAIN_SUFFIX
. Para obtener más información sobre los nombres de usuario, consulta Cómo funciona el inicio de sesión del SO.Cuando te conectas a máquinas virtuales que tienen habilitada la autenticación de dos factores de inicio de sesión del SO, también ves un mensaje en función del método de verificación en dos pasos o del tipo de verificación que hayas seleccionado. Si eliges el método de notificación en el teléfono, acepta las notificaciones en tu teléfono o tablet para continuar. Para otros métodos, introduce tu código de seguridad o tu contraseña de un solo uso.
Solucionar problemas de OS Login
Para consultar los métodos para diagnosticar y resolver errores de OS Login, consulta Solucionar problemas de OS Login.
Siguientes pasos
- Consulta cómo funcionan las conexiones SSH a máquinas virtuales Linux en Compute Engine.
- Consulta cómo usar certificados SSH (vista previa) para conectarte a máquinas virtuales.
- Consulta cómo usar SSH con llaves de seguridad (vista previa) para restringir aún más el acceso a las VMs.
A menos que se indique lo contrario, el contenido de esta página está sujeto a la licencia Reconocimiento 4.0 de Creative Commons y las muestras de código están sujetas a la licencia Apache 2.0. Para obtener más información, consulta las políticas del sitio web de Google Developers. Java es una marca registrada de Oracle o sus afiliados.
Última actualización: 2025-09-12 (UTC).
-