En este documento se describe cómo crear un par de claves SSH para instancias de máquina virtual (VM) de Compute Engine con el fin de conectarse de forma segura a las instancias de VM de Compute Engine.
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
-
Instala Google Cloud CLI. Después de la instalación, inicializa la CLI de Google Cloud ejecutando el siguiente comando:
gcloud initSi 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.
REST
Para usar las muestras de la API REST de esta página en un entorno de desarrollo local, debes usar las credenciales que proporciones a la CLI de gcloud.
Instala Google Cloud CLI. Después de la instalación, inicializa la CLI de Google Cloud ejecutando el siguiente comando:
gcloud initSi utilizas un proveedor de identidades (IdP) externo, primero debes iniciar sesión en la CLI de gcloud con tu identidad federada.
Para obtener más información, consulta el artículo Autenticarse para usar REST de la documentación sobre autenticación de Google Cloud .
Crear un par de claves SSH
Si te conectas a las VMs mediante la Google Cloud consola o la CLI de Google Cloud, Compute Engine crea claves SSH en tu nombre. Para obtener más información sobre cómo configura y almacena las claves Compute Engine, consulta Información sobre las conexiones SSH.
Si te conectas a las VMs mediante herramientas de terceros u OpenSSH, debes añadir una clave a tu VM para poder conectarte. Si no tienes una clave SSH, debes crear una. Las máquinas virtuales aceptan los formatos de clave que se indican en el
sshd_configarchivo.Linux y macOS
En las estaciones de trabajo Linux y macOS, usa la utilidad
ssh-keygenpara crear un par de claves SSH. En el siguiente ejemplo se crea un par de claves RSA.Abre un terminal y usa el comando
ssh-keygencon la marca-Cpara crear un nuevo par de claves SSH.ssh-keygen -t rsa -f ~/.ssh/KEY_FILENAME -C USERNAME
Haz los cambios siguientes:
KEY_FILENAME: el nombre del archivo de claves SSH.Por ejemplo, si el nombre de archivo es
my-ssh-key, se generará un archivo de clave privada llamadomy-ssh-keyy un archivo de clave pública llamadomy-ssh-key.pub.USERNAME: tu nombre de usuario en la VM. Por ejemplo,cloudysanfranciscoocloudysanfrancisco_gmail_com.En las máquinas virtuales Linux, el
USERNAMEno puede serroot, a menos que configures tu máquina virtual para permitir el inicio de sesión como superusuario. Para obtener más información, consulta Conectarse a máquinas virtuales como usuario raíz.En el caso de las VMs de Windows que usan Active Directory (AD), el nombre de usuario debe incluir el dominio de AD al principio, con el formato
DOMAIN\. Por ejemplo, el usuariocloudysanfranciscodel anuncioad.example.comtiene unUSERNAMEdeexample\cloudysanfrancisco.
ssh-keygenguarda el archivo de clave privada en~/.ssh/KEY_FILENAMEy el archivo de clave pública en~/.ssh/KEY_FILENAME.pub.La clave pública del usuario
cloudysanfranciscotiene un aspecto similar al siguiente:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAu5kKQCPF... cloudysanfrancisco
Windows 10 o una versión posterior
En las estaciones de trabajo con Windows 10 o una versión posterior, usa la utilidad
ssh-keygenpara crear un par de claves SSH. En el siguiente ejemplo se crea un par de claves RSA.Abre el símbolo del sistema y usa el comando
ssh-keygencon la marca-Cpara crear un nuevo par de claves SSH.ssh-keygen -t rsa -f C:\Users\WINDOWS_USER\.ssh\KEY_FILENAME -C USERNAME
Haz los cambios siguientes:
WINDOWS_USER: tu nombre de usuario en el ordenador Windows.KEY_FILENAME: el nombre del archivo de claves SSH.Por ejemplo, si el nombre de archivo es
my-ssh-key, se generará un archivo de clave privada llamadomy-ssh-keyy un archivo de clave pública llamadomy-ssh-key.pub.USERNAME: tu nombre de usuario en la VM. Por ejemplo,cloudysanfranciscoocloudysanfrancisco_gmail_com.En las máquinas virtuales Linux, el
USERNAMEno puede serroot, a menos que configures tu máquina virtual para permitir el inicio de sesión como superusuario. Para obtener más información, consulta Conectarse a máquinas virtuales como usuario raíz.En el caso de las VMs de Windows que usan Active Directory (AD), el nombre de usuario debe incluir el dominio de AD al principio, con el formato
DOMAIN\. Por ejemplo, el usuariocloudysanfranciscodel anuncioad.example.comtiene unUSERNAMEdeexample\cloudysanfrancisco.
ssh-keygenguarda el archivo de clave privada enC:\Users\WINDOWS_USER\.ssh\KEY_FILENAMEy el archivo de clave pública enC:\Users\WINDOWS_USER\.ssh\KEY_FILENAME.pub.La clave pública del usuario
cloudysanfranciscotiene un aspecto similar al siguiente:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAu5kKQCPF... cloudysanfrancisco
Windows 8 o versiones anteriores
En las estaciones de trabajo con Windows 8 o versiones anteriores, usa la herramienta PuTTYgen para crear un nuevo par de claves SSH. En el siguiente ejemplo se crea un par de claves RSA.
Descarga
puttygen.exesi aún no lo has hecho.Abre PuTTYgen.
En Parámetros, especifique lo siguiente:
- Tipo de clave que se va a generar:
RSA - Número de bits de una clave generada:
2048o más
- Tipo de clave que se va a generar:
Haz clic en Generar y sigue las instrucciones que aparecen en pantalla.
La herramienta muestra el valor de la clave pública.
En la sección Key comment (Comentario de clave), sustituye el texto predefinido por tu nombre de usuario. Por ejemplo,
cloudysanfranciscoocloudysanfrancisco_gmail_com.En las VMs Linux, el comentario de clave no puede ser
root, a menos que configures tu VM para permitir el inicio de sesión de root. Para obtener más información, consulta Conectarse a máquinas virtuales como usuario raíz.En el caso de las máquinas virtuales Windows que usan Active Directory (AD), el comentario de la clave debe incluir el dominio de AD al principio, con el formato
DOMAIN\. Por ejemplo, el usuariocloudysanfranciscode laad.example.comAD tiene un comentario clave deexample\cloudysanfrancisco.Opcional: introduce una contraseña de clave para proteger tu clave con una contraseña.
Haz clic en Guardar clave privada para elegir una ubicación donde guardar la clave privada.
PuTTYgen escribe la clave privada en un archivo con la extensión
.ppk.Haga clic en Guardar clave pública para elegir la ubicación donde quiere guardar la clave pública. Mantén abierta la ventana de PuTTYgen.
Copia el texto del campo Clave pública para pegarla en el archivo authorized_keys de OpenSSH.
Abre el archivo de clave pública. La clave pública tiene un formato similar al siguiente:
---- BEGIN SSH2 PUBLIC KEY ---- Comment: "USERNAME" KEY_VALUE ---- END SSH2 PUBLIC KEY ----
Sustituye todo el contenido del archivo de clave pública por el valor que has copiado del campo Clave pública para pegarla en el archivo authorized_keys de OpenSSH, de forma que el archivo de clave pública tenga el siguiente formato:
KEY_VALUE USERNAME
La clave pública del usuario
cloudysanfranciscotiene un aspecto similar al siguiente:ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDAu5kKQCPF... cloudysanfrancisco
Siguientes pasos
- Consulta cómo añadir claves SSH a máquinas virtuales.
- Consulta cómo funcionan las conexiones SSH en Compute Engine.
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-10-19 (UTC).
[[["Es fácil de entender","easyToUnderstand","thumb-up"],["Me ofreció una solución al problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Es difícil de entender","hardToUnderstand","thumb-down"],["La información o el código de muestra no son correctos","incorrectInformationOrSampleCode","thumb-down"],["Me faltan las muestras o la información que necesito","missingTheInformationSamplesINeed","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-10-19 (UTC)."],[],[]] -