root bloqueado do EC2

5

Eu estava no processo de desabilitar logins raiz em uma instância do AWS EC2. Logo depois de configurar o PermitRootLogin no e reiniciar o sshd, fechei o terminal por acidente - antes de configurar usuários com privilégios sudo. O resultado é que minha chave para entrar na instância como root não funciona (o sshd proíbe) e quando eu logar na instância usando meu usuário regular eu não posso ganhar privilégios de root (a senha de root nunca foi definida). A instância está executando o Ubuntu 8.10. Alguém tem alguma ideia de como posso corrigir isso?

    
por Jeff Atwood 21.05.2009 / 07:25

4 respostas

8

Não, não termine a instância, nem tudo está perdido !!

  1. inicialize outra instância e encerre a instância incorreta.
  2. separe o volume do EBS da instância incorreta e anexe-o ao novo instância.
  3. Monte-o na nova instância (por exemplo, algo como o sudo mount / dev / xvdf1 / mnt /)
  4. chroot dentro dele (sudo chroot / mnt) e digite passwd.
  5. redefina a senha ou faça outras alterações desejadas (vi / etc / ssh / sshd_config, por exemplo!)
  6. Pressione control-D ou digite exit para sair do chroot.
  7. umount / mnt
  8. separe o volume do EBS da sua instância temporária
  9. reconecte ou tire um snap e crie uma nova AMI com base nesse instantâneo
  10. Inicialize a caixa fixa de volta!

P.S. da próxima vez tente Userify para gerenciar as chaves de seus usuários :)

    
por 09.11.2014 / 19:25
3

Sem encontrar uma vulnerabilidade, a única maneira de obter acesso root em uma máquina Linux é inicializar no modo de usuário único e redefinir a senha. No entanto, você não tem acesso em nível de KVM em uma instância do EC2, portanto, isso não é possível.

Você precisará encerrar essa instância do EC2 e iniciar outra. Mas desabilitar os logins raiz é contra o paradigma geral no EC2. A Amazon sugere que você forneça uma chave pública no momento da inicialização e tenha um script init instalado em /root/.ssh/authorized_keys, com o sshd configurado como 'PermitRootLogin sem senha' para forçar somente logins de pares de chaves. Dessa forma, você nunca poderá se desconectar acidentalmente da sua conta root (desde que não perca sua chave privada).

No futuro, sugiro que você crie um usuário com acesso sudo e inicie uma sessão de 'tela' assim que fizer o login, para que a desconexão não pare / interrompa seu trabalho. Depois de configurar e instalar seu aplicativo, agrupe, envie e empacote sua AMI para que você possa iniciar novas instâncias quando necessário.

    
por 26.05.2009 / 07:47
1

Você tem uma AMI salva com as alterações feitas em sua instância antes de desabilitar os logins raiz? Caso contrário, você terá que voltar para a AMI base com a qual começou e criar uma nova instância do EC2.

    
por 21.05.2009 / 21:13
-1

Uma maneira de fazer isso é encontrar vulnerabilidades locais em seu sistema que podem conceder a você um shell de root. Obter lista de software que estão instalados na caixa e google / securityfocus cada um deles.

    
por 23.05.2009 / 20:17