AWSSupport-ResetLinuxUserPassword - AWS Systems Manager 자동화 런북 참조

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

AWSSupport-ResetLinuxUserPassword

설명

AWSSupport-ResetLinuxUserPassword 실행서는 로컬 운영 체제(OS) 사용자의 암호를 재설정하는 데 도움이 됩니다. 이 실행서는 직렬 콘솔을 사용하여 Amazon Elastic Compute Cloud(Amazon EC2) 인스턴스에 액세스해야 하는 사용자에게 특히 유용합니다. Runbook은 AWS 계정 사용자 및 AWS Identity and Access Management (IAM) 역할에 임시 Amazon EC2 인스턴스를 생성하고 암호가 포함된 비밀 값을 검색할 수 있는 권한을 AWS Secrets Manager 갖습니다.

실행서는 대상 Amazon EC2 인스턴스를 중지하고, 루트 Amazon Elastic Block Store(Amazon EBS) 볼륨을 분리하고, 이를 임시 Amazon EC2 인스턴스에 연결합니다. Run Command를 사용하면, 임시 인스턴스에서 스크립트가 실행되어 지정한 OS 사용자의 암호를 설정합니다. 그러면, 루트 Amazon EBS 볼륨이 대상 인스턴스에 다시 연결됩니다. 실행서는 또한 자동화를 시작할 때 루트 볼륨의 스냅샷을 생성하는 옵션도 제공합니다.

시작하기 전에

OS 사용자에게 할당하려는 암호 값을 사용하여 Secrets Manager 보안 암호를 생성합니다. 값은 일반 텍스트여야 합니다. 자세한 정보는 AWS Secrets Manager 사용 설명서의 AWS Secrets Manager 보안 암호 생성을 참조하세요.

고려 사항

  • 이 실행서를 사용하기 전에 인스턴스를 백업해 두는 것이 좋습니다. CreateSnapshot 파라미터 값을 Yes로 설정하는 것을 고려해 보세요.

  • 로컬 사용자 암호를 변경하려면 실행서에서 인스턴스를 중지해야 합니다. 인스턴스가 중지되면, 메모리 또는 인스턴스 스토어 볼륨에 저장된 데이터가 손실됩니다. 또한, 자동으로 할당된 임의의 퍼블릭 IPv4 주소가 해제됩니다. 인스턴스를 중지할 때 발생하는 상황에 대한 자세한 내용은 Amazon EC2 사용 설명서의 인스턴스 중지 및 시작을 참조하십시오.

  • 대상 Amazon EC2 인스턴스에 연결된 Amazon EBS 볼륨이 고객 AWS Key Management Service 관리AWS KMS() 키로 암호화된 경우, 키가 암호화되지 않았는지 확인하십시오 AWS KMS . 그렇지 않으면 인스턴스가 deleted 시작되지 않습니다disabled.

이 자동화 실행(콘솔)

문서 유형

자동화

소유자

Amazon

플랫폼

Linux

