View a markdown version of this page

AWSSupport-ResetLinuxUserPassword - AWS Systems Manager Referensi Buku Runbook Otomasi

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

AWSSupport-ResetLinuxUserPassword

Deskripsi

AWSSupport-ResetLinuxUserPasswordRunbook membantu Anda mengatur ulang kata sandi pengguna sistem operasi lokal (OS). Runbook ini sangat membantu bagi pengguna yang perlu mengakses instans Amazon Elastic Compute Cloud (Amazon EC2) mereka menggunakan konsol serial. Runbook membuat instans Amazon EC2 sementara di Akun AWS Anda dengan peran yang AWS Identity and Access Management dibuat secara otomatis (IAM) atau profil instans IAM kustom yang Anda tentukan. Profil instans kustom (IAM) harus memiliki izin untuk mengambil nilai AWS Secrets Manager rahasia yang berisi kata sandi.

Runbook menghentikan instans Amazon EC2 target Anda, melepaskan volume root Amazon Elastic Block Store (Amazon EBS) Elastic Block Store (Amazon EBS), dan menempelkannya ke instans Amazon EC2 sementara. Menggunakan Run Command, skrip berjalan pada instance sementara untuk mengatur kata sandi pengguna OS yang Anda tentukan. Kemudian, volume root Amazon EBS disambungkan kembali ke instans target Anda. Runbook juga menyediakan opsi untuk membuat snapshot volume root di awal otomatisasi.

Sebelum Anda memulai

Buat rahasia Secrets Manager dengan nilai kata sandi yang ingin Anda tetapkan ke pengguna OS Anda. Nilai harus dalam plaintext. Untuk informasi selengkapnya, lihat Membuat AWS Secrets Manager rahasia di Panduan AWS Secrets Manager Pengguna.

Pertimbangan-pertimbangan

  • Kami merekomendasikan untuk membuat cadangan instance Anda sebelum menggunakan runbook ini. Pertimbangkan untuk mengatur nilai CreateSnapshot parameter sebagaiYes.

  • Mengubah kata sandi pengguna lokal memerlukan runbook untuk menghentikan instance Anda. Ketika sebuah instance dihentikan, data apa pun yang disimpan dalam memori atau pada volume penyimpanan instance hilang. Juga, setiap IPv4 alamat publik yang ditetapkan secara otomatis akan dirilis. Untuk informasi selengkapnya tentang apa yang terjadi saat Anda menghentikan instans, lihat Menghentikan dan memulai instans Anda di Panduan Pengguna Amazon EC2.

  • Jika volume Amazon EBS yang dilampirkan ke instans Amazon EC2 target Anda dienkripsi dengan kunci AWS Key Management Service terkelola pelanggan AWS KMS(), pastikan AWS KMS kuncinya deleted tidak disabled atau instans Anda akan gagal untuk memulai.

  • Menggunakan profil instans IAM kustom memerlukan GetInstanceProfile izin IAM AutomationAssumeRole untuk validasi, dan profil instans kustom itu sendiri harus menyertakan izin akses Systems Manager dan Secrets Manager. Runbook memvalidasi keberadaan profil instance di muka tetapi akan gagal selama operasi instance helper jika profil instance tidak memiliki akses yang diperlukan.

Jalankan Otomasi ini (konsol)

Jenis dokumen

Otomatisasi

Pemilik

Amazon

Platform

Linux

