Comment convertir une clé .ppk en clé OpenSSH sous Linux ?
Je sais qu'il est possible de convertir un .ppk sous puttygen sous Windows, mais comment faire sous Linux ? Est-ce possible ?
Faites-le avec Putty.
Linux: avec votre gestionnaire de paquets, installez PuTTY (ou les outils PuTTY plus minimaux) :
OS X: Installez Homebrew , puis lancez brew install putty
Placez vos clés dans un répertoire, par exemple votre dossier personnel. Maintenant, convertissez les clés PPK en paires de clés SSH : cache search
Pour générer la clé privée :
cd ~
puttygen id_dsa.ppk -O private-openssh -o id_dsa
et pour générer la clé publique :
puttygen id_dsa.ppk -O public-openssh -o id_dsa.pub
Déplacez ces clés vers ~/.ssh
et assurez-vous que les autorisations sont définies comme privées pour votre clé privée :
mkdir -p ~/.ssh
mv -i ~/id_dsa* ~/.ssh
chmod 600 ~/.ssh/id_dsa
chmod 666 ~/.ssh/id_dsa.pub
Si vous avez déjà essayé d'effectuer une opération de ‘ clonage de bit’, vous devrez peut-être le faire aussi
chmod 666 ~/.ssh/known_hosts
Get the private key:
open the .ppk file in puttygen :
puttygen ~/.ssh/id_dsa.ppk
export as openssh :
Conversions → Export OpenSSH key
Get the public key:
open like before the private key with puttygen, the public key is under_public key for pasting into OpenSSH authorized_keys file
J'ai préparé un conteneur Docker pour vous simplifier la vie :
docker run --rm \
--volume=/path/to/file.ppk:/tmp/id_dsa.ppk \
--volume=/path/to/output:/tmp/out/ \
czerasz/putty-tools
Où :
/path/to/file.ppk
- chemin local vers votre fichier ppk /path/to/output
- chemin local vers l'endroit où la clé privée et publique doit être placée