Como adicionar arquivo PEM como chave privada SSH para “hosts conhecidos”

Como adicionar arquivo PEM como chave privada SSH para “hosts conhecidos”

Eu tenho o desktop Ubuntu e recebi um arquivo PEM ( mykey.pem) que é a chave privada SSH para um servidor Linux. Estou tentando descobrir onde esse arquivo PEM precisa ser colocado localmente em minha máquina e como ele pode ser configurado/adicionado aos meus "hosts conhecidos SSH".

Pesquisar esse assunto no Google revela muitas respostas/artigos paracriandoChaves SSH, mas não para adicionar uma chave existente a hosts conhecidos. Ideias?

Responder1

Não conheço os diferentes tipos de chaves SSH. Mas você colocaria a chave pública no computador de destino, não a sua chave privada. Sua chave privada permanece privada.

E a chave pública do computador de origem deve ser colocada no computador de destino. ~/.ssh/authorized_keys Isso pode ser feito manualmente ou através do ssh-keygencomando.

Eu sugiro que você faça cat na chave pública no computador de origem e cat em teclas_autorizadas no computador de destino e certifique-se de que a fonte pareça ter o mesmo formato daquelas em chaves_autorizadas

O arquivoknown_hosts é algo que é anexado automaticamente. Você não precisa editá-lo manualmente. Você pode se conectar mesmo depois de excluir o arquivoknown_hosts.

EDITAR-

Para incorporar alguns dos comentários na resposta. A chave pública vem da chave privada. Normalmente a chave privada permanece privada, mas o OP estava recebendo uma chave privada, isso é incomum, mas é uma maneira interessante de fazer isso, porque significa que o computador de destino já pode ter sua chave pública. Assim, ele poderia fazer login sem precisar adicionar nada às chaves_autorizadas do computador de destino. ssh -i sempre usa uma chave privada. Ele só precisa fazer ssh -i path/to/privatekeyfile user@dest O OP está usando "openstack", algum serviço de nuvem, e como diz o site openstack docs.openstack.org/user-guide/content/ssh-into-instance.html Portanto, qualquer que seja o nome do arquivo de chave privada é, e onde quer que esteja armazenado, você especifica isso ao fazer$ ssh -i MyKey.pem [email protected]ssh -i

Responder2

De acordo com o sshmanual:

-i arquivo_identidade

Seleciona um arquivo do qual é lida a identidade (chave privada) para autenticação de chave pública. O padrão é ~/.ssh/identity para a versão 1 do protocolo e ~/.ssh/id_dsa, ~/.ssh/id_ecdsa, ~/.ssh/id_ed25519 e ~/.ssh/id_rsa para a versão 2 do protocolo.

Por exemplo .$ ssh -i mykey.pem [email protected]

Você também pode adicionar sua chave ao agente de autenticação para evitar que você tenha que passar o arquivo de identidade toda vez que quiser se conectar ao servidor remoto:

ssh-add — adiciona identidades de chave privada ao agente de autenticação OpenSSH

Por exemplo, depois que $ ssh-add mykey.pemvocê pode simplesmente fazer .$ ssh [email protected]

informação relacionada