Como soluciono problemas com o Gerenciador de Sessões do AWS Systems Manager?

7 minuto de leitura
0

Quando tento usar o AWS Systems Manager Session Manager, minha sessão falha.

Solução

Quando uma sessão falhar porque sua instância do Amazon Elastic Compute Cloud (Amazon EC2) não está disponível como instância gerenciada, solucione o problema de disponibilidade da sua instância gerenciada.

Se uma sessão falhar e sua instância do Amazon EC2 estiver disponível como uma instância gerenciada, diagnostique o Session Manager para resolver os seguintes problemas:

  • O Gerenciador de Sessões não tem permissão para iniciar uma sessão.
  • O Gerenciador de Sessões não tem permissão para alterar as preferências da sessão.
  • Um nó gerenciado não está disponível ou não está configurado para o Gerenciador de Sessões.
  • Os plug-ins do Gerenciador de Sessões não são adicionados ao caminho da linha de comando (Windows).
  • O sistema envia um erro TargetNotConnected.
  • O Gerenciador de Sessões exibe uma tela em branco quando você inicia uma sessão.

Quando uma sessão falhar e exibir uma das seguintes mensagens de erro, aplique as diretrizes de solução de problemas apropriadas.

"Your session has been terminated for the following reasons: ----------ERROR------- Encountered error while initiating handshake. Falha na busca pela chave de dados: Não foi possível recuperar a chave de dados. Erro ao descriptografar a chave de dados AccessDeniedException: The ciphertext refers to a AWS KMS key that does not exist, does not exist in this region, or you are not allowed to access. status code: 400, request id: nnnnnnnnnnnn"

Você recebe esse erro quando os usuários e as instâncias do EC2 em sua conta não têm as permissões de chave do AWS Key Management Service (AWS KMS) necessárias. Para resolver esse erro, ative a criptografia do AWS KMS para seus dados de sessão e siga estas etapas:

  1. Conceda as permissões de chave KMS necessárias aos usuários que iniciam sessões e às instâncias às quais as sessões se conectam.
  2. Em seguida, configure o AWS Identity and Access Management (IAM) para fornecer aos usuários e instâncias permissões para usar a chave KMS com o Gerenciador de Sessões:
    Para adicionar permissões de chave do AWS KMS para usuários, consulte Exemplos de políticas do IAM para o Session Manager.
    Para adicionar permissões de chave do AWS KMS para instâncias, consulte Verificar ou adicionar permissões de instância para o Session Manager.
    Para a Configuração Padrão de Gerenciamento de Host, adicione uma política a um perfil do IAM que forneça permissões de chave do KMS.

**Observação:**A partir da versão 3.2.582.0 do AWS Systems Manager Agent (SSM Agent), a Configuração Padrão de Gerenciamento de Host gerencia automaticamente as instâncias do EC2 sem um perfil de instância do IAM. As instâncias devem usar o Instance Metadata Service Versão 2 (IMDSv2).

"Error - Fleet Manager is unable to start the session because the WebSocket connection closed unexpectedly during the handshake. Verify that your instance profile has sufficient Sessions Manager and AWS KMS permissions. For a more detailed message, visit the Session Manager console"

Você pode receber esse erro quando a função de perfil de instância anexada à instância de destino não tiver a permissão a seguir. Para usar o AWS Systems Manager com o AWS KMS, a permissão kms:Decrypt é necessária para permitir a criptografia e a descriptografia da chave do cliente para os dados da sessão.

{
    "Effect":   "Allow",
    "Action":  [
          "kms:Decrypt"
    ],
    "Resource": "key-name"
}

Para resolver esse erro, atualize suas permissões da função de perfil da instância vinculada à sua instância. Para ver o exemplo de permissões do Gerenciador de Sessões, consulte Adicionar permissões do Gerenciador de Sessão a uma função existente do IAM.

"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: Access Denied status code: 403”

Você recebe esse erro ao escolher Permitir somente buckets criptografados do S3 para Registro do S3 nas suas preferências do Gerenciador de Sessões. Para resolver esse erro, conclua as seguintes etapas:

  1. Abra o console do AWS Systems Manager.
  2. Escolha Gerenciador de Sessões, Preferências e, em seguida, escolha Editar.
  3. Em Logging do S3, desmarque Permitir somente buckets criptografados do S3 e salve suas alterações.
    Para obter mais informações, consulte Logging de dados da sessão usando Amazon S3 (console).
  4. Para instâncias que você gerencia usando um perfil de instância do IAM, adicione uma política ao perfil da instância para fornecer permissões para carregar logs criptografados para o Amazon S3. Para instruções, consulte Crie um perfil do IAM com permissões para o Session Manager, Amazon S3 e CloudWatch Logs (console).
  5. Para instâncias que você gerencia usando a Configuração Padrão de Gerenciamento de Host, adicione uma política ao perfil do IAM para fornecer permissões para carregar logs criptografados no Amazon S3. Para mais informações, consulte Crie um perfil do IAM com permissões para o Session Manager, Amazon S3 e CloudWatch Logs (console).

"Your session has been terminated for the following reasons: We couldn't start the session because encryption is not set up on the selected CloudWatch Logs log group. Either encrypt the log group or choose an option to enable logging without encryption"

Você recebe esse erro ao escolher Permitir somente grupos de logs criptografados do CloudWatch para logs do CloudWatch em suas preferências do Gerenciador de Sessões. Conclua as seguintes etapas para resolver esse erro:

  1. Abra o console do AWS Systems Manager.
  2. Escolha Gerenciador de Sessões, Preferências e, em seguida, escolha Editar.
  3. Em Logs do CloudWatch, desmarque Permitir somente grupos de logs criptografados do CloudWatch e salve suas alterações.
    Para obter mais informações, consulte Logging de dados da sessão usando Amazon CloudWatch Logs (console).
  4. Para instâncias que você gerencia usando um perfil de instância do IAM, adicione uma política ao perfil da instância para fornecer permissões para carregar logs criptografados para o Amazon CloudWatch. Para obter instruções, consulte Crie um perfil do IAM com permissões para o Session Manager, Amazon S3 e CloudWatch Logs (console).
  5. Para instâncias que você gerencia usando a Configuração Padrão de Gerenciamento de Host, adicione uma política ao perfil do IAM para fornecer permissões para carregar logs criptografados no CloudWatch. Para obter instruções, consulte Crie um perfil do IAM com permissões para o Session Manager, Amazon S3 e CloudWatch Logs (console).

"Your session has been terminated for the following reasons: ----------ERROR------- Unable to start command: Failed to create user ssm-user: Instance is running active directory domain controller service. Disable the service to continue to use session manager"

Você pode receber esse erro ao usar o AWS Systems Manager para Windows Server. A causa desse erro depende da versão do atendente SSM em execução na instância.

Informações relacionadas

Como associo ou substituo um perfil de instância em uma instância do Amazon EC2?

Ativando e desativando o logging de sessões

Configurando o Gerenciador de Sessões

AWS OFICIAL
AWS OFICIALAtualizada há 6 meses