J'ai configuré mon serveur Linux pour accepter les connexions de mon ordinateur personnel en ajoutant la clé publique générée par PuTTYgen au authorized_keys
fichier.
Maintenant, j'essaie de me connecter à la même machine, mais cette fois à partir d'une autre machine Ubuntu. Je dois utiliser la même clé privée (pour une raison étrange, ne demandez pas…) et je ne comprends pas très bien comment l'installer sur mon client Ubuntu.
Dois-je le convertir dans un autre format?
id_rsa
fichier (en convertissant la clé en PuTTYgen)Par coïncidence, je devais faire cela. Vous devez convertir les clés au format OpenSSH. La commande pour le faire est la suivante:
vous pouvez alors copier le contenu de
openssh_key
dans.ssh/authorized_keys
comme avec une clé SSH normale.L'
-i
option est celle qui ditssh-keygen
de faire la conversion. L'-f
option lui indique où trouver la clé à convertir.Cela fonctionne pour les clés non chiffrées . La clé publique n'est pas cryptée, mais la clé privée est probablement cryptée. Je ne sais pas s'il existe un moyen de déchiffrer la clé privée, de la convertir, puis de la déchiffrer. Il serait peut-être plus facile d’utiliser de nouvelles clés, comme l’indique l’autre réponse (et je vous conseillerais d’utiliser
ssh-agent
cette option, mais elle est orthogonale au numéro actuel).la source
uudecode failed
), doivent suit Comment convertir SSH générés paires de clés en utilisant PuttyGen (Windows) dans utilisés par paires de clés ssh-agent et KeyChain (Linux)puttygen_key
devrait être votre clé publique, pas votre clé privée (* .ppk).Andrew Stacey a expliqué comment convertir les clés au format OpenSSH sous Linux.
Si vous voulez faire la même chose sous Windows, procédez comme suit:
la source
Comment réutiliser vos paires de clés Putty dans Ubuntu en tant que clés OpenSSH:
Le but de l’étape 4 étant d’ajouter votre clé publique à * ~. / Ssh / registered_keys *, afin que vous puissiez utiliser votre clé secrète Putty comme ceci au lieu d’en faire 4 comme étape intermédiaire:
la source
mykey-pub.ppk
est assez déroutant, car le.ppk
fichier a un format complètement différent et est utilisé pour les paires de clés (pas seulement la clé publique).puttygen: unknown output type `private‐openssh'
etputtygen: cannot handle more than one input file
j'ai donc copié les caractères exacts du code source et renommé ma clé publique en quelque chose de complètement différentPuTTY / PuTTYgen utilise son propre format propriétaire de paire de clés. Cela ne fonctionnera pas sous Linux, où le format OpenSSH des clés prévaut.
Dans PuTTYgen, vous pouvez directement voir (et copier + coller) une clé publique au format utilisé par le
authorized_keys
fichier OpenSSH .Vous pouvez utiliser le bouton Enregistrer la clé publique pour enregistrer la clé publique au
.pub
format (RFC 4716). Sous Linux, le fichier est généralement nomméid_rsa.pub
(ouid_dsa.pub
). Mais ce n'est généralement pas nécessaire.Utilisez la clé Conversions> Export OpenSSH pour exporter la clé privée au format OpenSSH. Sous Linux, le fichier est généralement nommé
id_rsa
(ouid_dsa
) et est stocké dans un.ssh
dossier.Voir le document officiel Using PuTTYgen, le générateur de clé PuTTY .
Vous pouvez également utiliser une version Linux de PuTTYgen pour effectuer la conversion. La version Linux est en ligne de commande, contrairement à la version Windows.
Voir la
puttygen
page de manuel Linux .la source
J'ai trouvé une solution plus claire.
Sur
puttygen
créer une clé, puis accédez au menu principal - Conversion et cliquez sur exporter la clé opensshLe contenu du fichier va commencer et se terminer par
pour l'utilisateur racine Copiez ce fichier de clé
/root/.ssh/
dansid_rsa
ouid_dsa
pour un autre utilisateur Copiez ce fichier de clé
/home/user/.ssh/
dansid_rsa
ouid_dsa
Remarque :
authorized_keys
.la source
* * Soyez prudent et assurez-vous que vous avez un accès console à la boîte, car si vous ne le faites pas correctement, vous ne pourrez plus entrer SSH tant que vous ne aurez pas résolu le problème depuis la console.
Le processus est beaucoup plus facile que vous ne le pensez. Chargez à nouveau la paire de clés publique / privée que vous avez générée dans puttygen. Dans puttygen, vous remarquerez une fenêtre au milieu de l’écran indiquant: "Clé publique pour coller dans le fichier Open SSH allowed_keys:".
mettez tout le contenu de la boîte en surbrillance et appuyez sur control-c pour le copier.
SSH dans votre boîte Linux et collez-le dans le fichier "/home/username/.ssh/authorized_keys". Je préfère utiliser nano et cliquer avec le bouton droit de la souris pour le coller. Assurez-vous que tout reste sur une seule ligne.
Modifiez votre fichier / etc / sshd_config selon vos besoins et redémarrez votre service sshd: "service ssh restart"
Si vous avez besoin d'un exemple de fichier sshd_config, faites-le moi savoir et je pourrai poster le mien.
Je l'ai fait sur un serveur Ubuntu 8.04, 10.04 et 12.04 LTS et cela fonctionne bien.
la source
Je ne sais pas si ce fil est toujours actif, mais je suis tombé sur un problème similaire avec l'édition anniversaire de Windows 10, qui prend désormais en charge le noyau Ubuntu. J'avais l'habitude d'utiliser Putty avant pour me connecter à une machine Linux. Pour générer id_rsa au format linux, utilisez puttykeygen et chargez votre clé privée putty, puis cliquez sur conversion et choisissez la deuxième option.
Putty KeyGenerator conevrsions
ouvrez le fichier de clé nouvellement généré et copiez tout son contenu, assurez-vous que votre contenu commence par: ----- BEGIN RSA PRIVATE KEY ----- et se termine par ----- END RSA PRIVATE KEY -----
vi id_rsa dans votre répertoire ~ / .ssh et collez le contenu copié, cela est nécessaire car linux sinon ne comprendra pas le contenu du fichier.
C’est tout, essayez ssh sur le serveur distant, cela devrait fonctionner.
la source