Clés SSH
Pour accéder à vos serveurs Equinix Metal™ et les gérer en toute sécurité, ajoutez des clés SSH à votre compte ou à votre projet. SSH est la méthode par défaut pour accéder à un serveur Equinix Metal. Les clés SSH sont ajoutées à chaque serveur que vous provisionnez. Equinix Metal utilise également des clés SSH comme authentification pour notre console SOS/OOB.
Générer des clés SSH
Pour utiliser des clés SSH avec Equinix Metal™, vous devez d'abord générer une paire de clés publique et privée sur votre machine locale, puis ajouter votre clé publique à votre compte ou projet Equinix Metal.
Pour générer une paire de clés SSH sur votre machine locale, procédez comme suit :
-
Entrez la commande
ssh-keygendans l'invite de commande pour générer une paire de clés SSH. La commandessh-keygenest prise en charge sur Linux, Mac et les versions modernes de Windows.ssh-keygen -t ed25519Si le système d'exploitation de votre machine locale ou de votre serveur Metal ne prend pas en charge les clés Ed25519, utilisez des clés RSA avec une taille de clé minimale recommandée de 2048 bits.
ssh-keygen -t rsa -b 2048 -
Suivez les invites pour générer les clés SSH. Appuyez sur la touche Entrée pour enregistrer les clés et accepter l'emplacement et les noms de clés par défaut. Remarque : s'il s'agit de votre première clé SSH, il est recommandé d'accepter l'emplacement et les noms de clé par défaut.
-
Utilisation d'une phrase de passe : il n'est pas obligatoire d'entrer une phrase de passe, mais cela fournit une couche de sécurité supplémentaire. Si vous décidez d'utiliser une phrase de passe, vous devrez la saisir chaque fois que vous utiliserez SSH pour accéder à votre serveur. Si vous ne souhaitez pas utiliser de phrase de passe, appuyez sur la touche Entrée pour laisser le champ vide.
-
Une fois la génération des clés terminée, les clés SSH publiques et privées sont enregistrées dans le chemin suivant, si vous avez accepté l'emplacement par défaut :
/home/<name>/.ssh/<key-name>.pubon Linux/Users/<name>/.ssh/<key-name>.pubon MacC:\Users\<name>/.ssh/<key_name>.pubon Windows
Vous allez télécharger cette clé dans la console Metal d'Equinix. Pour plus d'informations sur l'ajout de la clé à la console Metal, reportez-vous à Ajouter votre clé SSH à votre compte. L'autre fichier de clé dans le même répertoire, <key_name>, est la clé privée. Ne partagez pas votre clé privée avec qui que ce soit.
Remarque : si vous utilisez une ancienne version de Windows qui ne comprend pas de serveur et de client SSH intégrés, vous devrez télécharger et configurer une application tierce telle que PuTTY pour [générer des clés et entrer en SSH sur vos serveurs.
Ajouter votre clé SSH à votre compte
- Console
- CLI
- API
Une fois vos clés SSH créées sur votre machine locale, vous êtes maintenant prêt à ajouter votre clé publique à votre compte Metal d'Equinix.
Pour ajouter votre clé publique à votre compte Equinix Metal, procédez comme suit :
-
Dans la console, dans le coin supérieur droit, cliquez sur votre profil d'utilisateur > Mon profil.
-
Cliquez sur l'onglet clés SSH pour ouvrir vos clés SSH personnelles pour votre profil d'utilisateur.
-
Cliquez sur + Add New Key pour ajouter une nouvelle clé SSH à votre compte.

-
Sur votre machine locale, ouvrez le fichier
<key_name.pub>et copiez-en le contenu. -
Collez le contenu dans le champ Public Key.
-
Entrez un nom pour votre clé dans le champ Name your Key.
-
Pour associer la clé à d'autres serveurs, utilisez la zone de texte Rechercher un périphérique pour trouver un périphérique ou sélectionnez le(s) périphérique(s) dans la liste. Cette option n'est également disponible que via la console Equinix Metal.
Remarque : si vous avez sélectionné un dispositif auquel une clé est déjà associée, un message contextuel s'affiche pour vous informer qu'une clé existe déjà avec ce serveur. Désélectionnez la case à cocher de l'appareil.
-
Cliquez sur la case à cocher Select All pour associer tous les serveurs de la liste à la clé.
-
Cliquez sur Add SSH Key. Une fois la clé SSH ajoutée, elle apparaîtra dans la liste des clés SSH de l'onglet clés SSH.
-
Cliquez sur Edit pour renommer votre clé ou la mettre à jour.
Vous pouvez ajouter une clé SSH à votre utilisateur à l'aide de la commande metal ssh-key create. Saisissez la chaîne complète de la clé publique SSH dans l'indicateur --key et un nom ou une autre description conviviale dans l'indicateur --label.
metal ssh-key create --key <ssh_public_key> --label <string>
Si vous devez mettre à jour une clé SSH, vous pouvez le faire avec la commande metal ssh-key update. Vous pouvez mettre à jour soit la clé --label, soit la clé --key, soit les deux.
metal ssh-key update -i <SSH-key_UUID> --key <ssh_public_key> --label <string>
Vous pouvez ajouter une clé publique à votre compte en envoyant une requête POST au point de terminaison /ssh-keys de l'API Metal d'Equinix.
curl -X POST \
-H "Content-Type: application/json" \
-H "X-Auth-Token: <API_TOKEN>" \
"https://api.equinix.com/metal/v1/ssh-keys" \
-d '{
"label": "<string>",
"key": "<ssh_public_key>"
}'
Si vous devez mettre à jour une clé SSH, envoyez une requête PUT au point de terminaison /ssh-keys/{id}. Vous pouvez mettre à jour soit la clé "label", soit la clé "key", soit les deux.
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>"
}'
Provisionnement de serveurs avec des clés SSH
Par défaut, lorsque vous provisionnez un serveur, toutes les clés SSH de votre compte utilisateur, les clés SSH des membres de l'équipe et les clés SSH du projet sont ajoutées au serveur. Les clés SSH fournissent un accès autorisé au serveur.
- Console
- API
Pour remplacer la valeur par défaut lors de l'approvisionnement d'un serveur, vous devez spécifier les clés SSH auxquelles le serveur doit avoir accès.
Pour spécifier les clés SSH, procédez comme suit :
-
Dans la console, allez dans Métaux nus > Déploiement > À la demande.
-
Cliquez sur Optional Settings > SSH Keys.
-
Passez en revue les clés Projet, Personnel et Collaborateur et faites votre sélection.
-
Cliquez sur Select all keys pour permettre à toutes les clés SSH d'accéder au serveur.

