Posso fazer SSH na minha instância do servidor do Amazon EC2 se eu não tiver o arquivo .pem de quando a instância foi criada?

10

Estou trabalhando com alguns servidores do Amazon EC2 que estão em funcionamento e preciso de SSH nos servidores. Eu não tenho nenhuma chave que foi gerada quando os servidores foram configurados pela primeira vez (alguém fez isso muito antes de eu chegar aqui). Ainda posso entrar nos servidores sem os arquivos de chave?

FWIW Eu tentei muitas coisas para o SSH na caixa até agora, incluindo a geração de novos pares de chaves no painel do EC2, e nada parece estar funcionando. Esta postagem de suporte do Amazon AWS e esta resposta parece indicar que estou sem sorte, a menos que eu queira fazer uma AMI do meu servidor atual e usá-la para instanciar uma nova instância do servidor EC2 (apenas para obter a arquivo .pem gerado naquele momento). Essa é realmente a única maneira de entrar na caixa neste momento?!

    
por Eric 11.02.2013 / 03:40

1 resposta

24

Resumindo: Sim, você pode, mas não sem algum trabalho.

Você precisará fazer o seguinte:

(Para estas etapas, assuma que a máquina com a qual você está tendo problemas para se conectar é chamada de server-01.)

Primeiro, antes de iniciar essas etapas, tire um instantâneo do seu servidor.

  1. Inicie uma nova instância temporária. Chame de servidor-02.
  2. Pare o servidor-01. Não termine, apenas pare.
  3. Anexe o volume EBS raiz ( / ) do servidor-01 e anexe-o ao servidor-02 como, digamos, /dev/sdb .
  4. Entre no servidor-02 e execute: $ mkdir /mnt/temp && mount /dev/sdb /mnt/temp . Isso montará a partição raiz do servidor-01 no servidor (temporário) -02.
  5. Agora você deve conseguir: $ vi /home/<user>/.ssh/authorized_keys e copiar / colar sua chave pública. Quando você fizer isso, salve e feche o arquivo.
  6. Agora execute: $ cd / && umount /mnt/temp para desmontar a partição raiz do servidor-01 do servidor-02.
  7. Agora, apenas desconecte esse volume do servidor-02, conecte-o novamente ao server-01 e inicie o server-01. Quando for iniciado, você poderá voltar a ssh.
por 11.02.2013 / 04:03