Linux ppk to pub

Converting .ppk Keys to OpenSSH Keys on Linux: A Step-by-Step Guide

To convert the PPK keys to SSH keypairs, generate a private key and a public key. Then, move these keys to the desired location and ensure that the permissions are set to private for the private key. If you have already attempted a ‘git clone’ operation, you may need to perform additional steps. Alternatively, you can import the flag from a source other than the openssh format and use it to read from an input file. This solution was found in a blog post on burnz.wordpress.com. Another solution is to obtain the private key by opening the .ppk file in puttygen and exporting it as openssh. To get the public key, open the private key with puttygen and locate the public key for pasting into the OpenSSH authorized_keys file. Thanks to a comment from Spas Spasov (@pa4080), the OpenSSH public key format was successfully implemented.

How to convert .ppk key to OpenSSH key under Linux?

  • The following are some popular operating systems categorized based on their package management systems: — Ubuntu (Debian-like) — RPM based — Gentoo — Archlinux — and others.
  • To set up on OS X, start by installing Homebrew. After that, execute the following command: brew install putty

Store your keys in a directory such as your home folder, then transform the PPK keys into SSH keypairs through a cache search.

To create the key that is not intended for public use:

cd ~ puttygen id_dsa.ppk -O private-openssh -o id_dsa 
puttygen id_dsa.ppk -O public-openssh -o id_dsa.pub 

Transfer the aforementioned keys to ~/.ssh and ensure that the private key’s permissions are set to private.

mkdir -p ~/.ssh mv -i ~/id_dsa* ~/.ssh chmod 600 ~/.ssh/id_dsa chmod 666 ~/.ssh/id_dsa.pub 

In case you have previously attempted the ‘git clone’ task, it may be necessary to perform an additional action.

ssh-keygen -i -f id_dsa_1024_a.pub > id_dsa_1024_a_openssh.pub 
  • The flag needs to be in a format other than openssh for proper import.
  • The -f flag indicates that the program should retrieve data from an input file.
Читайте также:  Автоматизация резервного копирования linux

An article on burnz.wordpress.com.

Acquire the key that is private:

open the .ppk file in puttygen:

Conversions → Export OpenSSH key

Obtain the key accessible to everyone.

Access the private key using puttygen, then locate the public key for pasting into the authorized_keys file for OpenSSH.

How to ssh connect through Python Paramiko with ppk, See «Convert PuTTY Private Key (ppk) to OpenSSH (pem)» import sys import chilkat key = chilkat.CkSshKey () # Load an unencrypted or encrypted …

