1

Я должен сгенерировать ключ, RSA v2 в формате OpenSSH. Я немного смущен. Я пытаюсь сгенерировать его с помощью Putty Key Generator. Там я вижу вариант SSH2-RSA, SSH1-RSA. Так является ли SSH2-RSA ключом RSA2 или это что-то еще?

Также этот ключ в формате OpenSSH? Я вижу, что есть вкладка конвертации с 2 вариантами: экспортировать ключ OpenSSh и экспортировать ключ ssh.com. Поэтому я не уверен, что сгенерированные мной ключи имеют формат OpenSSH.

1 ответ1

2

Там я вижу вариант SSH2-RSA, SSH1-RSA. Так является ли SSH2-RSA ключом RSA2 или это что-то еще?

OpenSSH использует два разных формата (и файлы) для ключей RSA: один для старого, слабого протокола SSHv1, который вы не должны использовать (и часто не допускаете); и один для текущего протокола SSHv2. ssh-keygen в OpenSSH называет их -t rsa1 и -t rsa (для ясности люди называют rsa2), а puttygen называет их SSH1-RSA и SSH2-RSA.

Так что да, SSH2-RSA указывает форматированный ключ RSA2.

Также этот ключ в формате OpenSSH? Я вижу, что есть вкладка конвертации с 2 вариантами: экспортировать ключ OpenSSh и экспортировать ключ ssh.com.

Кажется, есть 4 варианта (после выбора SSH2-RSA):

  1. Сохранить открытый ключ: экспортирует открытый ключ в формате открытого ключа SSH2, стандарт (RFC4716), но широко не используется;
  2. Сохранить закрытый ключ: экспортирует закрытый ключ в проприетарном / зашифрованном формате Putty;
  3. Экспортировать ключ OpenSSH: фактически экспортируется закрытый ключ Open SSL (формат PKCS # 1 / PEM), который Open SSH обычно использует для ключа RSA2 (и OpenSSH аналогично использует форматы OpenSSL для закрытого ключа DSA и ECDSA в версии v2, но в последних версиях имеет собственный формат для закрытого ключа Ed25519, новый алгоритм OpenSSL пока не знает);
  4. Export ssh.com key: экспортирует ключ в формате, используемом коммерческой реализацией SSH из ssh.com, см. Википедию, которую можно импортировать в OpenSSH с помощью ssh-keygen -i .

Кроме того, открытый ключ отображается в формате OpenSSH authorized_keysknown_hosts) всякий раз, когда ключ генерируется или загружается, без явных действий. Этот формат также варьируется между RSA1 (SSHv1) и RSA2 и другими ключами SSHv2, но менее резко. Для версии 2 используется имя алгоритма и base64 кодировки проводов, аналогично формату rfc4716, но без разрывов строк или заголовка / трейлера PEM.

Обратите внимание, что формат открытого ключа, как правило, более важен, поскольку требуется скопировать открытый ключ на сервер (на котором может не работать то же программное обеспечение, что и на клиенте), тогда как формат закрытого ключа может остаться локально. Однако пользователи SSH часто копируют закрытый ключ и на другие машины.

Сохранить открытый ключ

---- BEGIN SSH2 PUBLIC KEY ----
Comment: "rsa-key-20151022"
    ... base 64 ...
---- END SSH2 PUBLIC KEY ----

Сохранить закрытый ключ

PuTTY-User-Key-File-2: ssh-rsa
Encryption: aes256-cbc
Comment: rsa-key-20151022
Public-Lines: 6
... base 64 ...
Private-Lines: 14
... base 64 ...
Private-MAC: 243d3afda7ac218891e39fc0df7ed7cf97d8f358

Экспортировать ключ OpenSSH

-----BEGIN RSA PRIVATE KEY-----
Proc-Type: 4,ENCRYPTED
DEK-Info: DES-EDE3-CBC,85137363803E9EA9

... base 64 ...
-----END RSA PRIVATE KEY-----

Экспорт ключа ssh.com

---- BEGIN SSH2 ENCRYPTED PRIVATE KEY ----
Comment: "rsa-key-20151022"
... base 64 ...
---- END SSH2 ENCRYPTED PRIVATE KEY ----

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