Remarque : si toutes les clés (Project, Personal et Collaborator) ne sont pas cochées, toutes les clés seront ajoutées au serveur par défaut. Vous ne pouvez pas provisionner dans la console sans clés SSH. Pour provisionner sans clés SSH, utilisez l'API.
Pour personnaliser les clés SSH incluses sur un serveur lors du provisionnement avec l'API, incluez les paramètres "user_ssh_keys" ou "project_ssh_keys" dans votre requête POST au point de terminaison projects/{id}/devices. Ces paramètres remplaceront le comportement par défaut qui consiste à ajouter toutes les clés SSH au serveur, et ajouteront uniquement les clés SSH spécifiées.
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>",
"user_ssh_keys": [
<uuid>
],
"project_ssh_keys": [
<uuid>
]
}'
Paramètres corporels remarquables :
"user_ssh_keys"- An array containing a list of UUIDs of your user account's SSH keys and team members SSH keys used to authorize access to this server. These keys will also appear in the device metadata. The users must be members of the project or organization."project_ssh_keys"- An array containing a list of UUIDs of the Project's SSH keys used to authorize access to this server. These keys will also appear in the device metadata.
Vous pouvez également ajouter des clés SSH publiques qui ne sont pas téléchargées et gérées par Equinix Metal à un serveur en utilisant le paramètre de corps "ssh_keys" dans votre demande POST au point de terminaison projects/{id}/devices. Ces clés sont ajoutées au serveur avec toutes les clés définies par "project_ssh_keys" et "user_ssh_keys", ou en plus du comportement par défaut qui consiste à ajouter toutes les clés 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>"
}
]
}'
Paramètre corporel 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.
Par défaut, si aucune clé SSH n'est spécifiée ("user_ssh_keys", "project_ssh_keys" et "ssh_keys" sont des listes vides ou omises), toutes les clés SSH disponibles des utilisateurs, des projets et des membres de l'équipe seront incluses.
Provisionnement sans clés SSH
Pour provisionner un serveur sans clés SSH, vous devez inclure explicitement le paramètre "no_ssh_keys" dans votre requête POST au point de terminaison 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
}'
Paramètre corporel 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. Set the"no_ssh_keys"totruein the body of the request.
Clés SSH après le provisionnement
Pour afficher les clés disponibles sur un serveur, procédez comme suit :
- Console
- CLI
- API
-
Dans la console, allez dans Serveurs Metal > Gestion.
-
Sélectionnez le serveur que vous souhaitez visualiser.
-
Cliquez sur l'onglet SSH keys pour afficher les clés SSH.