How to convert .ppk key to OpenSSH key under Linux? (4

How to convert .ppk key to Ope nSSH key under Linux?Helpful? Please support me on Patreon: https://www.patreon.com/roelvandepaarWith thanks & praise to God,

I was able to get it working, all thanks to the feedback provided by Spas Spasov (@pa4080).

matthewh@xen:~/.ssh$ puttygen The program 'puttygen' is currently not installed. You can install it by typing: sudo apt install putty-tools matthewh@xen:~/.ssh$ sudo apt install putty-tools . 

To convert the ppk, I had to resort to reading the man page for puttygen.

The instruction given for carrying out the transformation was:

puttygen keyfilename.ppk -O private-openssh -o keyfilename.pem 

After obtaining the key, I could utilize it for ssh/sftp and sshfs purposes.

Linux — How to convert an existing private key into ppk, You cannot do this with OpenSSH’s ssh-keygen; it can neither import nor export PuTTY’s key format. (Your -e and -i options don’t work because they …

How to convert open-ssl created private key to openssh private key?

It seems to me that the RSA key formats bear a striking resemblance to each other.

bash-4.1$ openssl genrsa 4096 > whoble . bash-4.1$ ssh-keygen -t rsa -N '' -f bobble . bash-4.1$ head -c 123 whoble ; echo -----BEGIN RSA PRIVATE KEY----- MIIJJwIBAAKCAgEAw22KzezlaVt6/lAkuTeLNVyrPIK8rjMchGPmUBp6Gx1Bkcjk zjoWNNH1d0gxVd0Yw2RmpJVVnH bash-4.1$ head -c 123 bobble ; echo -----BEGIN RSA PRIVATE KEY----- MIIEoQIBAAKCAQEA1tUSesz83DwMiQj6aWDMRd/5DISMBnp9jXZVzWwmD61FqlO/ ZhbmdBFMvNUIZNcHVQjqL/Gso0 bash-4.1$ 

OpenSSH SSH-2 private key (old PEM format) on Azure, Convert this file into the right format to use with Putty: In Puttygen, in the ‘Conversions’ menu choose ‘Import’ and load id_rsa.ppk ‘Save private key’ to a …

How to convert SSH public key from PEM to DER format?

The format of OpenSSH public key is not the same as PEM format and requires conversion by running ssh-keygen .

ssh-keygen -f ~/.ssh/id_rsa.pub -e -m PEM >pubkey.pem 

Utilize openssl rsa to transform it into DER format.

openssl rsa -RSAPublicKey_in -in pubkey.pem -inform PEM -outform DER -out ~/.ssh/id_rsa.pub.der -RSAPublicKey_out 

It’s important to mention that in order to maintain it as RSA Public Key (PKCS#1), you must specify -RSAPublicKey_in (and not -pubin ) and -RSAPublicKey_out .

Ssh — Convert Amazon .pem key to Putty .ppk key Linux, Open PuTTYgen, select Type of key to generate as: SSH-2 RSA Click «Load» on the right side about 3/4 down Set the file type to *.* Browse to, and Open your .pem …

Читайте также:  Welcome to My Website!

Источник

Как конвертировать ключи SSH из формата PuTTY в формат OpenSSH

PuTTY — это популярная программа для подключения к удалённым компьютерам по протоколам Telnet, SSH, Rlogin, Serial и Raw. Особенно широко эта программа распространена на Windows, так как раньше ей не было альтернатив на этой ОС.

В пакет PuTTY входит программа PuTTYgen, которая позволяет генерировать пару публичный и приватный ключ SSH. Для чего нужны эти ключи и как ими пользоваться смотрите в разделе «Вход в SSH без пароля (с использованием файлов ключей)».

Файлы, сгенерированные в PuTTYgen, имеют расширение .ppk и примерно следующую структуру:

Как извлечь ключи SSH из .ppk

Может понадобится извлечь приватный ключ, или публичный ключ или сразу оба ключа из файла .ppk. Это можно сделать в командной строке с помощью улиты PuTTYgen или в графическом интерфейсе. Данная инструкция покажет как это сделать. Описанные способы применимы для Windows и Linux.

Начать нужно с установки PuTTY, если вы ещё этого не сделали

Как установить PuTTY в Linux

В Debian, Linux Mint, Kali Linux, Ubuntu и их производные выполните команду:

В дистрибутивах на основе RPM:

В Arch Llinux, BlackArch и их производных:

Установите Homebrew, затем выполните:

Как конвертировать ключи PuTTY (.ppk) в формат OpenSSH

Поместите свои ключи в какой-нибудь каталог, например ваша домашняя папка. Теперь преобразуйте ключи PPK в пары ключей SSH.

Чтобы сгенерировать закрытый (приватный) ключ:

cd ~ puttygen id_dsa.ppk -O private-openssh -o id_rsa

и чтобы сгенерировать открытый (публичный ключ):

puttygen id_dsa.ppk -O public-openssh -o id_rsa.pub

Переместите эти ключи в ~/.ssh и убедитесь, что правильно установлены разрешения на приватный ключ:

mkdir -p ~/.ssh mv -i ~/id_dsa* ~/.ssh chmod 600 ~/.ssh/id_rsa chmod 666 ~/.ssh/id_rsa.pub

Извлечение приватного ключа с помощью PuTTYgen в графическом пользовательском интерфейсе

Откройте PuTTYgen, нажмите кнопку «Load» и выберите файл .ppk с ключами.

Вы сразу увидите публичный ключ SSH, который вы можете скопировать и вставить в файл.

Теперь в меню перейдите в «Conversions» → «Export OpenSSH key» и сохраните приватный ключ.

Скопируйте ваш приватный ключ в файл ~/.ssh/id_dsa (или id_rsa).

Вы могли скопировать публичный ключ, как это показано на скриншоте выше — он размещён в области, отмеченной цифрой 2. Но вы также можете конвертировать его используя утилиту ssh-keygen.

Опция -y прочитает файл OpenSSH формата с приватным ключом и напечатает в стандартный вывод публичный ключ OpenSSH.

Также с помощью опции -f нужно указать путь до приватного ключа, из которого будет извлечён соответствующий ему публичный ключ:

ssh-keygen -y -f ПРИВАТНЫЙ-КЛЮЧ

Например, приватный ключ помещён в файл id_rsa, тогда команда извлечения из него публичного ключа следующая:

Читайте также:  Linux для ноутбука asus

Вы можете столкнуться с ошибкой:

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: UNPROTECTED PRIVATE KEY FILE! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ Permissions 0644 for 'id_rsa' are too open. It is required that your private key files are NOT accessible by others. This private key will be ignored. Load key "id_rsa": bad permissions

Она означает, что приватный ключ доступен для чтения кому угодно и программа ssh-keygen отказывается работать с ним по этой причине. Чтобы исправить эту ошибку, просто установите на файл с приватным ключом права доступа 600:

Источник

🗝 Не выкидывай свои ppk-ключи при переходе на Mac и Linux

Спустя полгода после переезда под MacOS мне понадобилось залогиниться на один Ubuntu-сервер, доступ к которому у меня был по ключу, сгенерированному в puttygen под Windows.

Достучатся до админа сервера не получилось, а переконфигурировать сервер надо было быстро. После пары минут в поисковике я нашел способ конвертировать ключи ppk, созданные putty под Windows, в ключи формата OpenSSH, которые понимают ssh-клиенты под Mac и Linux.

Устанавливаем putty на Mac (или Linux)

Под MacOS самый удобный способ установить putty (и все сопутствующие ему приложения вроде puttygen) через Homebrew:

Теперь нам доступна утилита puttygen .

Под Linux все это тоже работает, там просто пишете:
sudo apt install … ну, вы знаете.

Конвертируем ключи

Мой приватный ключ называется stena.ppk , поэтому я пишу в консоли:

$ puttygen stena.ppk -O private-openssh -o ~/.ssh/stena
  • возьми мой приватный ключ в формате ppk ,
  • конвертируй его в приватный ключ в формате OpenSSH
  • и положи в папку .ssh в домашнем каталоге текущего пользователя под именем stena .

Не уходя далеко, из того же самого приватного ключа делаем публичный (на всякий случай):

$ puttygen stena.ppk -O public-openssh -o ~/.ssh/stena.pub

Аналогично, просим утилиту:

  • возьми мой приватный ключ в формате ppk ,
  • конвертируй его в публичный ключ в формате OpenSSH
  • и положи в папку .shh под именем stena.pub .

Обновляем права доступа к файлам ключей

На только что созданные ключи терминальный ssh начал ругаться, что их права доступа «слишком открыты (too open)». Пришлось изменить права к файлам вот такими командами:

$ cd ~/.ssh $ chmod 0600 stena stena.pub

Что означает — я перехожу в директорию с ключами и устанавливаю возможность читать и писать в эти файлы только владельцу, то есть мне.

Подключаемся по ssh к удаленному серверу с новым ключом

Для подключения к серверу пишем в терминале:

ssh -i ~/.ssh/stena pavlov@10.152.2.60

Соответственно, показываю ssh-клиенту, где лежит новый приватный ключ, ну, и имя пользователя с адресом сервера.

Публичный ключ, кстати, на удаленном сервере обновлять не нужно. Их форматы отличаются не настолько, чтобы из-за этого возникла несовместимость.

Замечательно, что есть версия putty для Mac и Linux. С помощью этой утилиты можно сэкономить кучу времени, особенно, если ваши публичные ключи разложены по большому количеству серверов. Меньше головной боли для админов. Здоровья им.

Источник

Оцените статью
Adblock
detector