Parameter

  • AutomationAssumeRole

    Tipe: String

    Deskripsi: (Opsional) Nama Sumber Daya Amazon (ARN) peran AWS Identity and Access Management (IAM) yang memungkinkan Otomasi Systems Manager untuk melakukan tindakan atas nama Anda. Jika tidak ada peran yang ditentukan, Systems Manager Automation menggunakan izin pengguna yang memulai runbook ini.

  • InstanceId

    Tipe: String

    Deskripsi: (Wajib) ID instans Amazon EC2 Linux yang berisi kata sandi pengguna OS yang ingin Anda atur ulang.

  • LinuxUserName

    Tipe: String

    Default: ec2-pengguna

    Deskripsi: (Opsional) Akun pengguna OS yang kata sandinya ingin Anda atur ulang.

  • SecretArn

    Tipe: String

    Deskripsi: (Wajib) ARN rahasia Secrets Manager Anda yang berisi kata sandi baru.

  • SecurityGroupId

    Tipe: String

    Deskripsi: (Opsional) ID grup keamanan untuk dilampirkan ke instans Amazon EC2 sementara. Jika Anda tidak memberikan nilai untuk parameter ini, grup keamanan Amazon Virtual Private Cloud (Amazon VPC) default akan digunakan.

  • SubnetId

    Tipe: String

    Deskripsi: (Opsional) ID subnet tempat Anda ingin meluncurkan instans sementara Amazon EC2. Secara default, otomatisasi memilih subnet yang sama dengan instance target Anda. Jika Anda memilih untuk menyediakan subnet yang berbeda, subnet tersebut harus berada di Availability Zone yang sama dengan instance target dan memiliki akses ke endpoint Systems Manager.

  • CreateSnapshot

    Tipe: String

    Nilai yang valid: Ya | Tidak

    Default: Ya

    Deskripsi: (Opsional) Menentukan apakah snapshot volume root instans Amazon EC2 target Anda dibuat sebelum otomatisasi berjalan.

  • StopConsent

    Tipe: String

    Nilai yang valid: Ya | Tidak

    Default: tidak

    Deskripsi: Enter Yes untuk mengetahui bahwa instans Amazon EC2 target Anda akan dihentikan selama otomatisasi ini. Ketika instans Amazon EC2 dihentikan, data apa pun yang disimpan dalam memori atau volume penyimpanan instans akan hilang, dan IPv4 alamat publik otomatis dirilis. Untuk informasi selengkapnya, lihat Menghentikan dan memulai instans Anda di Panduan Pengguna Amazon EC2.

  • InstanceProfileName

    Tipe: String

    Deskripsi: (Opsional) Nama profil instans IAM untuk dilampirkan ke instans Amazon EC2 helper. Jika tidak disediakan, profil instance sementara dengan izin yang diperlukan akan dibuat secara otomatis. Profil instans kustom harus memiliki izin untuk mengakses rahasia Secrets Manager dan Systems Manager yang ditentukan.

Izin IAM yang diperlukan

AutomationAssumeRoleParameter memerlukan tindakan berikut untuk menggunakan runbook dengan sukses.

  • 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

