Não é possível conectar o SSH ao Amazon EC2

3

Esta é minha primeira instância do Amazon EC2, mas estou com dificuldades e o Google não pode me ajudar. Estes são os passos que tomei:

  1. Gerar um par de chaves chamado aws
  2. Faça o download do aws.pem e coloque na minha pasta / Users / Jim / Documents / sshkeys
  3. CHmod arquivo e pasta para 700
  4. Crie uma instância da AMI oficial do Amazon Debian 6
  5. Verifique se as configurações de segurança incluem SSH na porta 22 (TCIP 22 (SSH) 0.0.0.0/0)
  6. Execute este comando:

ssh -v -i /Users/James/Documents/sshkeys/aws.pem root@myec2ip

Esta é a mensagem que recebo:

  • OpenSSH_5.9p1, OpenSSL 0.9.8r 8 Feb 2011
  • debug1: Reading configuration data /etc/ssh_config
  • debug1: /etc/ssh_config line 20: Applying options for *
  • debug1: Connecting to myec2ip port 22.
  • debug1: Connection established.
  • debug1:identity file /Users/James/Documents/sshkeys/aws.pem type -1
  • debug1: identity file /Users/James/Documents/sshkeys/aws.pem-cert type -1
  • debug1:Remote protocol version 2.0, remote software version OpenSSH_5.5p1 Debian-6+squeeze3
  • debug1: match: OpenSSH_5.5p1 Debian-6+squeeze3 pat OpenSSH* debug1: Enabling compatibility mode for protocol 2.0
  • debug1:Local version string SSH-2.0-OpenSSH_5.9
  • debug1: SSH2_MSG_KEXINIT sent
  • debug1: SSH2_MSG_KEXINIT received
  • debug1: kex: server->client aes128-ctr hmac-md5 none
  • debug1: kex: client->server aes128-ctr hmac-md5 none
  • debug1: SSH2_MSG_KEX_DH_GEX_REQUEST(1024<1024<8192) sent
  • debug1: expecting SSH2_MSG_KEX_DH_GEX_GROUP
  • debug1: SSH2_MSG_KEX_DH_GEX_INIT sent
  • debug1: expecting SSH2_MSG_KEX_DH_GEX_REPLY
  • debug1: Server host key: RSA ef:06:a0:a3:26:9f:c5:e7:c0:a6:0d:9a:1a:24:27:ef
  • debug1: Host 'myec2ip' is known and matches the RSA host key.
  • debug1: Found key in /Users/James/.ssh/known_hosts:6
  • debug1:ssh_rsa_verify: signature correct
  • debug1: SSH2_MSG_NEWKEYS sent
  • debug1: expecting SSH2_MSG_NEWKEYS
  • debug1: SSH2_MSG_NEWKEYS received
  • debug1: Roaming not allowed by server
  • debug1: SSH2_MSG_SERVICE_REQUEST sent
  • debug1: SSH2_MSG_SERVICE_ACCEPT received
  • debug1: Authentications that can continue: publickey
  • debug1: Next authentication method:publickey
  • debug1: Trying private key: /Users/James/Documents/sshkeys/aws.pem
  • debug1: read PEM private key done: type RSA
  • debug1: Authentications that can continue: publickey debug1: No more authentication methods to try. Permission denied (publickey).

Eu tentei algumas coisas diferentes, alguém pode me ajudar a descobrir onde estou errado, por favor?

    
por James Willson 16.03.2013 / 21:12

3 respostas

8

O mais provável é que você tenha isso em /etc/ssh/sshd_config :

PermitRootLogin no

Isso é bom, no entanto. Se você deseja realizar ações privilegiadas, você deve fazê-las com sudo ou pelo menos iniciar um shell de root com sudo -s .

Provavelmente haverá um motivo para o login com falha em /var/log/auth.log no servidor. Não parece que você colocou a chave pública em /root/.ssh/authorized_keys em seu servidor, que é onde ele precisa estar para que o root faça o login.

Enterrado na cópia fina aqui é o titulo que o usuário padrão é admin , não root no Debian AMI. É aí que a Amazon colocará a chave pública que corresponde à chave privada que você baixou. Use isto:

ssh -i /Users/James/Documents/sshkeys/aws.pem admin@myec2ip

O usuário padrão é ec2-user na Amazon AMI e ubuntu na AMI do Ubuntu. Eu não sei sobre nenhum outro.

    
por 16.03.2013 / 21:17
0

Tente usar "ec2-user" em vez de root.

[email protected]

E o arquivo pem é uma chave pública e privada. Então, tente salvá-lo como uma chave pública usando puttygen.

    
por 31.03.2015 / 22:37
0
  1. Faça o download do arquivo .pem em qualquer lugar
  2. chmod 400 file.pem
  3. ssh -i file.pem ec2-user@ip (Amazon AWS distrib) ou admin@ip em um sistema LInux.
por 09.06.2015 / 08:46