Configurar permissões de instância obrigatórias para o Systems Manager - AWS Systems Manager

Configurar permissões de instância obrigatórias para o Systems Manager

Por padrão, o AWS Systems Manager não tem permissão para executar ações em suas instâncias. É possível fornecer permissões de instância no nível da conta usando um perfil do AWS Identity and Access Management (IAM) ou no nível da instância usando um perfil de instância. Se o seu caso de uso permitir, recomendamos conceder acesso no nível da conta usando a configuração de gerenciamento de host padrão.

Configuração recomendada para permissões de instâncias do EC2

A configuração de gerenciamento de host padrão permite que o Systems Manager gerencie as instâncias do Amazon EC2 automaticamente. Após ativar essa configuração, todas as instâncias que usam a versão 2 do serviço de metadados da instância (IMDSv2) na Região da AWS e na Conta da AWS com a versão 3.2.582.0 ou posterior do SSM Agent instalada automaticamente, tornam-se instâncias gerenciadas. A configuração de gerenciamento de host padrão não oferece suporte à versão 1 do serviço de metadados da instância. Para obter informações sobre como fazer a transição para IMDSv2, consulte Transição para usar o Serviço de metadados da instância versão 2 no Guia do usuário do Amazon EC2. Para obter informações sobre como verificar a versão do SSM Agent instalada em sua instância, consulte Verificar o número de versão do SSM Agent. Para obter informações sobre como atualizar o SSM Agent, consulte Atualizar automaticamente o SSM Agent. Os benefícios das instâncias gerenciadas incluem o seguinte:

  • Conectar-se às suas instâncias com segurança usando o Session Manager.

  • Realizar verificações de patches automatizadas usando o Patch Manager.

  • Visualizar informações detalhadas sobre suas instâncias usando o Inventário do Systems Manager.

  • Acompanhar e gerenciar instâncias usando o Fleet Manager.

  • Manter o SSM Agent atualizado automaticamente.

O Fleet Manager, o Inventário, o Patch Manager e o Session Manager são funcionalidades do AWS Systems Manager.

A configuração de gerenciamento de host padrão permite o gerenciamento de instância sem o uso de perfis de instância e garante que o Systems Manager tenha permissões para gerenciar todas as instâncias na região e na conta. Se as permissões fornecidas não forem suficientes para seu caso de uso, também é possível adicionar políticas ao perfil do IAM padrão criado pela configuração de gerenciamento de host padrão. Como alternativa, se você não precisar de permissões para todas as funcionalidades fornecidas pelo perfil do IAM padrão, poderá criar seu próprio perfil e as políticas personalizadas. Quaisquer alterações realizadas no perfil do IAM que você escolher para a configuração de gerenciamento de host padrão se aplicarão a todas as instâncias do Amazon EC2 gerenciadas na região e na conta. Para obter mais informações sobre a política usada pela configuração de gerenciamento de host padrão, consulte Política gerenciada pela AWS: AmazonSSMManagedEC2InstanceDefaultPolicy. Para obter mais informações sobre a configuração de gerenciamento de host padrão, consulte Gerenciar instâncias do EC2 automaticamente com a Configuração de gerenciamento de hosts padrão.

Importante

As instâncias registradas usando a Configuração Padrão de Gerenciamento de Host armazenam informações de registro localmente nos diretórios /lib/amazon/ssm ou C:\ProgramData\Amazon. A remoção desses diretórios ou de seus arquivos impedirá que a instância adquira as credenciais necessárias para se conectar ao Systems Manager usando a Configuração Padrão de Gerenciamento de Host. Nesses casos, você deve usar um perfil de instância para fornecer as permissões necessárias à sua instância, ou então recriar a instância.

nota

Esse procedimento deve ser executado somente por administradores. Implemente acesso com privilégio mínimo ao permitir que indivíduos configurem ou modifiquem a configuração de gerenciamento de host padrão. É necessário ativar a configuração de gerenciamento de host padrão em cada Região da AWS que deseja gerenciar automaticamente as instâncias do Amazon EC2.

Como ativar a definição de configuração de gerenciamento de host padrão

