Je sais qu'il est possible de convertir .ppk sous puttygen dans Windows, mais comment faire cela sous Linux? Est-ce possible ?
188
Faites-le avec du mastic.
Linux: avec votre gestionnaire de paquets, installez PuTTY (ou le plus petit des outils PuTTY):
sudo apt-get install putty-tools
apt-get install putty-tools
yum install putty
emerge putty
sudo pacman -S putty
OS X: Installez Homebrew , puis lancezbrew install putty
Placez vos clés dans un répertoire, par exemple votre dossier personnel. Convertissez maintenant les clés PPK en paires de clés SSH: recherche dans le cache
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 sur privé 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 ' git clone ', vous devrez peut-être le faire aussi
chmod 666 ~/.ssh/known_hosts
./ssh/config
dossierHost mysite.com Hostname mysite.com IdentityFile ~/.ssh/id_dsa IdentitiesOnly yes
-i
le drapeau est importé d'un format autre que le format openssh-f
drapeau signifie lire à partir du fichier d'entréeSource: un blogpost à burnz.wordpress.com
la source
Obtenez la clé privée:
ouvrez le fichier .ppk dans puttygen:
exporter en opensh:
Conversions → Exporter la clé OpenSSH
Obtenez la clé publique:
ouverte comme auparavant avec la clé privée avec puttygen, la clé publique est sous clé publique pour le coller dans le fichier OpenSSH allowed_keys
la source
J'ai préparé un conteneur Docker pour simplifier la vie:
Où:
/path/to/file.ppk
- chemin local vers votre fichier ppk/path/to/output
- chemin local vers l'endroit où les clés privée et publique doivent être placéesla source
--volume=/path/to/file.ppk:/tmp/id.ppk
, c'estid_dsa.ppk