Claves SSH del proyecto
SSH es el método predeterminado para acceder a un servidor Equinix Metal™. Las claves SSH pueden asociarse a su cuenta o proyecto, y añadirse a cada servidor que aprovisione. Equinix Metal también utiliza claves SSH como autenticación para nuestra consola SOS/OOB.
Una clave SSH de proyecto es específica de un único proyecto, que se incluirá por defecto en los servidores desplegados en un proyecto concreto. Esta opción es útil si no desea utilizar una clave SSH personal en un servidor compartido.
Generación de una clave SSH de proyecto
Para utilizar claves SSH con Equinix Metal, genere primero un par de claves pública y privada en su máquina local y, a continuación, asocie la clave pública a su proyecto Equinix Metal.
Para generar un par de claves SSH, utilice el comando ssh-keygen en máquinas Linux, Mac y Windows modernas. Nota: Le recomendamos que especifique un nombre de clave SSH y una ubicación únicos para el par de claves. Esto asegurará que no sobrescriba ninguna clave SSH existente.
ssh-keygen -t ed25519 -f ~/.ssh/<proj_key_name>
Para máquinas más antiguas sin soporte Ed25519, se admiten claves RSA con un tamaño de clave mínimo recomendado de 2048 bits.
ssh-keygen -t rsa -b 2048 -f ~/.ssh/<proj_key_name>
La clave pública se llama <proj_key_name>.pub. Cargará esta clave en la consola de Equinix Metal. El otro archivo de clave en el mismo directorio, <proj_key_name>, es la clave privada. No comparta su clave privada.
Nota - si utiliza una versión anterior de Windows que no incluya un servidor y cliente SSH integrados, tendrá que descargar y configurar una aplicación de terceros como PuTTY para [generar claves y acceder mediante SSH a sus servidores.
Añadir una clave SSH a su proyecto
- Console
- API
Puede añadir una clave SSH a un proyecto en su página Configuración del proyecto, en la pestaña Claves SSH.

Una vez añadida la clave SSH, aparecerá en la lista de claves SSH del Proyecto. Si necesita cambiar el nombre o actualizar la clave, haga clic en Editar.
Para añadir una clave SSH a un proyecto a través de la API, envíe una solicitud POST al punto final /projects/{id}/ssh-keys.
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/projects/{id}/ssh-keys" \
-d '{
"label": "<string>",
"key": "<ssh_public_key>"
} '
Si necesita actualizar una clave SSH, envíe una solicitud PUT al punto final /ssh-keys/{id}. Puede actualizar la "label", la "key", o ambas.
curl -X PUT \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/ssh-keys/{id}" \
-d '{
"label": "<string>",
"key": "<ssh_public_key>"
} '
Proyecto Claves SSH - Aprovisionamiento de servidores
Cuando se aprovisiona un servidor, todas las claves SSH de su cuenta de usuario, las claves SSH de los miembros del equipo y las claves SSH del proyecto se añaden por defecto, proporcionando acceso autorizado al servidor. Es posible anular este valor predeterminado y especificar qué claves añadir cuando se aprovisiona un nuevo servidor.
- Console
- API
Al realizar el aprovisionamiento en la consola, las claves SSH de proyecto disponibles se muestran en la pestaña Claves SSH de la Configuración opcional.

