Recentemente, comprei um laptop no qual preciso acessar os mesmos hosts remotos da minha área de trabalho. Ocorreu-me que talvez seja possível simplesmente copiar o arquivo de chave privada da área de trabalho para o meu laptop e evitar a necessidade de adicionar uma nova chave aos ~/.ssh/authorized_keys
arquivos em todos os hosts que desejo acessar. Então, minhas perguntas são:
- Isso é possível?
- Existem implicações de segurança não óbvias?
- Às vezes, faço login na minha área de trabalho usando meu laptop. Se houvesse a mesma chave, isso causaria algum problema?
Respostas:
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 péssima idéia se você tiver uma frase-senha muito forte, com pelo menos 20 caracteres.
Não há problemas em conectar-se com a mesma chave da sua área de trabalho. Eu configuraria um agente ssh para sua chave no laptop e encaminharia o agente para a área de trabalho, para que você use essa chave em outros sistemas que você acessar a partir daí.
Na página do manual ssh-agent em um sistema Linux:
Você executaria isso no seu laptop, no programa ssh-agent no Linux / Unix (que vem com o OpenSSH) ou no puTTY agent, se você estiver usando o Windows. Você não precisa do agente em execução em nenhum sistema remoto, ele apenas 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 agente é um recurso do cliente ssh (
ssh
ou massa) que simplesmente persiste o agente em outros sistemas através da conexão ssh.fonte
Eu costumava usar uma única chave privada em todas as minhas máquinas (e algumas delas eu sou apenas um usuário, não um administrador), mas recentemente mudei isso. Funciona com a chave única, mas significa que se você precisar revogar a chave (se ela estiver comprometida), será necessário alterá-la em todas as máquinas.
Obviamente, se um invasor obtém acesso e é capaz de transferir ssh para outra máquina, ele pode obter a chave dessa máquina e assim por diante. Mas me sinto 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 allowed_keys.
fonte