"Server Refused our key" after launching instance from private EBS AMI
criei o meu próprio EBS AMI, partilhei-o com outra conta AWS, lancei uma nova instância baseada nesta imagem com um novo par de chaves e agora, quando estou a tentar ligar-me a esta nova instância, estou a ter um erro: "o servidor recusou a nossa chave".
Isto foi o que eu fiz (passo a passo):- novo servidor CentOS 6.3 configurado na minha conta pessoal (com o meu par de chaves pessoal)
- criou a imagem EBS AMI daquele servidor Partilhei esta imagem com a do meu cliente. Conta
- lançou uma nova instância na conta dos meus clientes com base nesta imagem partilhada + novo par de chaves
- a nova instância lançada não quer ter um novo par de chaves. Depois de alguns testes eu acho que ele aceita o meu par de chaves pessoal em vez disso.
Como faço uma nova instância da minha imagem para aceitar novos pares de chaves? Até tentei remover".ficheiro ssh/authorized_keys" na imagem original, lançar uma nova instância baseada nesta imagem sem chave pública e ainda sem sucesso.
Por favor. aconselhar como criar imagens que não seriam anexadas aos pares de chaves antigos7 answers
- na consola AWS certifique-se de que a sua instância está saudável e a correr
- Verifique se utilizou o endereço de DNS público correcto, indicado quando carrega numa instância
- Seleccione os grupos de segurança do lado esquerdo e carregue no grupo de segurança que deseja utilizar
- carregue na página de entrada
- Criar uma nova regra: janela seleccionar o SSH
- na fonte coloque o seu endereço IP e o valor CIDR. Se é apenas você não tem um NAT na sua rede apenas use 32 como o seu CIDR (eg. ?.?.?.?/32)
- Carregue Em Adicionar Uma Regra
- Carregue Em Aplicar As Alterações De Regras
- carregue com o botão direito na sua instância e seleccione Criar uma imagem (EBS AMI)
- dê - lhe um nome de imagem no Assistente de criação de imagens e carregue em Criar
- Depois de um curto período de tempo, seleccione AMI da barra de navegação da mão esquerda na consola AWS
- botão direito na nova instância de lançamento ami e carregue em
- nas instâncias de pedido, carregue no Assistente para continuar até que tenha de criar um par de Chaves Escolha um par de chaves e tome nota. (Nota: Se você ainda não tem o seu.ficheiro pem para este par de Chaves terá de gerar um novo ao seleccionar pares de chaves na barra de navegação do lado esquerdo, criar par de chaves, etc. obter .pem file)
- Seleccione o grupo de segurança com a regra que criou para o seu endereço IP (e CIDR de 32-Sem sub-rede máscara)
- Carregue em Continuar e no próximo ecrã carregue em lançar
- Volte para a janela de instâncias e espere até que a sua instância esteja completamente inicializada e saudável
- Abrir PuttyGEN
- carregue nas conversões da barra de ferramentas e na chave de importação Navega até ao teu .chave pem no navegador de ficheiros e abra-a
- Seleccione o SSH-1 (RSA) na caixa de Parâmetros
- Coloque o seu par de chaves na caixa de comentários Chave (apenas para manter a casa)
- Carregue em Gravar a chave privada e salva o ...ficheiro ppk algures no seu sistema de ficheiros
- Abre A Massa
- indique o DNS público para a sua instância EC2 na caixa do nome da máquina
- entrar no porto 22
- assinalar o botão de rádio SSH na caixa do tipo de ligação
- Carregue em SSH a partir da árvore de ligação na barra de navegação do lado esquerdo
- Carregue em Auth
- Carregue em procurar no campo de Parâmetros de autenticação e abra o seu .ficheiro ppk
- carregue na Sessão da barra de navegação do lado esquerdo
- Indique um nome para isto ligação no campo de texto das sessões gravadas, e carregue em Gravar (isto é para que não tenha de passar pela ligação putty configurada de cada vez, e possa fazer duplo - click na sua ligação gravada-para os que não têm conhecimento)
- Clique Em Abrir
- Quando lhe for pedido um nome de utilizador, provavelmente irá usar o 'ec2-user' ou o 'ubuntu' (DICA: use o 'root' e provavelmente irá receber uma mensagem a dizer-lhe qual o nome de utilizador que deverá usar em alternativa!)
- não é necessário uma senha, o .o ficheiro ppk irá autenticar tu Com sorte, estás ligado à EC-2 e pronto para ir!
Isto significa que não está a usar o nome de Utilizador correcto para aceder à sua instância ec2. aqui está uma lista de usuários que você pode usar em putty para se conectar à instância ec2 Para uma Amazon Linux AMI, o nome de usuário é ec2-user . Para um RHEL5 AMI, o nome de Utilizador é root ou ec2-user. Para um Ubuntu AMI, o nome de Utilizador é ubuntu . Para um Fedora AMI, o nome de Utilizador é fedora ou ec2-user . Para o SUSE Linux, o nome de Utilizador é root ou EC2-utilizador . Caso contrário, se ec2-Usuário e root não funcionar, verifique com o provedor AMI.
Uma vez que o seu AMI é originário de um AMI comunitário e não de um AMI público oficial, é possível que não tenha sido configurado para copiar as teclas ssh no arranque da instância, ou que use um mecanismo diferente para o fazer.
O meu entendimento é que, para que as teclas ssh sejam copiadas no arranque, algum 'script' de consola deverá ser executado dentro da própria instância, como brevemente descrito aqui.
A página de descriçãodo AMI menciona que foi "activado pela nuvem", por isso talvez há uma maneira de o fazer através da CloudInit. Veja o doc aqui.
Pode ser apenas uma razão para mostrar o servidor recusou a nossa chave.
Isto é: a combinação de chaves do servidor e o nome de Utilizador não está correcta, já enfrentei muitas vezes.
Por omissão, a Amazon irá adicionar a nova chave com a existente. Podemos resolvê-lo montando a unidade em outra instância ativa, e remover o conteúdo do arquivo .SSH / authorized_keys e adicione o seu ficheiro de chaves pem da sua nova chave.
Eu tinha este problema e descobri que estava a escrever ec2_user quando era suposto ser ec2-user