Jak przekonwertować klucz .ppk do OpenSSH pod Linuksem?
Wiem, że jest możliwe, aby przekonwertować .ppk pod kitem w Windows, ale jak to zrobić na Linuksie? Czy jest to możliwe?
Zrób to z Putty.
Linux: z menedżerem pakietów, zainstaluj PuTTY (lub bardziej minimalne PuTTY-tools):
OS X: Zainstaluj Homebrew , następnie uruchom brew install putty
Umieść klucze w jakimś katalogu, np. w folderze domowym. Teraz przekonwertuj klucze PPK na SSH keypairs:cache search
Aby wygenerować private key:
cd ~
puttygen id_dsa.ppk -O private-openssh -o id_dsa
i wygenerować public key:
puttygen id_dsa.ppk -O public-openssh -o id_dsa.pub
Przenieś te klucze do ~/.ssh
i upewnij się, że uprawnienia są ustawione na prywatne dla Twojego klucza prywatnego:
mkdir -p ~/.ssh
mv -i ~/id_dsa* ~/.ssh
chmod 600 ~/.ssh/id_dsa
chmod 666 ~/.ssh/id_dsa.pub
Jeśli już próbowałeś wykonać operację ‘ klonowanie gita’ możesz to również zrobić
chmod 666 ~/.ssh/known_hosts
**
puttygen ~/.ssh/id_dsa.ppk
eksport jako openssh:
Konwersje → Eksport klucza OpenSSH
Otwórz klucz publiczny:
otwórz jak przed kluczem prywatnym z kitem, klucz publiczny jest podkluczem publicznym do wklejenia do autoryzowanego pliku klucza OpenSSH_
Przygotowałam kontener Docker, aby uprościć życie:
docker run --rm \
--volume=/path/to/file.ppk:/tmp/id_dsa.ppk \
--volume=/path/to/output:/tmp/out/ \
czerasz/putty-tools
Gdzie:
/path/to/file.ppk
- ścieżka lokalna do Twojego pliku ppk /path/to/output
- ścieżka lokalna do miejsca, w którym powinien być umieszczony klucz prywatny i publiczny