Une clé privée SSH générée par ssh-keygen
contient une partie de clé publique. Comment puis-je récupérer cette clé publique à partir de la clé privée ? J'ai perdu ma clé publique et j'ai besoin de mettre le contenu de cette clé publique dans les serveurs authorized_keys
fichier et ne souhaitez pas créer de nouvelle paire de clés.
Autrement dit :comment créer le id_rsa.pub
fichier à partir d'un id_rsa
fichier ?
Meilleure réponse
J'ai trouvé la réponse sur Server Fault :Créer une clé SSH publique à partir de la clé privée ?
L'option -y
affiche la clé publique :
ssh-keygen -y -f ~/.ssh/id_rsa > ~/.ssh/id_rsa.pub
En remarque, le commentaire de la clé publique est perdu. J'ai eu un site qui nécessitait le commentaire (Launchpad ?), Vous devez donc modifier ~/.ssh/id_rsa.pub
et ajoutez un commentaire à la première ligne avec un espace entre le commentaire et les données clés. Un exemple de clé publique est présenté tronqué ci-dessous.
ssh-rsa AAAA..../VqDjtS5 [email protected]
Pour les clés qui ont été ajoutées à l'agent SSH (un programme qui s'exécute en arrière-plan et évite d'avoir à ressaisir la phrase secrète du fichier clé encore et encore), vous pouvez utiliser le ssh-add -L
commande pour lister les clés publiques pour les clés qui ont été ajoutées à l'agent (via ssh-add -l
). Ceci est utile lorsque la clé SSH est stockée sur une carte à puce (et que l'accès au fichier de clé privée n'est pas possible).