AWSSupport-ResetLinuxUserPassword - AWS Systems Manager Referência do Automation Runbook

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

AWSSupport-ResetLinuxUserPassword

Descrição

O runbook AWSSupport-ResetLinuxUserPassword ajuda você a redefinir a senha de um usuário do sistema operacional (SO) local. Este runbook é especialmente útil para usuários que precisam acessar as instâncias do Amazon Elastic Compute Cloud (Amazon EC2) usando o console serial. O runbook cria uma instância temporária do Amazon EC2 em Conta da AWS você com uma função AWS Identity and Access Management gerada automaticamente (IAM) ou um perfil de instância IAM personalizado que você especifica. O perfil da instância personalizada (IAM) precisa ter permissões para recuperar o valor AWS Secrets Manager secreto que contém a senha.

O runbook interrompe a instância do Amazon EC2 de destino, separa o volume raiz do Amazon Elastic Block Store (Amazon EBS) e o anexa à instância temporária do Amazon EC2. Usando o comando Executar, um script é executado na instância temporária para definir a senha do usuário do sistema operacional que você especificar. Em seguida, o volume raiz do Amazon EBS é reconectado à sua instância de destino. O runbook também oferece uma opção para criar um snapshot do volume raiz no início da automação.

Antes de começar

Crie um segredo do Secrets Manager com o valor da senha que você deseja atribuir ao usuário do sistema operacional. O valor deve estar em texto sem formatação. Para obter mais informações, consulte Criar um AWS Secrets Manager segredo no Guia do usuário AWS Secrets Manager .

Considerações

  • Recomendamos fazer backup da sua instância antes de usar este runbook. Considere definir o valor do parâmetro CreateSnapshot como Yes.

  • A alteração da senha do usuário local exige que o runbook interrompa sua instância. Quando uma instância é interrompida, os dados armazenados na memória ou nos volumes de armazenamento da instância são perdidos. Além disso, todos os IPv4 endereços públicos atribuídos automaticamente são liberados. Para obter mais informações sobre o que acontece quando você interrompe uma instância, consulte Pare e inicie sua instância no Guia do usuário do Amazon EC2.

  • Se os volumes do Amazon EBS anexados à sua instância de destino do Amazon EC2 forem criptografados com uma chave AWS Key Management Service gerenciada pelo cliente AWS KMS(), certifique-se de que AWS KMS a chave deleted não seja disabled ou sua instância não iniciará.

  • O uso de um perfil de instância do IAM personalizado exige AutomationAssumeRole a GetInstanceProfile permissão do IAM para validação, e o próprio perfil de instância personalizado deve incluir as permissões de acesso do Systems Manager e do Secrets Manager. O runbook valida antecipadamente a existência do perfil da instância, mas falhará durante as operações da instância auxiliar se o perfil da instância não tiver o acesso necessário.

Executar esta automação (console)

Tipo de documento

Automação

Proprietário

Amazon

Plataformas

Linux