É possível ativar a configuração de gerenciamento de host padrão no console do Fleet Manager. Para concluir este procedimento com êxito usando o AWS Management Console ou sua ferramenta de linha de comando preferida, você deve ter permissões para as operações de API GetServiceSetting, ResetServiceSetting e UpdateServiceSetting. Além disso, você deve ter permissões para a permissão iam:PassRole para o perfil do IAM AWSSystemsManagerDefaultEC2InstanceManagementRole. Veja abaixo um exemplo de política . Substitua cada espaço reservado para recurso de exemplo por suas próprias informações.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "ssm:GetServiceSetting", "ssm:ResetServiceSetting", "ssm:UpdateServiceSetting" ], "Resource": "arn:aws:ssm:region:account-id:servicesetting/ssm/managed-instance/default-ec2-instance-management-role" }, { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::account-id:role/service-role/AWSSystemsManagerDefaultEC2InstanceManagementRole", "Condition": { "StringEquals": { "iam:PassedToService": [ "ssm.amazonaws.com" ] } } } ] }

Antes de começar, se você tiver perfis de instância anexados às suas instâncias do Amazon EC2, remova todas as permissões que permitem a operação ssm:UpdateInstanceInformation. O SSM Agent tenta usar as permissões de perfil de instância antes de usar as permissões de configuração de gerenciamento de host padrão. Se você permitir a operação ssm:UpdateInstanceInformation em seus perfis de instância, a instância não usará as permissões de configuração de gerenciamento de host padrão.

  1. Abra o console do AWS Systems Manager em https://console.aws.amazon.com/systems-manager/.

  2. No painel de navegação, escolha Fleet Manager.

  3. Escolha Definir Configuração de gerenciamento de host padrão no menu suspenso Gerenciamento de contas.

  4. Ative Habilitar a configuração de gerenciamento de host padrão.

  5. Escolha o perfil do IAM usado para habilitar as funcionalidades do Systems Manager para as suas instâncias. Recomendamos usar o perfil padrão fornecido pela configuração de gerenciamento de host padrão. Ele contém o conjunto mínimo de permissões necessárias para gerenciar as instâncias do Amazon EC2 usando o Systems Manager. Se você preferir usar um perfil personalizado, a política de confiança do perfil deve permitir que o Systems Manager seja uma entidade confiável.

  6. Escolha Configurar para concluir a configuração.

Após ativar a configuração de gerenciamento de host padrão, pode demorar até 30 minutos para que as instâncias usem as credenciais do perfil escolhido. É necessário ativar a configuração de gerenciamento de host padrão em cada região que deseja gerenciar automaticamente as instâncias do Amazon EC2.

Configuração alternativa para permissões de instâncias do EC2

É possível conceder acesso no nível da instância individual usando um perfil de instância do AWS Identity and Access Management (IAM). Um perfil de instância é um contêiner que transmite as informações da função do IAM para uma instância do Amazon Elastic Compute Cloud (Amazon EC2) na inicialização. Você pode criar um perfil de instância para o Systems Manager anexando uma ou mais políticas do IAM que definem as permissões necessárias para uma nova função ou uma função que você já tnha criado.

nota

Você pode usar o Quick Setup, um recurso do AWS Systems Manager, para configurar rapidamente um perfil de instância em todas as instâncias em seu Conta da AWS. O Quick Setup também cria um perfil de serviço do IAM (ou perfil assume), o que permite que o Systems Manager execute com segurança comandos em seu nome em suas instâncias. Com o uso do Quick Setup, pode-se ignorar esta etapa (Etapa 3) e a Etapa 4. Para ter mais informações, consulte AWS Systems Manager Quick Setup.

Observe os seguintes detalhes sobre a criação de um perfil da instância do IAM:

  • Se estiver configurando máquinas que não são do EC2 em um ambiente híbrido e multinuvem para o Systems Manager, não é necessário criar um perfil de instância para elas. Em vez disso, configure seus servidores e VMs para usar uma função de serviço do IAM. Para obter mais informações, consulte Criar o perfil de serviço do IAM obrigatório para o Systems Manager em ambientes híbridos e multinuvem.

  • Se você alterar o perfil da instância do IAM, poderá levar algum tempo até as credenciais da instância serem atualizadas. O SSM Agent não processará solicitações até que isso aconteça. Para acelerar o processo de atualização, reinicie o SSM Agent ou a instância.

Se você estiver criando uma nova função para o perfil da instância ou adicionando as permissões necessárias a uma função existente, use um dos procedimentos a seguir.

Para criar um perfil de instância para instâncias gerenciadas do Systems Manager (console)
  1. Abra o console do IAM em https://console.aws.amazon.com/iam/.

  2. No painel de navegação, escolha Roles e Create role.

  3. Em Trusted entity type (Tipo da entidade confiável), escolha AWS service (Serviço da AWS).

  4. Diretamente sob Use case (Caso de uso), escolha EC2 e Next (Avançar).

  5. Na página Add permissions (Adicionar permissões), faça o seguinte:

    • Use o campo Search (Pesquisar) para localizar AmazonSSMManagedInstanceCore. Marque a caixa de seleção próximo a seu nome, conforme mostrado na ilustração a seguir.

      A caixa de seleção é marcada na linha AmazonSSMManagedInstanceCore.

      O console reterá sua seleção mesmo que você pesquise outras políticas.

    • Se você tiver criado uma política de bucket do S3 personalizada no procedimento anterior, (Opcional) Criação de uma política personalizada para acesso ao bucket do S3, marque a caixa de seleção ao lado do nome dela.

    • Se você planejar ingressar instâncias em um Active Directory gerenciado pelo AWS Directory Service, pesquise por AmazonSSMDirectoryServiceAccess e marque a caixa de seleção ao lado do nome.

    • Se você planejar usar o EventBridge ou o CloudWatch Logs para gerenciar ou monitorar sua instância, pesquise por CloudWatchAgentServerPolicy e marque a caixa de seleção ao lado do nome.

  6. Escolha Próximo.

  7. Em Role name (Nome da função), insira um nome para seu novo perfil da instância, como SSMInstanceProfile.

    nota

    Anote o nome da função. Você escolherá essa função ao criar novas instâncias que deseja gerenciar usando o Systems Manager.

  8. (Opcional) Em Description (Descrição), atualize a descrição deste perfil de instância.

  9. (Opcional) Em Tags (Etiquetas), adicione um ou mais pares de valores etiqueta-chave para organizar, monitorar ou controlar o acesso para esse perfil e, em seguida, escolha Create role (Criar perfil). O sistema faz com que você retorne para a página Roles.

Para adicionar permissões de perfil de instância para o Systems Manager a uma função existente (console)
  1. Abra o console do IAM em https://console.aws.amazon.com/iam/.

  2. No painel de navegação, selecione Roles (Funções) e, em seguida, escolha a função existente que você deseja associar a um perfil de instância para operações do Systems Manager.

  3. Na guia Permissions (Permissões), escolha Add permissions, Attach policies (Adicionar permissões, anexar políticas).

  4. Na página Attach Policy (Anexar política), faça o seguinte:

    • Use o campo Search (Pesquisar) para localizar AmazonSSMManagedInstanceCore. Marque a caixa de seleção ao lado do nome.

    • Se você tiver criado uma política de bucket do S3 personalizada, procure-a e marque a caixa de seleção ao lado do nome dela. Para obter informações sobre políticas de bucket do S3 personalizadas para um perfil de instância, consulte (Opcional) Criação de uma política personalizada para acesso ao bucket do S3.

    • Se você planejar ingressar instâncias em um Active Directory gerenciado pelo AWS Directory Service, pesquise por AmazonSSMDirectoryServiceAccess e marque a caixa de seleção ao lado do nome.

    • Se você planejar usar o EventBridge ou o CloudWatch Logs para gerenciar ou monitorar sua instância, pesquise por CloudWatchAgentServerPolicy e marque a caixa de seleção ao lado do nome.

  5. Escolha Anexar políticas.

Para obter mais informações sobre como atualizar uma função para incluir uma entidade confiável ou restringir ainda mais o acesso, consulte Modificar uma função no Guia do usuário do IAM.

(Opcional) Criação de uma política personalizada para acesso ao bucket do S3

A criação de uma política personalizada para acesso ao Amazon S3 é necessária se você usa um endpoint da VPC ou um bucket do S3 próprio nas suas operações do Systems Manager. É possível anexar essa política ao perfil do IAM padrão criado pela configuração de gerenciamento de host padrão ou a um perfil de instância criado no procedimento anterior.

Para obter informações sobre os buckets do S3 gerenciados pela AWS aos quais você fornece acesso na política a seguir, consulte Comunicações do SSM Agent com os buckets do S3 gerenciados pela AWS.

  1. Abra o console do IAM em https://console.aws.amazon.com/iam/.

  2. No painel de navegação, escolha Políticas e, em seguida, Criar política.

  3. Escolha a guia JSON e substitua o texto padrão conforme a seguir.

    { "Version": "2012-10-17", "Statement": [ Footnote callout 1 to explain a line in a JSON policy{ "Effect": "Allow", "Action": "s3:GetObject", "Resource": [ "arn:aws:s3:::aws-ssm-region/*", "arn:aws:s3:::aws-windows-downloads-region/*", "arn:aws:s3:::amazon-ssm-region/*", "arn:aws:s3:::amazon-ssm-packages-region/*", "arn:aws:s3:::region-birdwatcher-prod/*", "arn:aws:s3:::aws-ssm-distributor-file-region/*", "arn:aws:s3:::aws-ssm-document-attachments-region/*", "arn:aws:s3:::patch-baseline-snapshot-region/*" ] }, Footnote callout 2 to explain a line in a JSON policy{ "Effect": "Allow", "Action": [ "s3:GetObject", "s3:PutObject", "s3:PutObjectAcl", Footnote callout 3 to explain a line in a JSON policy "s3:GetEncryptionConfiguration" Footnote callout 4 to explain a line in a JSON policy ], "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket/*", "arn:aws:s3:::amzn-s3-demo-bucket" Footnote callout 5 to explain a line in a JSON policy ] } ] }

    1 O primeiro elemento Statement será necessário somente se você estiver usando um endpoints da VPC.

    2 O segundo elemento, Statement, será necessário somente se você estiver usando um bucket do S3 que você criou para usar em suas operações do Systems Manager.

    3 A permissão PutObjectAcl da lista de controle de acesso será necessária somente se você planeja oferecer suporte ao acesso entre contas para buckets do S3 em outras contas.

    4 O elemento GetEncryptionConfiguration será necessário se o bucket do S3 estiver configurado para usar criptografia.

    5 Se o bucket do S3 estiver configurado para usar criptografia, a raiz do bucket do S3 (por exemplo, arn:aws:s3:::amzn-s3-demo-bucket) deverá estar listada na seção Resource (Recurso). Seu usuário, grupo ou perfil deve ser configurado com acesso ao bucket raiz.

  4. Se você estiver usando um endpoint da VPC em suas operações, faça o seguinte:

    No primeiro elemento Statement, substitua cada espaço reservado região pelo identificador da Região da AWS na qual essa política será usada. Por exemplo, use us-east-2 para a região Leste dos EUA (Ohio). Para ver uma lista dos valores de região com suporte, consulte a coluna Region em Systems Manager service endpoints no Referência geral da Amazon Web Services.

    Importante

    Recomendamos que você evite usar caracteres curinga (*) no lugar das regiões específicas nessa política. Por exemplo, use arn:aws:s3:::aws-ssm-us-east-2/* e não use arn:aws:s3:::aws-ssm-*/*. O uso de curingas pode fornecer acesso a buckets do S3 aos quais você não pretende conceder acesso. Se você quiser usar o perfil de instância para mais de uma região, recomendamos repetir o primeiro elemento Statement para cada região.

    - ou -

    Se não estiver usando um endpoint da VPC em suas operações, você poderá excluir o primeiro elemento Statement.

  5. Se você estiver usando um bucket do S3 de sua propriedade em suas operações do Systems Manager, faça o seguinte:

    No segundo elemento Statement, substitua amzn-s3-demo-bucket pelo nome de um bucket do S3 em sua conta. Você usará esse bucket para suas operações do Systems Manager. Ele fornecerá permissão para objetos no bucket, usando "arn:aws:s3:::my-bucket-name/*" como o recurso. Para obter mais informações sobre como fornecer permissões para buckets ou objetos em buckets, consulte o tópico Ações do Amazon S3 no Guia do usuário do Amazon Simple Storage Service e a postagem do blog da AWS IAM Policies and Bucket Policies and ACLs! (Políticas de buckets e do IAM e ACLs!). Nossa! (Controlar o acesso aos recursos do S3).

    nota

    Se você usar mais de um bucket, forneça o ARN de cada um. Veja o exemplo a seguir sobre permissões em buckets.

    "Resource": [ "arn:aws:s3:::amzn-s3-demo-bucket1/*", "arn:aws:s3:::amzn-s3-demo-bucket2/*" ]

    - ou -

    Se não estiver usando um bucket do S3 de sua propriedade em suas operações do Systems Manager, você poderá excluir o segundo elemento Statement.

  6. Escolha Próximo: etiquetas.

  7. (Opcional) Adicione tags escolhendo Add tag (Adicionar tag) e inserindo as tags preferenciais para a política.

  8. Selecione Next: Review (Próximo: revisar).

  9. Em Name (Nome), insira um nome para identificar essa política, como SSMInstanceProfileS3Policy.

  10. Escolha Criar política.

