2

Я загрузил свой блок закрытых ключей из keybase.io (в файл keybase.ppk). Это начинается с:

-----BEGIN PGP PRIVATE KEY BLOCK-----
Version: Keybase OpenPGP v2.0.49

Теперь я хотел бы создать пару ключей ssh, чтобы я мог поместить открытый ключ на удаленный сервер и использовать закрытый ключ для входа в него. Как мне это сделать в Linux?

Я пробовал различные методы, которые нашел в сети, и все, что я узнал, это то, что мое понимание приложений и стандартов в современной криптографии очень ограничено:-/

2 ответа2

4

После еще нескольких поисков я наконец понял, что означает этот ответ:

https://security.stackexchange.com/a/9635

Что нужно сделать заранее, чтобы этот ответ выработался:

gpg --import .ssh/keybase.ppk

После этого я сделал:

gpg --edit-key D937A057 # removing password
gpg --export D937A057 | openpgp2ssh D937A057 > keybase.pub # generating public key
gpg --export-secret-key D937A057 | openpgp2ssh D937A057 > keybase # generating private key
gpg --delete-secret-key D937A057 # cleanup

Казалось бы, есть более простой способ сделать это. Потратил твердые 2 часа, чтобы понять это ...

0

GPG может экспортировать ключи в формате OpenSSH. Согласно справочной странице:

--export-ssh-key
              This command is used to export a key in the OpenSSH public key format.  It requires the specification of  one  key  by
              the  usual  means  and exports the latest valid subkey which has an authentication capability to STDOUT or to the file
              given with option --output.  That output can directly be added to ssh's ‘authorized_key’ file.

              By specifying the key to export using a key ID or a fingerprint suffixed with an exclamation mark (!), a specific sub‐
              key  or  the  primary  key can be exported.  This does not even require that the key has the authentication capability
              flag set.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .