É uma má idéia usar a mesma chave ssh privada em vários computadores?

34

Eu comprei recentemente um laptop do qual preciso acessar os mesmos hosts remotos que faço no meu desktop. Ocorreu-me que poderia ser possível simplesmente copiar o arquivo de chave privada da minha área de trabalho para o meu laptop e evitar ter que adicionar uma nova chave aos arquivos ~/.ssh/authorized_keys em todos os hosts que eu gostaria de acessar. Então minhas perguntas são:

  1. Isso é possível?
  2. Existem implicações de segurança não óbvias?
  3. Às vezes, faço login no meu computador a partir do meu laptop. Se houvesse o uso da mesma chave, isso causaria algum problema?
por Jason Creighton 05.08.2009 / 02:32

2 respostas

28

Sim, isso é possível. Sua chave privada não está vinculada a uma única máquina.

Não tenho certeza do que você quer dizer com não-óbvio, isso geralmente é subjetivo;). Não é uma má idéia se você tiver um conjunto de senhas muito strong, com pelo menos 20 caracteres.

Não há problemas para se conectar à mesma chave que a sua área de trabalho. Gostaria de configurar um agente ssh para sua chave no laptop e encaminhar o agente para a área de trabalho, assim você estará usando essa chave em outros sistemas que você acessa de lá.

A partir da página man do ssh-agent em um sistema Linux:

ssh-agent is a program to hold private keys used for public key authentication (RSA, DSA). The idea is that ssh-agent is started in the beginning of an X-session or a login session, and all other windows or programs are started as clients to the ssh-agent program. Through use of environment variables the agent can be located and automatically used for authentication when logging in to other machines using ssh(1).

Você executaria isso em seu laptop, seja o programa ssh-agent no Linux / Unix (ele vem com o OpenSSH) ou com o agente puTTY se você estiver usando o Windows. Você não precisa do agente em execução em nenhum sistema remoto, ele simplesmente mantém sua chave privada na memória do sistema local, portanto, você só precisa digitar sua senha uma vez, para carregar a chave no agente.

O encaminhamento de agentes é um recurso do cliente ssh ( ssh ou putty) que simplesmente persiste o agente para outros sistemas por meio da conexão ssh.

    
por 05.08.2009 / 02:44
9

Eu costumava usar uma única chave privada em todas as minhas máquinas (e algumas delas eu sou um usuário somente, não um administrador), mas recentemente mudei isso. Ele funciona com a chave, mas significa que, se você precisar revogar a chave (se ela estiver comprometida), será necessário alterá-la em todas as máquinas.

É claro que, se um invasor obtiver acesso e puder fazer ssh em outra máquina, ele poderá obter a chave dessa máquina e assim por diante. Mas me faz sentir um pouco mais seguro saber que posso revogar apenas uma chave e bloquear a máquina. Isso significa que eu preciso remover a chave do arquivo authorized_keys, no entanto.

    
por 05.08.2009 / 03:42