Gerenciando uma chave SSH compartilhada?

3

Eu tenho um único computador rodando OS X, XP e Ubuntu. Embora, às vezes, ele esteja executando múltiplos desses SO na VM ou instalações reais. Eu tenho um par de servidores que eu preciso constantemente SSH em - mas às vezes eu mudo hosts ou limpe os servidores.

De qualquer forma, estou cansado de configurar novos pares de chaves SSH toda vez que uso um novo sistema operacional ou servidor. Todas as informações nesses servidores estão no meu PC - então, se alguém me encontrar aqui, fizer passar todos os cães de guarda e roubar meu PC, eles não precisarão invadir meus servidores, já que nenhum dos sistemas operacionais usando a criptografia de arquivos (nem sei como ativá-lo).

Como posso sincronizar meu par de chaves com todo o sistema operacional que uso neste computador? No windows eu uso Putty / Pageant enquanto o Snow Leopard e o Linux possuem SSH nativo. Então os formatos de arquivo não são exatamente os mesmos.

    
por Xeoncross 25.01.2011 / 01:22

4 respostas

5

Eu gero todas as minhas chaves no linux usando ssh-keygen -t dsa e funciona muito bem com Putty / Pageant e SSH no Cygwin no Windows. Você não precisa ter pares de chaves separados para cada servidor. Você acabou de copiar sua chave pública para cada servidor no qual deseja fazer login. Você diz que os formatos de arquivo não são os mesmos, mas na minha experiência eles são, mas são os nomes de arquivos e caminhos que diferem. Se você realmente tem que copiar as chaves por cima, eu criaria um script bash separado para cada sistema operacional para automatizar a propagação da chave pública.

Para manter sua chave privada segura, mesmo que alguém "roube seu computador", é necessário criptografá-la com senha. Se você não gosta de digitar uma senha constantemente, use um utilitário como keychain, para que você tenha que descriptografar sua chave privada uma vez por sessão. Funciona como o sudo ...

Tente seguir este tutorial:

link

    
por 25.01.2011 / 01:43
2

O comando "ssh-copy-id" ajudaria?

    
por 25.01.2011 / 02:24
1

O que você está essencialmente perguntando é: "como faço para sincronizar arquivos em vários sistemas operacionais?"

Small: Talvez o Dropbox com um script de shell pequeno (específico) (para instalar automaticamente as chaves ssh). As escolhas aqui são mais numeráveis do que as cores das bicicletas.

Médio: um servidor git que abriga suas chaves seria um bom caminho a ser seguido e até permitiria que você tivesse um histórico de todas as suas chaves.

Grande: O fantoche, claro, seria ainda melhor (mas somente se você estiver disposto a usá-lo e não oferecer suporte a janelas (diretamente)).

O Putty pode gerar chaves e carregá-las também.

    
por 25.01.2011 / 01:35
0

Crie um repositório VCS em algum lugar (git / svn / whatever) que você considere seguro. Verifique suas chaves e faça o checkout em todos os lugares que você precisar. Adicione um script de login para atualizar / fazer check-in automaticamente.

    
por 25.01.2011 / 01:33

Tags