Parameters

  • AutomationAssumeRole

    타입: 문자열

    설명: (선택 사항) 사용자를 대신하여 Systems Manager Automation을 통해 작업을 수행할 수 있도록 허용하는 AWS Identity and Access Management (IAM) 역할의 Amazon 리소스 이름(ARN)입니다. 역할을 지정하지 않은 경우, Systems Manager Automation에서는 이 실행서를 시작하는 사용자의 권한을 사용합니다.

  • InstanceId

    타입: 문자열

    설명: (필수) 재설정하려는 OS 사용자 암호가 포함된 Amazon EC2 Linux 인스턴스의 ID입니다.

  • LinuxUser이름

    타입: 문자열

    기본값: ec2-user

    설명: (선택 사항) 재설정하려는 암호가 있는 OS 사용자 계정입니다.

  • SecretArn

    타입: 문자열

    설명: (필수) 새 암호가 포함된 Secrets Manager 보안 암호의 ARN입니다.

  • SecurityGroup아이디

    타입: 문자열

    설명: (선택 사항) 임시 Amazon EC2 인스턴스에 연결할 보안 그룹의 ID입니다. 이 파라미터에 대한 값을 제공하지 않으면 기본 Amazon Virtual Private Cloud(Amazon VPC) 보안 그룹이 사용됩니다.

  • SubnetId

    타입: 문자열

    설명: (선택 사항) Amazon EC2 임시 인스턴스를 시작하려는 서브넷의 ID입니다. 기본적으로, 자동화는 대상 인스턴스와 동일한 서브넷을 선택합니다. 다른 서브넷을 제공하려면, 대상 인스턴스와 동일한 가용 영역에 있고 Systems Manager 엔드포인트에 액세스할 수 있어야 합니다.

  • CreateSnapshot

    타입: 문자열

    유효한 값: Yes | No

    기본값: Yes

    설명: (선택 사항) 자동화가 실행되기 전에 대상 Amazon EC2 인스턴스의 루트 볼륨 스냅샷을 생성할지 여부를 결정합니다.

  • StopConsent

    타입: 문자열

    유효한 값: Yes | No

    기본값: 아니요

    설명: Yes을 입력하여 이 자동화 중에 대상 Amazon EC2 인스턴스가 중지된다는 것을 확인합니다. Amazon EC2 인스턴스가 중지되면, 메모리 또는 인스턴스 스토어 볼륨에 저장된 모든 데이터가 손실되고 자동 퍼블릭 IPv4 주소가 해제됩니다. 자세한 내용은 Amazon EC2 사용 설명서인스턴스 중지 및 시작을 참조하세요.

필수 IAM 권한

실행서를 성공적으로 사용하려면 AutomationAssumeRole 파라미터에 다음 작업이 필요합니다.

  • 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

