Ter o arquivo 'id_rsa.pub' em meu repositório público dotfiles com segurança

Ter o arquivo 'id_rsa.pub' em meu repositório público dotfiles com segurança

Então, isso é algo que estou me perguntando: como posso ter esse arquivo em meu repositório GitHub dotfiles?

Estou cansado de ter que gerar uma nova chave SSH toda vez que estou em um novo computador ou reinstalar meu sistema operacional, etc.

Então, qual é a melhor maneira de fazer isso? Imagino que atribuir uma senha ao arquivo na geração da chave seja suficiente? Isso deve criptografá-lo ou torná-lo inutilizável sem ele. Isso é bom o suficiente?

Caso contrário, existe uma maneira de criptografar o arquivo para que eu possa enviá-lo com segurança para a Internet sem preocupações, mas possa usá-lo a qualquer momento com a senha correta?

Responder1

id_rsa.pubé a chave pública e não precisa ser protegida de forma alguma. Na verdadeprecisaser publicado para funcionar. Presumo que você esteja realmente falando id_rsa(da chave privada) nesta questão.

Você certamente não precisa gerar uma nova chave SSH sempre que estiver em um novo computador ou reinstalar seu sistema operacional. Você pode copiar esse arquivo de um computador para outro. Ou, se você estiver temporariamente em um computador diferente onde não deseja armazenar sua chave, poderá fazer login remotamente no computador onde a chave está armazenada ssh -Ae carregá-la em seu agente local com ssh-add. (Você só deve fazer isso se confiar no root do computador que está usando temporariamente.)

Você também já deve ter uma senha em sua chave SSH (se não tiver, adicione uma agora, ou melhor ainda, considere a chave comprometida e substitua-a!), caso contrário, qualquer pessoa que tenha acesso, mesmo que brevemente, ao computador onde a chave está armazenado terá acesso a ele.

Se copiar o arquivo manualmente de um computador para outro não for conveniente para você, você pode armazenar sua chave SSH na nuvem (github ou outro). Pessoalmente, preferiria não fazê-lo.

Presumo que você pretenda usar um repositório github privado para essa finalidade. Embora uma chave SSH com uma senha deva ser inútil para qualquer pessoa sem a senha, você ainda deve manter a chave criptografada para si mesmo, caso alguém obtenha sua senha.

EDITAR: Mais sobre compartilhamentoid_rsa

Mesmo que id_rsaseja inutilizável para qualquer pessoa que não possua a senha que o acompanha, você ainda não deve compartilhá-la.

A chave SSH pode ser considerada uma espécie de autenticação de dois fatores. O id_rsaarquivo éAlgo que você tem. A senha é algo que você conhece. Somente juntos eles são úteis. Digo "mais ou menos como" porque na verdade você não carrega o id_rsaarquivo com você como faria com o componente Something You Have de um sistema real de autenticação de dois fatores.

Não compartilhar o id_rsaarquivo oferece alguma proteção caso sua senha seja revelada a outra pessoa. Se isso acontecer, você definitivamente deve revogar a chave, mas pelo menos há uma chance de um invasor não poder fazer nada se não conseguir uma cópia do arquivo id_rsa.

informação relacionada