Gerar chave RSA2 no formato OpenSSH [duplicado]

1

Eu tenho que gerar uma chave, o RSA v2 no formato OpenSSH. Eu estou um pouco confuso. Eu estou tentando gerá-lo usando Putty Key Generator. Lá eu vejo uma opção SSH2-RSA, SSH1-RSA. Então SSH2-RSA é a chave RSA2 ou significa outra coisa?

Essa chave também está no formato OpenSSH? Vejo que há uma guia de conversão com duas opções: exportar OpenSSh Key e exportar a chave ssh.com. Portanto, não tenho certeza se as chaves que geramos estão no formato OpenSSH.

    
por Ankur Bhatia 21.10.2015 / 17:20

1 resposta

1

There I see an option SSH2-RSA, SSH1-RSA. So is SSH2-RSA the RSA2 key or it means something else?

O OpenSSH usa dois formatos (e arquivos) diferentes para as chaves RSA: um para o antigo e fraco protocolo SSHv1 que você não deve usar (e geralmente não é permitido); e um para o atual protocolo SSHv2. ssh-keygen no OpenSSH os chama -t rsa1 e -t rsa (que as pessoas chamam de rsa2 para maior clareza), e puttygen os chama SSH1-RSA e SSH2-RSA.

Então, sim, o SSH2-RSA indica uma chave formatada para RSA2.

Also is this key in the OpenSSH format? I see that there is a conversion tab with 2 options: export OpenSSh Key and export ssh.com key.

Parece haver 4 opções (depois de escolher SSH2-RSA):

  1. Salvar chave pública: isso exporta a chave pública no formato de chave pública SSH2, um padrão ( RFC4716 ), mas não amplamente utilizado;
  2. Salvar chave privada: isso exporta a chave privada no formato proprietário / criptografado do Putty;
  3. Exportar chave OpenSSH: isso realmente exporta uma chave privada criptografada Open SSL (formato PKCS # 1 / PEM), que o Open SSH normalmente usa para chave RSA2 (e OpenSSH da mesma forma, usa formatos OpenSSL para chave privada DSA e ECDSA na v2, mas em versões recentes tem seu próprio formato para a chave privada Ed25519, um novo algoritmo que o OpenSSL ainda não conhece);
  4. Exportar chave ssh.com: exporta a chave no formato usado pela implementação SSH comercial de ssh.com, veja a Wikipedia , que pode ser importado para o OpenSSH usando ssh-keygen -i .

Além disso, a chave pública é exibida no formato OpenSSH authorized_keys (e known_hosts ) sempre que uma chave é gerada ou carregada, sem ação explícita. Este formato também varia entre RSA1 (SSHv1) e RSA2 e outras chaves SSHv2, mas de forma menos dramática. Para v2, isso usa o nome do algoritmo e base64 da codificação do fio, semelhante ao formato rfc4716, mas sem quebras de linha ou cabeçalho / trailer do PEM.

Observe que o formato da chave pública geralmente é mais importante, pois é necessário copiar a chave pública para o servidor (que pode não executar o mesmo software que o cliente) enquanto o formato da chave privada pode permanecer localmente. No entanto, os usuários do SSH geralmente copiam a chave privada para outras máquinas.

Salvar chave pública

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

Salvar chave privada

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

Exportar chave OpenSSH

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

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

Exportar chave do ssh.com

---- BEGIN SSH2 ENCRYPTED PRIVATE KEY ----
Comment: "rsa-key-20151022"
... base 64 ...
---- END SSH2 ENCRYPTED PRIVATE KEY ----
    
por 22.10.2015 / 13:34