Help us improve the AWS re:Post Knowledge Center by sharing your feedback in a brief survey. Your input can influence how we create and update our content to better support your AWS journey.
Por que não consigo usar o Gerenciador de Sessões para me conectar à minha instância do Amazon EC2?
Não consigo usar o Gerenciador de Sessões, um recurso do AWS Systems Manager, para acessar uma instância do Amazon Elastic Compute Cloud (Amazon EC2).
Resolução
Observação: se você receber erros ao executar comandos da AWS Command Line Interface (AWS CLI), consulte Solução de problemas da AWS CLI. Além disso, verifique se você está usando a versão mais recente da AWS CLI.
Os seguintes motivos podem fazer com que seu Gerenciador de Sessões não se conecte à sua instância do EC2:
- Pré-requisitos ausentes do Gerenciador de Sessões
- Problemas de permissão do AWS Identity and Access Management (AWS IAM)
- Configurações incorretas das preferências do Gerenciador de Sessões
- Problemas com o plug-in do Gerenciador de Sessões
- Problemas de conectividade
Para identificar a causa raiz dos problemas de conexão e verificar se há mensagens de erro, verifique os logs do AWS Systems Manager Agent (SSM Agent).
Verifique se você atende aos pré-requisitos do Gerenciador de Sessões
Certifique-se de que a instância use nós gerenciados e que sua configuração esteja de acordo com os pré-requisitos do Gerenciador de Sessões. Para obter mais informações, consulte Por que o Systems Manager não está mostrando minha instância do Amazon EC2 como uma instância gerenciada?
Se você executar o SSM Agent versão 3.1.501.0, é possível usar o ssm-cli para verificar se a instância atende aos pré-requisitos do Gerenciador de Sessões. A ferramenta ssm-cli determina por que o Systems Manager não inclui uma instância em execução na lista de instâncias gerenciadas.
Verifique se seu usuário ou perfil do IAM tem as políticas de IAM necessárias
Confirme se o usuário ou perfil do IAM que você usa para se conectar à instância do EC2 tem as políticas e permissões do IAM necessárias para o Gerenciador de Sessões.
Solucionar problemas na configuração de Preferências do Gerenciador de Sessões
Verifique sua configuração do AWS KMS
É possível ativar a criptografia do AWS Key Management Service (AWS KMS) no Gerenciador de Sessões. Se você ativar o AWS KMS e a instância não conseguir acessar os endpoints do AWS KMS, você receberá a seguinte mensagem de erro:
“Your session has been terminated for the following reasons: ----------ERROR------- Encountered error while initiating handshake. Handshake timed out. Please ensure that you have the latest version of the session manager plugin.”
Para verificar a conectividade com seus endpoints do AWS KMS, execute o seguinte comando:
telnet kms.RegionID.amazonaws.com 443
Observação: substitua RegionID pela sua região da AWS.
Se a saída mostrar que não é possível se conectar ao seu endpoint do AWS KMS, configure uma conexão com o endpoint de nuvem privada virtual (VPC) do AWS KMS.
Se o perfil de instância ou o usuário do IAM não tiver a permissão kms:Decrypt na chave, você receberá a seguinte mensagem de erro:
“Your session has been terminated for the following reasons: ----------ERROR------- Encountered error while initiating handshake. Fetching data key failed: Unable to retrieve data key, Error when decrypting data key AccessDeniedException: User: arn:aws:sts::account id:assumed-role/instance-profile/instance-id is not authorized to perform: kms:Decrypt on resource: arn:aws:kms:region:account id:key/key-id because no identity-based policy allows the kms:Decrypt action status code: 400”
Para resolver esse problema, adicione a permissão kms:Decrypt para a chave do AWS KMS que você usa para criptografar a sessão.
Se o nome do recurso da Amazon (ARN), da chave do AWS KMS que você especificar no Gerenciador de Sessões não estiver correta ou não existir mais, você receberá a seguinte mensagem de erro:
“Your session has been terminated for the following reasons: Error calling KMS GenerateDataKey API: NotFoundException: Key 'arn:aws:kms:region:account:key/abcdxyz' does not exist”
Para resolver esse problema, verifique o ARN da chave do AWS KMS para se certificar de que está correto.
Verificar a configuração do Amazon S3
É possível armazenar dados da sessão em um bucket do Amazon Simple Storage Service (Amazon S3). Se você usa criptografia de log e o perfil de instância não tem a permissão s3:GetEncryptionConfiguration, você recebe a seguinte mensagem de erro:
“Your session has been terminated for the following reasons: Couldn't start the session because we are unable to validate encryption on Amazon S3 bucket. Error: AccessDenied: User:abcd is not authorized to perform: s3:GetEncryptionConfiguration on resource”
Para resolver esse problema, adicione as permissões s3:GetEncryptionConfiguration ao perfil de instância.
Se o bucket do S3 que você configurou no Gerenciador de Sessões não existir, você receberá a seguinte mensagem de erro:
“Your session has been terminated for the following reasons: Couldn't start the session because we are unable to validate encryption on Amazon S3 bucket. Error: NoSuchBucket: The specified bucket does not exist status code: 404”
Para resolver esse problema, verifique se o bucket que você especificou no Gerenciador de Sessões está correto e disponível.
Verifique a configuração do seu sistema operacional
Se você ativar a opção Executar como suporte em suas instâncias Linux, é possível iniciar sessões com credenciais de usuário do sistema operacional (SO). No entanto, se o nome de usuário do sistema operacional não existir, você receberá a seguinte mensagem de erro:
“Your session has been terminated for the following reasons: ----------ERROR------- Unable to start command: failed to start pty since RunAs user username does not exist “
Para resolver esse problema, certifique-se de usar o nome de usuário padrão correto para seu sistema operacional ou se o nome de usuário personalizado está correto.
Importante: não é possível usar a conta de usuário-raiz do sistema operacional para autenticar conexões com o Gerenciador de Sessões.
Solucionar problemas com o plug-in do Gerenciador de Sessões
Se o volume raiz do Amazon Elastic Block Store (Amazon EBS) da instância estiver cheio, o SSM Agent não poderá criar os arquivos necessários. Se você receber a seguinte mensagem de erro:
“Your session has been terminated for the following reasons: Plugin with name Standard_Stream not found. Step name: Standard_Stream”
Para resolver esse problema, aumente o tamanho do volume do Amazon EBS e, em seguida, estenda o sistema de arquivos. Ou exclua arquivos que você não usa para liberar mais espaço em disco na instância.
Se você usar a AWS CLI para se conectar à instância, deverá instalar o plug-in do Gerenciador de Sessões em sua máquina local. Se você não instalar o plug-in, receberá a seguinte mensagem de erro:
“SessionManagerPlugin is not found. Please refer to SessionManager Documentation here: http://docs.aws.amazon.com/console/systems-manager/session-manager-plugin-not-found”
Solucionar problemas de conectividade
Depois de iniciar uma sessão do Gerenciador de Sessões, você poderá ver uma tela em branco com um cursor piscando. Se você tiver esse problema, talvez sua máquina local não esteja conectada ao endpoint do Gerenciador de Sessões
Para verificar a conectividade com o endpoint do Gerenciador de Sessões da AWS, execute o seguinte comando com base no seu sistema operacional.
Linux:
telnet ssmmessages.RegionID.amazonaws.com 443
Observação: substitua RegionID pela sua Região.
Windows:
Test-NetConnection ssmmessages.RegionID.amazonaws.com -port 443
Observação: substitua RegionID pela sua Região.
Se sua instância estiver em uma sub-rede privada, consulte Como faço para criar endpoints do Amazon Virtual Private Cloud (Amazon VPC) para que eu possa usar o Systems Manager para gerenciar instâncias privadas do Amazon EC2 sem acesso à Internet?
Para outros cenários de solução de problemas, consulte Como solucionar problemas com o Gerenciador de Sessões do AWS Systems Manager?
Informações relacionadas
Solução de problemas do Gerenciador de Sessões
Como posso usar um túnel SSH por meio do Systems Manager para acessar meus recursos de VPC privados?
Permitir e controlar permissões de conexões SSH por meio do Gerenciador de Sessões
- Tópicos
- Management & Governance
- Idioma
- Português