Considerações de política adicionais para instâncias gerenciadas

Esta seção descreve algumas das políticas que você pode adicionar ao perfil do IAM padrão criado pela configuração de gerenciamento de host padrão ou seus perfis de instância para o AWS Systems Manager. Para fornecer permissões para a comunicação entre instâncias e a API do Systems Manager, recomendamos criar políticas personalizadas que reflitam as necessidades do sistema e os requisitos de segurança. Dependendo do seu plano de operações, você pode precisar de permissões representadas em uma ou mais das outras políticas.

Política: AmazonSSMDirectoryServiceAccess

Obrigatória somente se você planejar incluir instâncias do Amazon EC2 para Windows Server em um diretório do Microsoft AD.

Essa política gerenciada da AWS permite que o SSM Agent acesse o AWS Directory Service em seu nome para solicitações para ingressar no domínio pela instância gerenciada. Para obter mais informações, consulte Integrar-se facilmente a uma instância do Windows EC2 no Guia de administração do AWS Directory Service.

Política: CloudWatchAgentServerPolicy

Exigido apenas se você planeja instalar e executar o agente CloudWatch em suas instâncias para ler dados métricos e de logs em uma instância e gravá-los no Amazon CloudWatch. Eles ajudam você a monitorar, analisar e responder rapidamente a problemas ou alterações em seus recursos da AWS.

