Trabalhar com Agente do SSM - AWS Systems Manager

Trabalhar com Agente do SSM

O AWS Systems Manager Agent (Agente do SSM) é um software da Amazon que pode ser instalado e configurado em uma instância do EC2, em um servidor no local ou em uma máquina virtual (VM). O Agente do SSM permite que o Systems Manager atualize, gerencie e configure esses recursos. O agente processa solicitações de serviço Systems Manager na Nuvem AWS e as executa conforme especificado. Em seguida, o Agente do SSM retorna informações de status e execução ao serviço Systems Manager usando o Amazon Message Delivery Service (prefixo de serviço: ec2messages).

Se monitorizar o tráfego, verá o seu Amazon Elastic Compute Cloud (Amazon EC2) e quaisquer servidores ou VM no local no seu ambiente híbrido, comunicando com ec2messages.* de avaliação final. Para obter mais informações, consulte Referência: ec2messages, ssmmessages e outras chamadas de API. Para obter mais informações sobre a transferência de logs do Agente do SSM para o Amazon CloudWatch Logs, consulte Monitorar o AWS Systems Manager.

Manter o Agente do SSM atualizado

Uma versão atualizada do Agente do SSM é lançada sempre que novos recursos são adicionados ao Systems Manager ou sempre que atualizações são feitas nos recursos existentes. Se uma versão mais antiga do agente estiver em execução em uma instância, alguns processos do Agente do SSM poderão falhar. Por esse motivo, recomendamos que você automatize o processo de manutenção do Agente do SSM atualizado nas suas instâncias. Para obter mais informações, consulte Automatizar atualizações para Agente do SSM. Para ser notificado sobre as atualizações do Agente do SSM, inscreva-se na página Notas de release do Agente do SSM no GitHub.

nota

Imagens Amazon Machine (AMIs) que incluem Agente do SSM por predefinição, pode demorar até duas semanas para ser atualizado com a versão mais recente do Agente do SSM. Recomendamos que você configure atualizações automatizadas ainda mais frequentes para o Agente do SSM.

Updated versions of Agente do SSM são lançados para novos AWS Regiões em momentos diferentes. Por esse motivo, você pode receber o erro “Não compatível com a plataforma atual” ou “atualizando o amazon-ssm-agent para uma versão mais antiga, ative a permissão de downgrade para continuar” ao tentar implantar uma nova versão do Agente do SSM em uma região.

Agente do SSM e o Serviço de Metadados de Instância (IMDS)

O Systems Manager depende de metadados de instância do EC2 para funcionar corretamente. O Systems Manager pode acessar metadados de instância usando a versão 1 ou a versão 2 do Serviço de metadados de instância (IMDSv1 e IMDSv2). Para obter mais informações, consulte Metadados de instância e dados de usuário no Guia do usuário do Amazon EC2 para instâncias do Linux.

Precedência de credenciais do Agente do SSM

Quando o agente SSM é instalado numa instância, são necessárias permissões para comunicar com o serviço Gestor de Sistemas. Em instâncias EC2, estas permissões são fornecidas num perfil de instância que está anexado à instância. Numa instância híbrida, o Agente SSM recebe normalmente as permissões necessárias do ficheiro de credenciais partilhadas, localizado em /root/.aws/credentials (Linux) ou %USERPROFILE%\.aws\credentials (Windows). As permissões necessárias são adicionadas a este ficheiro durante o processo de ativação híbrida.

No entanto, em casos raros, uma instância pode acabar com permissões adicionadas a mais de um dos locais onde Agente do SSM verifica as permissões para executar as suas tarefas.

Por exemplo, pode configurar uma instância para ser gerida por Systems Manager. Para uma instância EC2, essa configuração inclui anexar um perfil de instância. Para um servidor no local ou máquina virtual (VM), isso significa que as credenciais são fornecidas através do processo de ativação híbrida. Mas, então, decide também utilizar essa instância para tarefas de programador ou de utilizador final e instalar a AWS CLI nisto. Esta instalação resulta na adição de permissões adicionais a um ficheiro de credenciais na instância.

Quando executa um Systems Manager na instância, Agente do SSM podem tentar utilizar credenciais diferentes daquelas que espera que utilize, tais como a partir de um ficheiro de credenciais em vez de um perfil de instância. Isto acontece porque Agente do SSM procurar credenciais pela ordem indicada para o cadeia de fornecedores de credenciais predefinida.