Parâmetros

  • AutomationAssumeRole

    Tipo: String

    Descrição: (opcional) o nome do recurso da Amazon (ARN) do perfil do AWS Identity and Access Management (IAM) que permite que o Systems Manager Automation realize ações em seu nome. Se nenhum perfil for especificado, o Systems Manager Automation usa as permissões do usuário que inicia este runbook.

  • InstanceId

    Tipo: string

    Descrição: (obrigatório) o ID da instância Linux do Amazon EC2 que contém a senha de usuário do OS que você deseja redefinir.

  • LinuxUserName

    Tipo: string

    Padrão: ec2-user

    Descrição: (opcional) a conta de usuário do sistema operacional cuja senha você deseja redefinir.

  • SecretArn

    Tipo: string

    Descrição: (obrigatório) o ARN do segredo do Secrets Manager contendo a nova senha.

  • SecurityGroupId

    Tipo: string

    Descrição: (opcional) o ID do grupo de segurança a ser anexado a uma instância temporária do Amazon EC2. Se você não fornecer um valor para esse parâmetro, o grupo de segurança padrão da Amazon Virtual Private Cloud (Amazon VPC) é usado.

  • SubnetId

    Tipo: string

    Descrição: (opcional) o ID da sub-rede na qual você deseja iniciar a instância temporária do Amazon EC2. Por padrão, a automação escolhe a mesma sub-rede da sua instância de destino. Se você optar por fornecer uma sub-rede diferente, ela deve estar na mesma zona de disponibilidade da instância de destino e ter acesso aos endpoints do Systems Manager.

  • CreateSnapshot

    Tipo: string

    Valores válidos: sim | não

    Padrão: sim

    Descrição: (opcional) determina se um snapshot do volume raiz da sua instância de destino do Amazon EC2 é criado antes da execução da automação.

  • StopConsent

    Tipo: string

    Valores válidos: sim | não

    Padrão: não

    Descrição: Digite Yes para confirmar que sua instância de destino do Amazon EC2 será interrompida durante essa automação. Quando a instância do Amazon EC2 é interrompida, todos os dados armazenados na memória ou nos volumes de armazenamento da instância são perdidos e o IPv4 endereço público automático é liberado. Para obter mais informações, consulte Encerrar e iniciar sua instância no Guia do Usuário do Amazon EC2.

  • InstanceProfileName

    Tipo: string

    Descrição: (Opcional) O nome do perfil da instância do IAM a ser anexado à instância auxiliar do Amazon EC2. Se não for fornecido, um perfil de instância temporário com as permissões necessárias será criado automaticamente. O perfil de instância personalizado deve ter permissões para acessar o segredo do Secrets Manager e o Systems Manager especificados.

Permissões obrigatórias do IAM

O parâmetro AutomationAssumeRole requer as seguintes ações para usar o runbook com êxito.

  • ssm:DescribeInstanceInformation

  • ssm:ListTagsForResource

  • ssm:SendCommand

  • ec2:AttachVolume

  • ec2:CreateSnapshot

  • ec2:CreateSnapshots

  • ec2:CreateVolume

  • ec2:DescribeImages

  • ec2:DescribeInstances

  • ec2:DescribeInstanceStatus

  • ec2:DescribeSnapshotAttribute

  • ec2:DescribeSnapshots

  • ec2:DescribeSnapshotTierStatus

  • ec2:DescribeVolumes

  • ec2:DescribeVolumeStatus

  • ec2:DetachVolume

  • ec2:RunInstances

  • ec2:StartInstances

  • ec2:StopInstances

  • ec2:TerminateInstances

  • cloudformation:CreateStack

  • cloudformation:DeleteStack

  • cloudformation:DescribeStackResource

  • cloudformation:DescribeStacks

  • cloudformation:ListStacks

  • logs:CreateLogDelivery

  • logs:CreateLogGroup

  • logs:DeleteLogDelivery

  • logs:DeleteLogGroup

  • logs:DescribeLogGroups

  • logs:DescribeLogStreams

  • logs:PutLogEvents

  • iam:GetInstanceProfile