Seleccione las claves que desea añadir al servidor.
Nota: Si todas las claves (Proyecto, Personal y Colaborador) están desmarcadas, todas las claves de se añadirán al servidor por defecto. No hay forma de aprovisionar en la Consola sin claves SSH. Para aprovisionar sin claves SSH, utilice la API.
Para personalizar qué claves SSH de proyecto se incluyen en un servidor cuando se aprovisiona con la API, incluya el parámetro "project_ssh_keys" en su solicitud POST al punto final projects/{id}/devices. Esto anulará el comportamiento por defecto de añadir todas las claves SSH al servidor y añadirá sólo las claves SSH especificadas.
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/projects/{id}/devices" \
-d '{
"metro": "<metro_code>",
"plan": "<server_type>",
"operating_system": "<os_code>",
"project_ssh_keys": [
<uuid>
]
}'
Parámetro corporal notable:
"project_ssh_keys"- An array containing a list of UUIDs of the Project's SSH keys used to authorize access this server. These keys will also appear in the device metadata.
También puede añadir claves públicas SSH no cargadas ni gestionadas por Equinix Metal a un servidor utilizando el parámetro de cuerpo "ssh_keys". Estas claves se añaden al servidor junto con cualquier clave definida por "project_ssh_keys", o además del comportamiento predeterminado de añadir todas las claves SSH disponibles.
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/projects/{id}/devices" \
-d '{
"metro": "<metro_code>",
"plan": "<server_type>",
"operating_system": "<os_code>",
"ssh_keys": [
{
"key": "<ssh_public_key>",
"label": "<string>"
}
]
}'
Parámetro corporal notable:
"ssh_keys"- An array of SSH key objects that will be added to the server to authorize SSH access to it. These keys will also appear in the device metadata.
Si no se especifican claves SSH ("user_ssh_keys", "project_ssh_keys" y "ssh_keys" son todas listas vacías o se omiten), se incluirán todas las claves SSH de usuario disponibles, las claves SSH de proyecto y las claves SSH de los miembros del equipo. Este es el comportamiento por defecto.
Aprovisionamiento sin claves SSH
Para aprovisionar un servidor sin claves SSH, debe incluir explícitamente el parámetro "no_ssh_keys" en su solicitud POST al punto final projects/{id}/devices.
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/projects/{id}/devices" \
-d '{
"metro": "<metro_code>",
"plan": "<server_type>",
"operating_system": "<os_code>",
"no_ssh_keys": true
}'
Parámetro corporal notable:
"no_ssh_keys"- Boolean that overrides default behavior of attaching user, team member, and Project SSH keys to a server and provisions it without any authorized SSH access.
Proyecto Claves SSH Post-Provisionamiento
Para ver qué claves hay en un servidor aprovisionado:
- Console
- CLI
- API
Puede ver qué claves SSH hay en un servidor concreto desde la consola Equinix Metal, en la página de detalles del servidor, en la pestaña SSH Keys (Claves SSH).

Las claves SSH que se han añadido a un servidor en el momento de la provisión pueden recuperarse desde la CLI con el comando metal device get con la bandera --output para especificar la salida JSON. La lista se puede encontrar en el objeto ssh-keys de la respuesta.
metal device get -i <device_id> -o json
También puede obtener las claves SSH de un servidor desde la API enviando una solicitud GET al punto final /devices/{id}/ssh-keys.
curl -X GET -H 'X-Auth-Token: <API_TOKEN>' \
"https://api.equinix.com/metal/v1/devices/{id}/ssh-keys"
Puede añadir claves SSH a su Proyecto en cualquier momento, sin embargo las claves añadidas a sus Proyectos a través de la consola o la API NO se añaden automáticamente a los servidores. Equinix Metal no mantiene ningún agente o proceso en los servidores aprovisionados para realizar esta acción. Para conceder acceso, tiene que añadir claves SSH al propio servidor.
Si añade una clave que desea utilizar con servidores aprovisionados, marque la opción para asociar la nueva clave con servidores específicos o con todos los servidores cuando la añada a la consola. Esta opción también solo está disponible a través de la consola Equinix Metal.

Esto no autoriza el acceso SSH directamente al servidor, pero permite utilizar la nueva clave SSH al iniciar sesión y utilizar la consola SOS/OOB. A continuación, puede utilizar la consola SOS/OOB para añadir su nueva clave SSH a las claves autorizadas en el servidor.
Eliminación de claves SSH del proyecto
- Console
- CLI
- API
Puede eliminar las claves SSH del proyecto desde la página Configuración del proyecto, en la pestaña Claves SSH. Haga clic en Eliminar junto a la clave que desee eliminar. La clave SSH no se añadirá a ningún servidor futuro que aprovisione en este Proyecto.

Puede eliminar una clave SSH de su cuenta de usuario con el comando metal ssh-key delete.
metal ssh-key delete --id <SSH-key_UUID>
La clave SSH no se añadirá a los futuros servidores que aprovisione.
En la API, las claves SSH pueden eliminarse de su cuenta enviando un DELETE al punto final /ssh-keys/{id}.
curl -X DELETE \
-H 'X-Auth-Token: <API_TOKEN>' \
"https://api.equinix.com/metal/v1/ssh-keys/{id}"
La clave ya no se añadirá a los servidores en el momento de la provisión.
Nota: Las claves eliminadas de su cuenta o de sus Proyectos a través de la consola o la API se NO eliminan automáticamente de los servidores. Equinix Metal no mantiene ningún agente o proceso en los servidores aprovisionados para realizar esta acción. Para revocar el acceso, tiene que eliminar manualmente las claves SSH del servidor