nota

Em Linux, Agente do SSM funciona como o utilizador raiz. Por isso, as variáveis ambientais e o ficheiro de credenciais que Agente do SSM neste processo são apenas do utilizador raiz (/root/.aws/credentials). Agente do SSM não analisa o ficheiro de variáveis de ambiente ou credenciais de quaisquer outras contas de utilizador na instância durante a pesquisa de credenciais.

A cadeia de fornecedores predefinida procura credenciais pela seguinte ordem:

  1. Variáveis de ambiente, se configuradas (AWS_ACCESS_KEY_ID e AWS_SECRET_ACCESS_KEY).

  2. Ficheiro de credenciais partilhado ($HOME/.aws/credentials para Linux ou %USERPROFILE%\.aws\credentials para Windows) com permissões fornecidas por, por exemplo, uma ativação híbrida ou um AWS CLI instalação.

  3. máquinas AWS Identity and Access Management (IAM) para tarefas se estiver presente uma aplicação que utiliza um Amazon Elastic Container Service (Amazon ECS) definição de tarefa ou RunTask Operação API.

  4. Um perfil de instância anexado a um Amazon EC2 instância.

Para obter informações relacionadas, consulte os seguintes tópicos:

Sobre a conta local ssm-user

Começando na versão 2.3.50.0 do Agente do SSM, o agente cria uma conta de usuário local chamada ssm-user e a adiciona ao /etc/sudoers (Linux) ou ao grupo de Administradores (Windows). Em versões do agente anteriores a 2.3.612.0, a conta é criada na primeira vez que o Agente do SSM é iniciado ou reiniciado após a instalação. Na versão 2.3.612.0 e posteriores, a conta ssm-user é criada na primeira vez que uma sessão é iniciada em uma instância. ssm-user é o usuário padrão do sistema operacional quando uma sessão do Session Manager é iniciada. É possível alterar as permissões movendo ssm-user para um grupo com menos privilégios ou alterando o arquivo sudoers. A conta ssm-user não é removida do sistema quando o Agente do SSM é desinstalado.

No Windows Server, o Agente do SSM lida com a configuração de uma nova senha para a conta ssm-user quando cada sessão começa. Nenhuma senha é definida para ssm-user em instâncias gerenciadas do Linux.

Começando com o Agente do SSM versão 2.3.612.0, a conta ssm-user não é criada automaticamente em máquinas Windows Server usadas como controladores de domínio. Para usar o Session Manager em um controlador de domínio do Windows Server, você deve criar a conta ssm-user manualmente, caso ela ainda não esteja presente.

Importante

Para que a conta ssm-user seja criada, o perfil de instância anexado à instância deve fornecer as permissões necessárias. Para obter informações, consulte Verificar ou criar um perfil de instância do IAM com permissões do Session Manager.

AMIs com o Agente do SSM pré-instalado

Por padrão, o Agente do SSM é pré-instalado nas seguintes imagens de máquina da Amazon (AMIs):

  • AMIs do Windows Server 2008-2012 R2 publicadas em novembro de 2016 ou posterior

  • Windows Server 2016 e 2019

  • Amazon Linux

  • Amazon Linux 2

  • Ubuntu Server 16.04, 18.04 e 20.04

  • AMIs otimizadas para o Amazon ECS

O Agente do SSM não está instalado em todas as AMIs com base no Amazon Linux ou no Amazon Linux 2. Por exemplo, o Agente do SSM não é pré-instalado em AMIs otimizadas para o EKS com base no Amazon Linux 2.

Você deve instalar manualmente o Agente do SSM em instâncias do EC2 criadas de outras AMIs do Linux. Você também deve instalar manualmente o Agente do SSM em servidores ou VMs locais no seu ambiente híbrido. Para obter mais informações, consulte Configurar o AWS Systems Manager para ambientes híbridos.

Agente do SSM no GitHub

O código-fonte para o Agente do SSM está disponível no GitHub para que você possa adaptar o agente a fim de atender às suas necessidades. Incentivamos você a enviar solicitações pull sobre alterações que gostaria que fosse incluídas. No entanto, a Amazon Web Services atualmente não oferece suporte para executar cópias modificadas desse software.