Gerenciando chaves SSH entre instâncias do EC2

5

Eu tenho o que parece ser uma contagem crescente de instâncias do EC2 e tudo está funcionando bem e bem. O único problema que estou enfrentando, no entanto, é descobrir uma estratégia para o SSH entre as máquinas. Copiar a minha chave privada para cada instância é contraproducente, e funciona bem quando eu preciso do SSH da minha máquina pessoal, mas não quando eu preciso do SSH de máquina para máquina.

Quais são algumas estratégias decentes para lidar com esse problema? Como você está entrando no SSH entre seu cluster de instâncias do EC2?

    
por imaginative 14.08.2011 / 20:36

2 respostas

6

Você usa ssh-agent :

ssh-agent
ssh-add
ssh -A remote-machine

Para facilitar o uso, adicione

Host remote-machine
ForwardAgent yes

para o seu ~/.ssh/config

    
por 14.08.2011 / 20:58
0

Bem, considerando que todas as instâncias do EC2 foram iniciadas usando a mesma chave SSH para o root, eu só preciso carregar uma chave no agente SSH. Dito isso, normalmente não tenho SSH como raiz ou política, então minhas instâncias do EC2 são acionadas e conectadas a um servidor Puppet que as configura incluindo a instalação de quaisquer aplicativos, além de configurar contas de usuários e suas respectivas chaves de identidade SSH e estabelecendo permissões sudo. Então eu apenas carrego minha identidade SSH privada de usuário pessoal em ssh-agent no meu laptop de sua unidade USB criptografada LUKS. A chave de identidade de SSH raiz colocada durante a inicialização da instância do EC2 está aí apenas como backup.

A outra vantagem de usar o Puppet é que posso usar o servidor de marionetes como uma caixa de salto em qualquer uma das instâncias e realmente fazer com que o Puppet atualize automaticamente os arquivos ssh_known_hosts e / etc / hosts do sistema para mim.

    
por 14.08.2011 / 23:32