Conectar-se usando EC2 Instance Connect
As instruções a seguir explicam como se conectar à sua instância do Linux usando o EC2 Instance Connect.
Limitações
-
Distribuições Linux com suporte:
Amazon Linux 2 (qualquer versão)
Ubuntu 16.04 ou posterior
-
Compatível em todas as Regiões da AWS, exceto África (Cidade do Cabo), Ásia-Pacífico (Hong Kong), Ásia-Pacífico (Jacarta), Ásia-Pacífico (Osaka), China (Pequim), China (Ningxia), Europa (Milão), Oriente Médio (Bahrein) e Oriente Médio (EAU).
-
Para se conectar usando o console do Amazon EC2, a instância deve ter um endereço IPv4 público.
-
Se a instância não tiver um endereço IP público, será possível se conectar à instância usando um cliente SSH ou a CLI do EC2 Instance Connect. Por exemplo, é possível se conectar de dentro da mesma VPC ou por meio de uma conexão VPN, de um gateway de trânsito ou do AWS Direct Connect.
-
O EC2 Instance Connect não oferece suporte à conexão usando um endereço IPv6.
Pré-requisitos
-
Instale o EC2 Instance Connect na sua instância.
Para obter mais informações, consulte Configurar o EC2 Instance Connect.
-
(Opcional) Instale um cliente SSH no computador local.
Não haverá a necessidade de instalar um cliente SSH se os usuários usarem apenas o console do Amazon EC2 ou a CLI do EC2 Instance Connect para se conectar a uma instância. É muito provável que seu computador local tenha um cliente SSH instalado por padrão. É possível verificar se existe um cliente SSH digitando ssh na linha de comando. Se o seu computador local não reconhecer o comando, será possível instalar um cliente SSH. Para obter informações sobre como instalar um cliente SSH no Linux ou macOS X, consulte http://www.openssh.com
. Para obter informações sobre como instalar um cliente SSH no Windows 10, consulte OpenSSH no Windows . -
(Opcional) Instale a CLI do EC2 Instance Connect CLI no computador local.
Não haverá a necessidade de instalar a CLI do EC2 Instance Connect se os usuários utilizarem apenas o console do Amazon EC2 ou um cliente SSH para se conectar a uma instância. Para obter mais informações, consulte Tarefa 3: (opcional) instalar a EC2 Instance Connect CLI no seu computador. Esse método de conexão funciona para instâncias com endereços IP públicos.
Conectar-se usando EC2 Instance Connect
Opções
Conectar-se usando o console do Amazon EC2
É possível se conectar a uma instância usando o console do Amazon EC2 ao selecionar a instância no console e optar por se conectar usando o EC2 Instance Connect. O Instance Connect lida com as permissões e fornece uma conexão bem-sucedida.
Como conectar-se à sua instância usando o cliente com base em navegador no console do Amazon EC2
Abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/
. -
No painel de navegação, escolha Instances (Instâncias).
-
Selecione a instância e escolha Connect (Conectar).
-
Selecione EC2 Instance Connect.
-
Verifique o nome de usuário e escolha Connect (Conectar) para abrir uma janela de terminal.
Conectar-se usando a CLI do EC2 Instance Connect
É possível se conectar a uma instância usando a CLI do EC2 Instance Connect CLI fornecendo somente o ID da instância, enquanto a CLI do Instance Connect executa as três ações a seguir em uma só chamada: gera uma chave pública do SSH de uso único, envia por push a chave para a instância, onde permanece por 60 segundos, e conecta o usuário à instância. É possível usar comandos básicos de SSH/SFTP com a CLI do Instance Connect.
Esse método de conexão funciona para instâncias com endereços IP públicos e privados. Ao se conectar a uma instância que tenha apenas endereços IP privados, o computador local a partir do qual você está iniciando a sessão deve ter conectividade com o endpoint do serviço EC2 Instance Connect (para enviar sua chave pública SSH à instância), bem como conectividade de rede com o endereço IP privado da instância. O endpoint de serviço do EC2 Instance Connect é acessível pela Internet ou por meio de uma interface virtual pública do AWS Direct Connect. Para se conectar ao endereço IP privado da instância, é possível aproveitar serviços, como AWS Direct Connect
-i
não é compatível ao usar mssh. Ao usar o comando mssh para se conectar à instância, você não precisa especificar nenhum tipo de arquivo de identidade porque Instance Connect gerencia o par de chaves.
Conectar-se usando sua própria chave e cliente SSH
É possível usar sua própria chave SSH e conectar-se à sua instância a partir do cliente SSH de sua escolha enquanto usa a API do EC2 Instance Connect. Isso permite que você se beneficie da capacidade do Instance Connect de enviar por push uma chave pública para a instância. Esse método de conexão funciona para instâncias com endereços IP públicos e privados.
Requisitos
-
Requisitos para pares de chaves
-
Tipos com suporte: RSA (OpenSSH e SSH2) e ED25519
-
Tamanhos com suporte: 2048 e 4096.
-
Para obter mais informações, consulte Criar um par de chaves usando uma ferramenta de terceiros e importe a chave pública para o Amazon EC2.
-
-
Ao se conectar a uma instância que só tenha endereços IP privados, o computador local a partir do qual você está iniciando a sessão SSH deve ter conectividade com o endpoint do serviço EC2 Instance Connect (para enviar sua chave pública SSH para a instância), além de conectividade de rede para o endereço IP privado da instância para estabelecer a sessão SSH. O endpoint de serviço do EC2 Instance Connect é acessível pela Internet ou por meio de uma interface virtual pública do AWS Direct Connect. Para se conectar ao endereço IP privado da instância, é possível aproveitar serviços, como AWS Direct Connect
, AWS Site-to-Site VPN ou emparelhamento de VPC.
Para se conectar à sua instância usando a própria chave e qualquer cliente SSH
-
(Opcional) Gerar chaves novas chaves SSH privadas e públicas
É possível gerar novas chaves SSH públicas e privadas,
my_key
emy_key.pub
, usando o comando a seguir:$
ssh-keygen -t rsa -f my_key
-
Envie por push a chave pública do SSH para a instância
Use o comando send-ssh-public-key para enviar por push a chave pública SSH para a instância. Se você tiver lançado sua instância usando Amazon Linux 2, o nome do usuário padrão para a AMI será
ec2-user
. Se você tiver lançado sua instância usando Ubuntu, o nome do usuário padrão para a AMI seráubuntu
.O exemplo a seguir envia a chave pública para a instância especificada na zona de disponibilidade especificada, para autenticar
ec2-user
.$
aws ec2-instance-connect send-ssh-public-key \ --instance-id
i-001234a4bf70dec41EXAMPLE
\ --availability-zoneus-west-2b
\ --instance-os-userec2-user
\ --ssh-public-key file://my_key.pub
-
Conecte-se à instância usando a chave privada
Use o comando ssh para se conectar à instância usando a chave privada antes de a chave pública ser removida dos metadados da instância (você tem 60 segundos antes de ser removida). Especifique a chave privada que corresponde à chave pública, ao nome de usuário padrão da AMI que você usou para executar sua instância e o nome DNS público da instância (se estiver se conectando por uma rede privada, especifique o nome DNS privado ou o endereço IP). Adicione a opção
IdentitiesOnly=yes
para garantir que apenas os arquivos na configuração ssh e a chave especificada sejam usados para a conexão.$
ssh -o "IdentitiesOnly=yes" -i
my_key
ec2-user
@ec2-198-51-100-1.compute-1.amazonaws.com
Solução de problemas
Se você receber um erro ao tentar se conectar à instância, consulte: