um arquivo-chave ssh para várias máquinas, em vez de um par para uma única máquina?

10

No momento, estou implementando o login por par de chaves no meu servidor da seguinte forma:

gere o par de chaves no meu laptop local:

me@macbook:~ $ ssh-keygen -t rsa

transfira a chave do pub de laptop para servidor:

me@macbook:$ scp ~/.ssh/id_rsa.pub [email protected]:~/id_rsa.pub

no servidor, adicione a chave do pub ao arquivo authorized_keys

$ cat id_rsa.pub >> ~/.ssh/authorized_keys

E desativei o login de senha para ssh.

O problema é que, a chave só pode ser usada no meu laptop para o ssh no meu servidor, parece que está ligada ao meu laptop macbook. Isso significa que, se eu estiver com outro computador, não conseguiria usar essa chave privada para o ssh. Na pior das hipóteses, se eu perdesse meu laptop, ficaria trancado, não teria como entrar. (Corrija-me se estiver errado, estou confuso)

Como posso tornar a chave privada utilizável para várias máquinas? (como AWS ec2, eu posso usar o arquivo .pem @ em qualquer lugar para o ssh)

Obrigado.

Abaixo está o conteúdo do arquivo authorized_keys

    
por gilzero 14.05.2012 / 09:23

1 resposta

19

As chaves privadas estão emparelhadas com chaves públicas. Se você quiser usar a chave privada de outra máquina, basta copiá-la para essa outra máquina. Não está ligado à máquina, o @macbookpro no final é apenas uma string de comentário, você pode alterá-lo para qualquer coisa que você gosta.

i.e. você tem ~/.ssh/id_rsa , que é sua chave privada. Se você quiser usá-lo de outra máquina, copie-o para essa máquina.

  • Chave privada - copie isso para todas as máquinas que você quiser ssh de
  • Chave pública - coloque isso em todas as máquinas que você quiser para ssh para

Você deve transferir apenas chaves privadas para máquinas que você controla e confia, e você deve sempre protegê-las com uma frase-chave complexa.

    
por 14.05.2012 / 09:25

Tags