web-dev-qa-db-fra.com

Format de clé publique SSH

J'ai une clé publique dans le format:

---- BEGIN SSH2 PUBLIC KEY ----

Comment: "somename-20060227"
AAAAB3NzaC1yc2EAAAABJQAAAIBmhLUTJiP[and so on]==

---- END SSH2 PUBLIC KEY ----

Habituellement, je vois des clés dans le format comme ceci:

ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIEAqof[and so on]

Puis-je simplement copier la première clé dans le fichier Authorize_Keys ou dois-je modifier en quelque sorte cela ressemble donc au second? Je pense que le premier a été généré par PutTygen tandis que le second était généré par SSH-Keygen.

11
Hans

utilisation ssh-keygen -i Pour convertir le format compatible SSH2 au format compatible OpenSSH.

de man ssh-keygen:

-Je cette option lira un fichier de clé privé (ou public) non crypté au format compatible SSH2 et imprimer une clé compatible compatible OpenSSH (ou publique) à STDOUT. SSH-Keygen lit également le format de fichier de clé publique RFC 4716 SSH SSH. Cette option permet d'importer des clés de plusieurs implémentations de SSH commerciales.

16
alexus

Vous devez convertir la clé publique de l'OpenSSSSH Convention:

ssh-rsa AAAAB3NzaC1yc2EAAAABJQAAAIBmhLUTJiP[and so on]== somename-20060227

Assurez-vous également que la clé occupe exactement une ligne et aucune rupture de ligne n'a été introduite lors de la copie.

4
Dmitri Chubarov

C'est la réponse complète et correcte:

ssh-keygen -i -m PKCS8 -f public-key.pem

4
Boeboe

Il suffit de réécrire votre clé au format adapté à authorized_keys:

keytype Keybody KeyName Keyname

Gardez à l'esprit que "== ==" sont des espaces réservés nécessaires pour maintenir la longueur de la keylique égale à la longueur souhaitée.

2
Kondybas