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 Trusted Cloud by S3NS 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 Trusted Cloud console to access Trusted Cloud by S3NS services and APIs, you don't need to set up authentication.
gcloud
-
Instala Google Cloud CLI y, a continuación, inicia sesión en gcloud CLI con tu identidad federada. Después de iniciar sesión, inicializa la CLI de Google Cloud ejecutando el siguiente comando:
gcloud init
- 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 y, a continuación, inicia sesión en gcloud CLI con tu identidad federada. Después de iniciar sesión, inicializa la CLI de Google Cloud ejecutando el siguiente comando:
gcloud init
Para obtener más información, consulta el artículo Autenticarse para usar REST de la documentación sobre autenticación de Trusted Cloud .
Crear un par de claves SSH
Si te conectas a las VMs mediante la Trusted 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_config
archivo.Linux y macOS
En las estaciones de trabajo Linux y macOS, usa la utilidad
ssh-keygen
para 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-keygen
con la marca-C
para 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-key
y un archivo de clave pública llamadomy-ssh-key.pub
.USERNAME
: tu nombre de usuario en la VM. Por ejemplo,cloudysanfrancisco
ocloudysanfrancisco_gmail_com
.En las máquinas virtuales Linux, el
USERNAME
no 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 usuariocloudysanfrancisco
del anuncioad.example.com
tiene unUSERNAME
deexample\cloudysanfrancisco
.
ssh-keygen
guarda el archivo de clave privada en~/.ssh/KEY_FILENAME
y el archivo de clave pública en~/.ssh/KEY_FILENAME.pub
.La clave pública del usuario
cloudysanfrancisco
tiene 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-keygen
para 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-keygen
con la marca-C
para 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-key
y un archivo de clave pública llamadomy-ssh-key.pub
.USERNAME
: tu nombre de usuario en la VM. Por ejemplo,cloudysanfrancisco
ocloudysanfrancisco_gmail_com
.En las máquinas virtuales Linux, el
USERNAME
no 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 usuariocloudysanfrancisco
del anuncioad.example.com
tiene unUSERNAME
deexample\cloudysanfrancisco
.
ssh-keygen
guarda el archivo de clave privada enC:\Users\WINDOWS_USER\.ssh\KEY_FILENAME
y el archivo de clave pública enC:\Users\WINDOWS_USER\.ssh\KEY_FILENAME.pub
.La clave pública del usuario
cloudysanfrancisco
tiene 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.exe
si 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:
2048
o 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,
cloudysanfrancisco
ocloudysanfrancisco_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 usuariocloudysanfrancisco
de laad.example.com
AD 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
cloudysanfrancisco
tiene 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-09-30 (UTC).
[[["Es fácil de entender","easyToUnderstand","thumb-up"],["Me ofreció una solución al problema","solvedMyProblem","thumb-up"],["Otro","otherUp","thumb-up"]],[["Me falta la información que necesito","missingTheInformationINeed","thumb-down"],["Es demasiado complicado o hay demasiados pasos","tooComplicatedTooManySteps","thumb-down"],["Está obsoleto","outOfDate","thumb-down"],["Problema de traducción","translationIssue","thumb-down"],["Problema de muestras o código","samplesCodeIssue","thumb-down"],["Otro","otherDown","thumb-down"]],["Última actualización: 2025-09-30 (UTC)."],[],[],null,[]] -