Etapas do documento

  1. aws:branch: ramifica com base no seu fornecimento de consentimento para interromper a instância de destino do Amazon EC2.

  2. aws:assertAwsResourceProperty— Garante que o status da instância do Amazon EC2 esteja em um estado running oustopped. Caso contrário, a automação termina.

  3. aws:executeAwsApi— Obtém as propriedades da instância Amazon EC2.

  4. aws:executeAwsApi— Obtém as propriedades do volume raiz.

  5. aws:branch— Ramifica a automação dependendo se um ID de sub-rede para a instância temporária do Amazon EC2 foi fornecido.

  6. aws:assertAwsResourceProperty— Garante que a sub-rede que você especifica no SubnetId parâmetro esteja na mesma zona de disponibilidade da instância de destino do Amazon EC2.

  7. aws:assertAwsResourceProperty— Garante que o volume raiz da instância do Amazon EC2 de destino seja um volume do Amazon EBS.

  8. aws:assertAwsResourceProperty— Garante que a arquitetura da instância do Amazon EC2 seja arm64 ou. x86_64

  9. aws:assertAwsResourceProperty— Garante que o comportamento de desligamento da instância Amazon EC2 seja stop ou não. terminate

  10. aws:branch— Garante que a instância do Amazon EC2 não seja uma instância spot. Caso contrário, a automação termina.

  11. aws:executeScript— Garante que a instância do Amazon EC2 não faça parte de um grupo de auto scaling. Se a instância fizer parte de um grupo do Auto Scaling, a automação confirma que a instância do Amazon EC2 está em um estado de ciclo de vida Standby.

  12. aws:branch— Ramifica a automação dependendo se um nome de perfil de instância do IAM personalizado foi fornecido ou não

  13. aws:assertAwsResourceProperty— Garante que o perfil personalizado da instância do IAM exista e valida se o nome corresponde ao parâmetro de entrada.

  14. aws:createStack— Cria uma instância temporária do Amazon EC2 que é usada para redefinir a senha do usuário do sistema operacional que você especificar.

  15. aws:waitForAwsResourceProperty— Espera até que a instância temporária recém-lançada do Amazon EC2 esteja em execução.

  16. aws:executeAwsApi— Obtém o ID da instância temporária do Amazon EC2.

  17. aws:waitForAwsResourceProperty— Espera que a instância temporária do Amazon EC2 seja reportada conforme gerenciada pelo Systems Manager.

  18. aws:changeInstanceState— Interrompe a instância alvo do Amazon EC2.

  19. aws:changeInstanceState— Força a instância de destino do Amazon EC2 a parar caso ela fique presa em um estado de parada.

  20. aws:branch— Ramifica a automação dependendo se um snapshot do volume raiz da instância alvo do Amazon EC2 foi solicitado.

  21. aws:executeAwsApi— Cria um snapshot do volume raiz da instância de destino do Amazon EC2 do Amazon EBS.

  22. aws:waitForAwsResourceProperty— Espera que o instantâneo esteja em um completed estado.

  23. aws:executeAwsApi— Separa o volume raiz do Amazon EBS da instância de destino do Amazon EC2.

  24. aws:waitForAwsResourceProperty— Espera que o volume raiz do Amazon EBS seja separado da instância de destino do Amazon EC2.

  25. aws:executeAwsApi— Anexa o volume raiz do Amazon EBS à instância temporária do Amazon EC2.

  26. aws:waitForAwsResourceProperty— Espera que o volume raiz do Amazon EBS seja anexado à instância temporária do Amazon EC2.

  27. aws:runCommand— Redefine a senha do usuário de destino executando um script de shell usando Run Command na instância temporária do Amazon EC2.

  28. aws:executeAwsApi— Separa o volume raiz do Amazon EBS da instância temporária do Amazon EC2.

  29. aws:waitForAwsResourceProperty— Espera que o volume raiz do Amazon EBS seja separado da instância temporária do Amazon EC2.

  30. aws:executeAwsApi— Separa o volume raiz do Amazon EBS da instância temporária do Amazon EC2 após um erro.

  31. aws:waitForAwsResourceProperty— Espera que o volume raiz do Amazon EBS seja separado da instância temporária do Amazon EC2 após um erro.

  32. aws:branch— Ramifica a automação dependendo se um instantâneo do volume raiz foi solicitado para determinar o caminho de recuperação em caso de erro.

  33. aws:executeAwsApi— Reconecta o volume raiz do Amazon EBS à instância de destino do Amazon EC2.

  34. aws:waitForAwsResourceProperty— Espera que o volume raiz do Amazon EBS seja anexado à instância do Amazon EC2.

  35. aws:executeAwsApi— Cria um novo volume do Amazon EBS a partir do snapshot do volume raiz da instância de destino do Amazon EC2.

  36. aws:waitForAwsResourceProperty— Espera até que o novo volume do Amazon EBS esteja em um available estado.

  37. aws:executeAwsApi— Anexa o novo volume do Amazon EBS à instância de destino como volume raiz.

  38. aws:waitForAwsResourceProperty— Espera que o volume do Amazon EBS esteja em um attached estado.

  39. aws:executeAwsApi— Descreve os eventos da CloudFormation pilha se os runbooks falharem em criar ou atualizar a CloudFormation pilha.

  40. aws:branch— Ramifica a automação de acordo com o estado anterior da instância do Amazon EC2. Se o estado foi running, a instância será iniciada. Se estivesse em um estado stopped, a automação continua.

  41. aws:changeInstanceState— Inicia a instância do Amazon EC2, se necessário.

  42. aws:waitForAwsResourceProperty— Espera até que a CloudFormation pilha esteja em um status de terminal antes de excluí-la.

  43. aws:executeAwsApi— Exclui a CloudFormation pilha, incluindo a instância temporária do Amazon EC2.