Wie konvertiert man .ppk-Schlüssel in OpenSSH-Schlüssel unter Linux?
Ich weiß, dass es unter Windows möglich ist, .ppk unter Puttygen zu konvertieren, aber wie macht man das unter Linux? Ist das möglich?
Machen Sie das mit Putty.
Linux: mit Ihrem Paketmanager, installieren Sie PuTTY (oder die minimaleren PuTTY-Tools):
OS X: Installieren Sie Homebrew , dann starten Sie brew install putty
Legen Sie Ihre Schlüssel in irgendeinem Verzeichnis ab, z.B. in Ihrem Home-Ordner. Konvertieren Sie nun die PPK-Schlüssel in SSH-Schlüsselpaare:Cache-Suche
Um den privaten Schlüssel zu erzeugen:
cd ~
puttygen id_dsa.ppk -O private-openssh -o id_dsa
und um den öffentlichen Schlüssel zu erzeugen:
puttygen id_dsa.ppk -O public-openssh -o id_dsa.pub
Verschieben Sie diese Schlüssel nach ~/.ssh
und stellen Sie sicher, dass die Berechtigungen für Ihren privaten Schlüssel auf privat gesetzt sind:
mkdir -p ~/.ssh
mv -i ~/id_dsa* ~/.ssh
chmod 600 ~/.ssh/id_dsa
chmod 666 ~/.ssh/id_dsa.pub
Wenn Sie bereits versucht haben, eine ‘ git clone’-Operation durchzuführen, müssen Sie dies möglicherweise auch tun
chmod 666 ~/.ssh/known_hosts
Privaten Schlüssel holen:
die .ppk-Datei in puttygen öffnen:
puttygen ~/.ssh/id_dsa.ppk
als openssh exportieren:
Konvertierungen → OpenSSH-Schlüssel exportieren
öffentlichen Schlüssel holen:
wie vor dem privaten Schlüssel mit Puttygen öffnen, der öffentliche Schlüssel ist unteröffentlichem Schlüssel zum Einfügen in OpenSSH autorisierte_Schlüsseldatei
Ich habe einen Docker-Container vorbereitet, um das Leben einfacher zu machen:
docker run --rm \
--volume=/path/to/file.ppk:/tmp/id_dsa.ppk \
--volume=/path/to/output:/tmp/out/ \
czerasz/putty-tools
Wo:
/path/to/file.ppk
- lokaler Pfad zu Ihrer ppk-Datei /path/to/output
- lokaler Pfad zu der Stelle, wo der private und öffentliche Schlüssel platziert werden soll