Langkah Dokumen

  1. aws:branch— Cabang berdasarkan apakah Anda telah memberikan persetujuan untuk menghentikan instans Amazon EC2 target.

  2. aws:assertAwsResourceProperty— Memastikan status instans Amazon EC2 dalam status running ataustopped. Jika tidak, otomatisasi berakhir.

  3. aws:executeAwsApi— Mendapatkan properti instans Amazon EC2.

  4. aws:executeAwsApi— Mendapat properti volume root.

  5. aws:branch— Cabang otomatisasi tergantung pada apakah ID subnet untuk instans Amazon EC2 sementara disediakan.

  6. aws:assertAwsResourceProperty— Memastikan subnet yang Anda tentukan dalam SubnetId parameter berada di Availability Zone yang sama dengan instans Amazon EC2 target.

  7. aws:assertAwsResourceProperty— Memastikan target volume root instans Amazon EC2 adalah volume Amazon EBS.

  8. aws:assertAwsResourceProperty— Memastikan arsitektur instans Amazon EC2 adalah arm64 atau. x86_64

  9. aws:assertAwsResourceProperty— Memastikan perilaku shutdown instans Amazon EC2 adalah stop dan tidak. terminate

  10. aws:branch— Memastikan instans Amazon EC2 bukan Instans Spot. Jika tidak, otomatisasi berakhir.

  11. aws:executeScript— Memastikan instans Amazon EC2 bukan bagian dari grup penskalaan otomatis. Jika instans merupakan bagian dari grup penskalaan otomatis, otomatisasi mengonfirmasi instans Amazon EC2 berada dalam status siklus hidupStandby.

  12. aws:branch— Memcabangkan otomatisasi tergantung pada apakah nama profil instans IAM khusus diberikan atau tidak

  13. aws:assertAwsResourceProperty— Memastikan profil instans IAM kustom ada dan memvalidasi namanya cocok dengan parameter input.

  14. aws:createStack— Membuat instans Amazon EC2 sementara yang digunakan untuk mengatur ulang kata sandi untuk pengguna OS yang Anda tentukan.

  15. aws:waitForAwsResourceProperty— Menunggu hingga instans Amazon EC2 sementara yang baru diluncurkan berjalan.

  16. aws:executeAwsApi— Mendapat ID instans Amazon EC2 sementara.

  17. aws:waitForAwsResourceProperty— Menunggu instans Amazon EC2 sementara untuk melaporkan sebagaimana dikelola oleh Systems Manager.

  18. aws:changeInstanceState- Menghentikan instans Amazon EC2 target.

  19. aws:changeInstanceState— Memaksa instans Amazon EC2 target untuk berhenti jika macet dalam keadaan berhenti.

  20. aws:branch— Memcabangkan otomatisasi tergantung pada apakah snapshot volume root instans Amazon EC2 target diminta.

  21. aws:executeAwsApi— Membuat snapshot dari volume root instans Amazon EC2 target Amazon EBS.

  22. aws:waitForAwsResourceProperty— Menunggu snapshot berada dalam keadaan. completed

  23. aws:executeAwsApi— Melepaskan volume root Amazon EBS dari instans Amazon EC2 target.

  24. aws:waitForAwsResourceProperty— Menunggu volume root Amazon EBS terlepas dari instans Amazon EC2 target.

  25. aws:executeAwsApi— Melampirkan volume Amazon EBS root ke instans Amazon EC2 sementara.

  26. aws:waitForAwsResourceProperty— Menunggu volume root Amazon EBS dilampirkan ke instans Amazon EC2 sementara.

  27. aws:runCommand— Mengatur ulang kata sandi pengguna target dengan menjalankan skrip shell menggunakan Run Command pada instance Amazon EC2 sementara.

  28. aws:executeAwsApi— Melepaskan volume root Amazon EBS dari instans Amazon EC2 sementara.

  29. aws:waitForAwsResourceProperty— Menunggu volume root Amazon EBS terlepas dari instans Amazon EC2 sementara.

  30. aws:executeAwsApi— Melepaskan volume root Amazon EBS dari instans Amazon EC2 sementara setelah terjadi kesalahan.

  31. aws:waitForAwsResourceProperty— Menunggu volume root Amazon EBS terlepas dari instans Amazon EC2 sementara setelah kesalahan.

  32. aws:branch— Memcabangkan otomatisasi tergantung pada apakah snapshot volume root diminta untuk menentukan jalur pemulihan jika terjadi kesalahan.

  33. aws:executeAwsApi— Memasang kembali volume Amazon EBS root ke instans Amazon EC2 target.

  34. aws:waitForAwsResourceProperty— Menunggu volume root Amazon EBS dilampirkan ke instans Amazon EC2.

  35. aws:executeAwsApi— Membuat volume Amazon EBS baru dari snapshot volume root instans Amazon EC2 target.

  36. aws:waitForAwsResourceProperty— Menunggu hingga volume Amazon EBS baru dalam keadaan. available

  37. aws:executeAwsApi— Melampirkan volume Amazon EBS baru ke instans target sebagai volume root.

  38. aws:waitForAwsResourceProperty— Menunggu volume Amazon EBS berada dalam keadaan. attached

  39. aws:executeAwsApi— Menjelaskan peristiwa CloudFormation tumpukan jika runbook gagal membuat atau memperbarui CloudFormation tumpukan.

  40. aws:branch— Memcabangkan otomatisasi tergantung pada status instans Amazon EC2 sebelumnya. Jika negara iturunning, instance dimulai. Jika dalam stopped keadaan, otomatisasi berlanjut.

  41. aws:changeInstanceState— Memulai instans Amazon EC2 jika diperlukan.

  42. aws:waitForAwsResourceProperty— Menunggu sampai CloudFormation tumpukan berada dalam status terminal sebelum menghapus.

  43. aws:executeAwsApi— Menghapus CloudFormation tumpukan termasuk instans Amazon EC2 sementara.