Les clés SSH qui ont été ajoutées à un serveur au moment de l'approvisionnement peuvent être récupérées à partir de la CLI avec la commande metal device get avec l'indicateur --output pour spécifier la sortie JSON. La liste peut être trouvée dans l'objet ssh-keys dans la réponse.
metal device get -i <device_id> -o json
Vous pouvez également obtenir les clés SSH d'un serveur à partir de l'API en envoyant une requête GET au point de terminaison /devices/{id}/ssh-keys.
curl -X GET -H 'X-Auth-Token: <API_TOKEN>' \
"https://api.equinix.com/metal/v1/devices/{id}/ssh-keys"
Ajoutez des clés SSH à votre compte à tout moment en suivant les instructions dans Adding Your SSH Key to Your Account, cependant les clés ajoutées à votre compte ou à vos projets via la console ou l'API sont NOT automatiquement ajoutées aux serveurs. Equinix Metal ne conserve aucun agent ou processus sur les serveurs provisionnés pour effectuer cette action. Pour accorder l'accès, vous devez ajouter des clés SSH au serveur lui-même.
Si vous ajoutez une clé que vous souhaitez utiliser avec des serveurs provisionnés, cochez l'option permettant d'associer la nouvelle clé à des serveurs spécifiques ou à tous les serveurs lorsque vous l'ajoutez à la console. Cela n'autorise pas l'accès SSH directement au serveur, mais cela permet d'utiliser la nouvelle clé SSH lors de la connexion et de l'utilisation de la console SOS/OOB. Vous pouvez ensuite utiliser la console SOS/OOB pour ajouter votre nouvelle clé SSH aux clés autorisées sur le serveur.

Cette option n'est également disponible que via la console Metal d'Equinix.
Se connecter avec SSH
Pour accéder à votre serveur par SSH, exécutez la commande suivante :
ssh root@<your_public_ipv4>
Remarque : l'authentification par mot de passe SSH est désactivée par défaut sur les serveurs Equinix Metal.
Suppression des clés SSH
- Console
- CLI
- API
Vous pouvez supprimer les clés SSH de votre compte dans la console Equinix Metal à partir de votre profil d'utilisateur, dans l'onglet SSH Keys. Cliquez sur Delete à côté de la clé que vous souhaitez supprimer. La clé SSH ne sera pas ajoutée aux futurs serveurs que vous provisionnerez.

Vous pouvez supprimer une clé SSH de votre compte utilisateur à l'aide de la commande metal ssh-key delete.
metal ssh-key delete --id <SSH-key_UUID>
La clé SSH ne sera pas ajoutée aux futurs serveurs que vous provisionnerez.
Dans l'API, les clés SSH peuvent être supprimées de votre compte en envoyant un DELETE au point de terminaison /ssh-keys/{id}.
curl -X DELETE \
-H 'X-Auth-Token: <API_TOKEN>' \
"https://api.equinix.com/metal/v1/ssh-keys/{id}"
La clé ne sera plus ajoutée aux serveurs au moment de la mise à disposition.
Remarque : les clés supprimées de votre compte ou de vos projets via la console ou l'API sont NON automatiquement supprimées des serveurs. Equinix Metal ne conserve aucun agent ou processus sur les serveurs provisionnés pour effectuer cette action. Pour révoquer l'accès, vous devez supprimer manuellement les clés SSH du serveur.