id_rsa.pub
é a chave pública e não precisa ser protegida. Na verdade, precisa ser publicado para funcionar. Eu suponho que você está realmente falando sobre id_rsa
(a chave privada) nesta questão.
Você certamente não precisa gerar uma nova chave SSH toda vez que estiver em um novo computador ou reinstalar o sistema operacional. Você pode copiar esse arquivo de um computador para outro. Ou, se estiver temporariamente em um computador diferente em que não deseja armazenar sua chave, você poderá fazer login remotamente no computador em que a chave está armazenada com ssh -A
e carregar a chave em seu agente local com ssh-add
. (Você deve fazer isso apenas se confiar na raiz do computador que está usando temporariamente).
Você também 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 ao computador rapidamente onde a chave é armazenada terá acesso a ela.
Se não for conveniente copiar o arquivo manualmente de um computador para outro, você poderá armazenar sua chave SSH na nuvem (github ou outro). Pessoalmente, eu preferiria não fazer isso.
Suponho que você queira usar um repositório privado do github para essa finalidade. Embora uma chave SSH com uma frase secreta deva ser inútil para qualquer pessoa sem a frase secreta, você ainda deve manter a chave criptografada para si mesmo, no caso de alguém obter sua frase secreta.
EDITAR : Mais sobre o compartilhamento de id_rsa
Mesmo que id_rsa
seja inutilizável para qualquer pessoa que não possua a senha que a acompanha, você ainda não deve compartilhá-la.
A chave SSH pode ser considerada como uma forma de autenticação de dois fatores. O arquivo id_rsa
é Algo que você tem . A frase secreta é algo que você conhece. Apenas juntos eles são úteis. Eu digo "mais ou menos como" porque você não carrega o arquivo id_rsa
com você como faria com o componente Something You Have de um sistema de autenticação real de dois fatores.
Não compartilhar o arquivo id_rsa
fornece 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 que um invasor não possa fazer nada se não conseguir uma cópia de id_rsa
.