Devo criar uma nova chave ssh privada em cada sistema?

10

Eu preciso conectar-me a vários servidores de vários dispositivos via SSH. Eu estou querendo saber se eu deveria estar criando um novo arquivo id_dsa em cada dispositivo que eu estou conectando, ou se não houver um problema copiando o mesmo arquivo id_dsa para cada dispositivo.

Por exemplo, eu tenho meu sistema desktop primário baseado no Ubuntu e um MacBook Pro com ssh. E eu tenho um Netbook baseado em Windows com o Putty instalado. E eu tenho um telefone Android com o ConnectBot. De qualquer um desses dispositivos, posso precisar do SSH em dezenas de servidores físicos e virtuais diferentes.

Cada servidor precisa da minha chave pública instalada. Além disso, minhas contas do GitHub e do Codaset exigem minha chave pública.

Para simplificar o gerenciamento de chaves, estou pensando em usar a mesma chave privada em todos esses sistemas. Essa prática é comum ou é melhor ter uma chave privada em cada sistema?

    
por Tauren 20.02.2010 / 00:51

3 respostas

3

Se você usar a mesma chave pública em cada sistema e a chave privada ficar comprometida, qualquer sistema que use essa chave, exceto outras restrições, estará acessível.

Eu confio que você está usando chaves privadas protegidas por senha?

Em nossa prática de gestão, temos "papéis" de baixa, média e alta segurança. Cada função usa uma chave diferente. Chaves privadas de alta segurança nunca devem ser transmitidas para ativos externos, usadas em laptops que podem ser perdidos / roubados, etc. Teclas de segurança de nível médio e baixo podem ser implantadas em uma variedade maior de cenários.

Sugiro examinar seus padrões de uso e ver o que faz desde em termos de funções de segurança. Qual é o dano causado ao obter sua chave privada?

Você já pensou em colocar sua chave privada SSH em um dispositivo de hardware do qual ela não possa ser roubada, removendo o possível comprometimento da chave em um problema que não é?

Ambos os módulos de segurança de hardware e cartões inteligentes podem ser usados para armazenar chaves privadas SSH de maneira segura, permitindo que todas as operações criptográficas sejam executadas no dispositivo, em vez de em seus sistemas operacionais. No entanto, eles não são uma panaceia, pois também exigem dispositivos de hardware de backup, no caso de uma falha de hardware.

    
por 20.02.2010 / 01:27
2

Absolutamente você deveria. Você sempre pode adicionar todas as chaves ao seu arquivo authorized_keys2. Eu gosto da sugestão de jeffatrackaid. No entanto, eu usaria chaves privadas diferentes para cada dispositivo - por que não? Perca seu Android. Simples, remova a chave da lista de chaves autorizadas. Se você não fizer isso, terá que regenerar esse nível de chave novamente.

Dito isso, depende de como você percebe o risco desses ativos. Obviamente, você não quer perder as chaves, mas algumas que você pode expor a um risco maior, por exemplo, o github contra a raiz do seu vps.

    
por 20.02.2010 / 01:52
2

Você se lembra quando o Debian teve aquele pequeno problema de entropia ao gerar chaves SSH? Foi então que aprendi bem a minha lição.

Eu tenho minhas próprias chaves privadas para minhas próprias coisas, como entrar em meus servidores pessoais. Eu tenho a minha chave "All Purpose" que me coloca na maioria das minhas caixas de desenvolvimento, depois corte as chaves por cliente que eu sirvo.

Eu também mantenho uma lista muito detalhada de quais teclas são em quais máquinas, caso eu precise substituí-las ou removê-las rapidamente.

Para tudo o mais que é sério, eu uso apenas o LDAP / PAM, no caso de ter que remover alguém else com pressa.

    
por 20.02.2010 / 04:04

Tags