문서 단계

  1. aws:branch - 대상 Amazon EC2 인스턴스 중지에 대한 동의 여부를 기반으로 분기합니다.

  2. aws:assertAwsResourceProperty은 Amazon EC2 인스턴스 상태가 running 또는 stopped 상태인지 확인합니다. 그렇지 않으면, 자동화가 종료됩니다.

  3. aws:executeAwsApi은 Amazon EC2 인스턴스 속성을 가져옵니다.

  4. aws:executeAwsApi은 루트 볼륨 속성을 가져옵니다.

  5. aws:branch은 임시 Amazon EC2 인스턴스에 대한 서브넷 ID가 제공되었는지 여부에 따라 자동화를 분기합니다.

  6. aws:assertAwsResourcePropertySubnetId 파라미터에서 사용자가 지정하는 서브넷이 대상 Amazon EC2 인스턴스와 동일한 가용 영역에 있는지 확인합니다.

  7. aws:assertAwsResourceProperty은 대상 Amazon EC2 인스턴스 루트 볼륨이 Amazon EBS 볼륨인지 확인합니다.

  8. aws:assertAwsResourceProperty은 Amazon EC2 인스턴스 아키텍처가 arm64 또는 x86_64인지 확인합니다.

  9. aws:assertAwsResourceProperty은 Amazon EC2 인스턴스 종료 동작이 terminate이 아닌 stop인지 확인합니다.

  10. aws:branch은 Amazon EC2 인스턴스가 스팟 인스턴스가 아닌지 확인합니다. 그렇지 않으면, 자동화가 종료됩니다.

  11. aws:executeScript은 Amazon EC2 인스턴스가 Auto Scaling 그룹의 일부가 아닌지 확인합니다. 인스턴스가 Auto Scaling 그룹의 일부인 경우, 자동화는 Amazon EC2 인스턴스가 Standby 수명 주기 상태에 있음을 확인합니다.

  12. aws:createStack은 지정한 OS 사용자의 암호를 재설정하는 데 사용되는 임시 Amazon EC2 인스턴스를 생성합니다.

  13. aws:waitForAwsResourceProperty은 새로 시작한 임시 Amazon EC2 인스턴스가 실행될 때까지 기다립니다.

  14. aws:executeAwsApi은 임시 Amazon EC2 인스턴스의 ID를 가져옵니다.

  15. aws:waitForAwsResourceProperty은 임시 Amazon EC2 인스턴스가 Systems Manager에서 관리하는 것으로 보고할 때까지 기다립니다.

  16. aws:changeInstanceState은 대상 Amazon EC2 인스턴스를 중지합니다.

  17. aws:changeInstanceState은 대상 Amazon EC2 인스턴스가 중지 상태에서 멈추는 경우 이를 강제로 중지합니다.

  18. aws:branch은 대상 Amazon EC2 인스턴스의 루트 볼륨 스냅샷이 요청되었는지 여부에 따라 자동화를 분기합니다.

  19. aws:executeAwsApi은 대상 Amazon EC2 인스턴스 루트 Amazon EBS 볼륨의 스냅샷을 생성합니다.

  20. aws:waitForAwsResourceProperty은 스냅샷이 completed 상태가 될 때까지 기다립니다.

  21. aws:executeAwsApi은 대상 Amazon EC2 인스턴스에서 Amazon EBS 루트 볼륨을 분리합니다.

  22. aws:waitForAwsResourceProperty은 Amazon EBS 루트 볼륨이 대상 Amazon EC2 인스턴스에서 분리될 때까지 기다립니다.

  23. aws:executeAwsApi은 루트 Amazon EBS 볼륨을 임시 Amazon EC2 인스턴스에 연결합니다.

  24. aws:waitForAwsResourceProperty은 Amazon EBS 루트 볼륨이 임시 Amazon EC2 인스턴스에 연결될 때까지 기다립니다.

  25. aws:runCommand은 임시 Amazon EC2 인스턴스에서 Run Command를 사용한 쉘 스크립트를 실행함으로써 대상 사용자 암호를 재설정합니다.

  26. aws:executeAwsApi은 임시 Amazon EC2 인스턴스에서 Amazon EBS 루트 볼륨을 분리합니다.

  27. aws:waitForAwsResourceProperty은 Amazon EBS 루트 볼륨이 임시 Amazon EC2 인스턴스에서 분리될 때까지 기다립니다.

  28. aws:executeAwsApi은 오류가 발생한 후에 임시 Amazon EC2 인스턴스에서 Amazon EBS 루트 볼륨을 분리합니다.

  29. aws:waitForAwsResourceProperty은 오류가 발생한 후에 Amazon EBS 루트 볼륨이 임시 Amazon EC2 인스턴스에서 분리될 때까지 기다립니다.

  30. aws:branch은 오류 발생 시 복구 경로를 확인하기 위해 루트 볼륨의 스냅샷을 요청했는지 여부에 따라 자동화를 분기합니다.

  31. aws:executeAwsApi은 루트 Amazon EBS 볼륨을 대상 Amazon EC2 인스턴스에 다시 연결합니다.

  32. aws:waitForAwsResourceProperty은 Amazon EBS 루트 볼륨이 Amazon EC2 인스턴스에 연결될 때까지 기다립니다.

  33. aws:executeAwsApi은 대상 Amazon EC2 인스턴스 루트 볼륨 스냅샷에서 새 Amazon EBS 볼륨을 생성합니다.

  34. aws:waitForAwsResourceProperty은 새 Amazon EBS 볼륨이 available 상태가 될 때까지 기다립니다.

  35. aws:executeAwsApi은 새 Amazon EBS 볼륨을 대상 인스턴스에 루트 볼륨으로 연결합니다.

  36. aws:waitForAwsResourceProperty은 Amazon EBS 볼륨이 attached 상태가 될 때까지 기다립니다.

  37. aws:executeAwsApi런북이 AWS CloudFormation 스택을 생성하거나 업데이트하지 못하는 경우의 AWS CloudFormation 스택 이벤트를 설명합니다.

  38. aws:branch은 이전 Amazon EC2 인스턴스 상태에 따라 자동화를 분기합니다. 상태가 running이면, 인스턴스가 시작됩니다. 인스턴스가 stopped 상태였다면, 자동화는 계속됩니다.

  39. aws:changeInstanceState은 필요한 경우 Amazon EC2 인스턴스를 시작합니다.

  40. aws:waitForAwsResourceProperty AWS CloudFormation 스택이 터미널 상태가 될 때까지 기다린 후 삭제합니다.

  41. aws:executeAwsApi임시 Amazon EC2 인스턴스를 포함한 AWS CloudFormation 스택을 삭제합니다.