Seu perfil do IAM padrão criado pela configuração de gerenciamento de host padrão ou o perfil de instância precisa dessa política somente se você pretende usar recursos como o Amazon EventBridge ou o Amazon CloudWatch Logs. (Você também pode criar uma política mais restritiva que, por exemplo, limita o acesso à gravação a um determinado fluxo de logs do CloudWatch Logs.)

nota

O uso dos recursos do EventBridge e do CloudWatch Logs é opcional. Contudo, recomendamos configurá-los no início do seu processo de configuração do Systems Manager caso tenha decidido usá-los. Para obter mais informações, consulte o Guia do usuário do Amazon EventBridge e o Guia do usuário do Amazon CloudWatch Logs.

Para criar políticas do IAM com permissões para funcionalidades adicionais do Systems Manager, consulte os recursos a seguir:

Anexe o perfil de instância do Systems Manager a uma instância (console)

O procedimento a seguir descreve como anexar um perfil de instância do IAM a uma instância do Amazon EC2 usando o console do Amazon EC2.

  1. Faça login no AWS Management Console e abra o console do Amazon EC2 em https://console.aws.amazon.com/ec2/.

  2. No painel de navegação, em Instâncias, escolha Instâncias.

  3. Navegue até a lista e escolha a instância do EC2 na lista.

  4. No menu Actions (Açõeescolha s), Security (Segurança), Modify IAM role (Modificar função do IAM).

  5. Em IAM role (Função do IAM), selecione o perfil da instância que você criou usando o procedimento em Configuração alternativa para permissões de instâncias do EC2.

  6. Escolha Update IAM role (Atualizar perfil do IAM).

Para obter mais informações sobre como anexar funções do IAM a instâncias, escolha uma das seguintes opções, dependendo do tipo de sistema operacional selecionado:

Avance para Melhorar a segurança das instâncias do EC2 usando endpoints da VPC para o Systems Manager.