AWSSupport-ValidateFSxWindowsADConfig - AWS Systems Manager Referensi buku runbook otomatisasi

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

AWSSupport-ValidateFSxWindowsADConfig

Deskripsi

AWSSupport-ValidateFSxWindowsADConfigRunbook digunakan untuk memvalidasi konfigurasi Active Directory (AD) yang dikelola sendiri dari Amazon FSx untuk Windows File Server

Bagaimana cara kerjanya?

Runbook AWSSupport-ValidateFSxWindowsADConfig mengeksekusi skrip FSx validasi Amazon pada instance Windows Amazon Elastic Compute Cloud (Amazon EC2) sementara yang diluncurkan oleh runbook di subnet Amazon. FSx Skrip melakukan beberapa pemeriksaan untuk memvalidasi konektivitas jaringan ke AD/DNS server yang dikelola sendiri dan izin akun layanan Amazon FSx . Runbook dapat memvalidasi Amazon FSx yang gagal atau salah dikonfigurasi untuk Windows File Server atau membuat FSx Amazon baru untuk Windows File Server dengan AD yang dikelola sendiri.

Secara default, runbook membuat instans Amazon EC2 Windows, grup keamanan untuk akses AWS Systems Manager (SSM), peran AWS Identity and Access Management (IAM), dan kebijakan yang digunakan AWS CloudFormation di subnet Amazon. FSx Jika Anda ingin menjalankan skrip pada EC2 instance Amazon yang ada, berikan ID dalam parameterInstanceId. Pada eksekusi yang berhasil, ia menghapus CloudFormation sumber daya. Namun, untuk mempertahankan sumber daya, atur RetainCloudFormationStack parameter ketrue.

CloudFormation Template membuat peran IAM atas nama Anda dengan izin yang diperlukan untuk dilampirkan ke EC2 instans Amazon untuk menjalankan skrip FSx validasi Amazon. Untuk menentukan profil instans IAM yang ada untuk instance sementara, gunakan InstanceProfileName parameter. Peran IAM terkait harus berisi izin berikut:

  • ec2:DescribeSubnetsdan ec2:DescribeVpcs izin serta Kebijakan AmazonSSMManagedInstanceCore Terkelola Amazon.

  • Izin untuk mendapatkan nama pengguna dan kata sandi akun FSx layanan Amazon dari Systems Manager dengan memanggil GetSecretValue API.

  • Izin untuk menempatkan objek di bucket Amazon Simple Storage Service (Amazon S3) Simple Storage S3) untuk output skrip.

Prasyarat

Subnet tempat EC2 instans Amazon sementara dibuat (atau instance yang ada yang disediakan dalam InstanceId parameter) harus mengizinkan akses ke titik akhir AWS Systems Manager, AWS Secrets Manager, dan Amazon S3 untuk menjalankan skrip menggunakan SSM Run AmazonFSxADValidation Command.

AWS Secrets Manager penyiapan

Skrip validasi terhubung ke domain Microsoft AD dengan mengambil nama pengguna dan kata sandi akun FSx layanan Amazon dengan panggilan runtime ke Secrets Manager. Ikuti langkah-langkah di Buat AWS Secrets Manager rahasia untuk membuat rahasia Secrets Manager baru. Pastikan nama pengguna dan kata sandi disimpan menggunakan key/value pasangan dalam format{"username":"EXAMPLE-USER","password":"EXAMPLE-PASSWORD"}". Lihat Otentikasi dan kontrol akses AWS Secrets Manager untuk informasi tentang mengamankan akses ke rahasia.

Untuk informasi lebih lanjut tentang alat ini, lihat README.md file TROUBLESHOOTING.md dan file di FSx ADValidation file Amazon.

Eksekusi Runbook

Jalankan runbook dengan parameter FSx ID Amazon atau AD. Berikut ini adalah alur kerja runbook:

  • Mendapat parameter dari FSx ID Amazon atau menggunakan parameter AD input.

  • Membuat instance Amazon EC2 Windows validasi sementara di FSx subnet Amazon, grup keamanan untuk akses SSM, peran dan kebijakan IAM (bersyarat) menggunakan. CloudFormation Jika InstanceId parameter ditentukan, itu digunakan.

  • Mengunduh dan mengeksekusi skrip validasi pada EC2 instans Amazon target di subnet FSx utama Amazon.

  • Menyediakan kode hasil validasi AD dalam output otomatisasi. Selain itu, output skrip lengkap diunggah ke bucket Amazon S3.

Jalankan Otomasi ini (konsol)

Jenis dokumen

Otomatisasi

Pemilik

Amazon

Platform

Windows

Parameter

Izin IAM yang diperlukan

AutomationAssumeRoleParameter memerlukan tindakan berikut untuk menggunakan runbook dengan sukses.

  • cloudformation:CreateStack

  • cloudformation:DeleteStack

  • cloudformation:DescribeStacks

  • cloudformation:DescribeStackResources

  • cloudformation:DescribeStackEvents

  • ec2:CreateTags

  • ec2:RunInstances

  • ec2:TerminateInstances

  • ec2:CreateLaunchTemplate

  • ec2:DeleteLaunchTemplate

  • ec2:DescribeSubnets

  • ec2:DescribeSecurityGroups

  • ec2:DescribeImages

  • ec2:DescribeInstances

  • ec2:DescribeLaunchTemplates

  • ec2:DescribeLaunchTemplateVersions

  • ec2:CreateSecurityGroup

  • ec2:DeleteSecurityGroup

  • ec2:RevokeSecurityGroupEgress

  • ec2:AuthorizeSecurityGroupEgress

  • iam:CreateRole

  • iam:CreateInstanceProfile

  • iam:GetInstanceProfile

  • iam:getRolePolicy

  • iam:DeleteRole

  • iam:DeleteInstanceProfile

  • iam:AddRoleToInstanceProfile

  • iam:RemoveRoleFromInstanceProfile

  • iam:AttachRolePolicy

  • iam:DetachRolePolicy

  • iam:PutRolePolicy

  • iam:DeleteRolePolicy

  • iam:GetRole

  • iam:PassRole

  • ssm:SendCommand

  • ssm:StartAutomationExecution

  • ssm:DescribeInstanceInformation

  • ssm:DescribeAutomationExecutions

  • ssm:GetDocument

  • ssm:GetAutomationExecution

  • ssm:DescribeAutomationStepExecutions

  • ssm:ListCommandInvocations

  • ssm:GetParameters

  • ssm:ListCommands

  • ssm:GetCommandInvocation

  • fsx:DescribeFileSystems

  • ds:DescribeDirectories

  • s3:GetEncryptionConfiguration

  • s3:GetBucketPublicAccessBlock

  • s3:GetAccountPublicAccessBlock

  • s3:GetBucketPolicyStatus

  • s3:GetBucketAcl

  • s3:GetBucketLocation

Contoh Kebijakan IAM untuk Otomasi Asumsikan Peran

{ "Version": "2012-10-17", "Statement": [ { "Sid": "AllowDescribe", "Effect": "Allow", "Action": [ "ec2:DescribeSubnets", "ec2:DescribeSecurityGroups", "ec2:DescribeImages", "ec2:DescribeInstances", "ec2:DescribeLaunchTemplates", "ec2:DescribeLaunchTemplateVersions", "ssm:DescribeInstanceInformation", "ssm:DescribeAutomationExecutions", "ssm:DescribeAutomationStepExecutions", "fsx:DescribeFileSystems", "ds:DescribeDirectories" ], "Resource": "*" }, { "Sid": "CloudFormation", "Effect": "Allow", "Action": [ "cloudformation:DescribeStacks", "cloudformation:DescribeStackResources", "cloudformation:DescribeStackEvents", "cloudformation:CreateStack", "cloudformation:DeleteStack" ], "Resource": "arn:*:cloudformation:*:*:stack/AWSSupport-ValidateFSxWindowsADConfig-*" }, { "Sid": "AllowCreateLaunchTemplate", "Effect": "Allow", "Action": [ "ec2:CreateLaunchTemplate", "ec2:CreateTags" ], "Resource": [ "arn:aws:ec2:*:*:launch-template/*" ] }, { "Sid": "AllowEC2RunInstances", "Effect": "Allow", "Action": [ "ec2:RunInstances", "ec2:CreateTags" ], "Resource": [ "arn:aws:ec2:*::image/*", "arn:aws:ec2:*::snapshot/*", "arn:aws:ec2:*:*:subnet/*", "arn:aws:ec2:*:*:network-interface/*", "arn:aws:ec2:*:*:security-group/*", "arn:aws:ec2:*:*:key-pair/*", "arn:aws:ec2:*:*:launch-template/*" ] }, { "Sid": "AllowEC2RunInstancesWithTags", "Effect": "Allow", "Action": [ "ec2:RunInstances", "ec2:CreateTags" ], "Resource": [ "arn:aws:ec2:*:*:instance/*", "arn:aws:ec2:*:*:volume/*" ] }, { "Sid": "EC2SecurityGroup", "Effect": "Allow", "Action": [ "ec2:CreateSecurityGroup", "ec2:RevokeSecurityGroupEgress", "ec2:AuthorizeSecurityGroupEgress", "ec2:CreateTags" ], "Resource": [ "arn:*:ec2:*:*:security-group/*", "arn:*:ec2:*:*:vpc/*" ] }, { "Sid": "EC2Remove", "Effect": "Allow", "Action": [ "ec2:TerminateInstances", "ec2:DeleteLaunchTemplate", "ec2:DeleteSecurityGroup" ], "Resource": [ "arn:aws:ec2:*:*:instance/*", "arn:aws:ec2:*:*:launch-template/*", "arn:*:ec2:*:*:security-group/*" ] }, { "Sid": "IAMInstanceProfile", "Effect": "Allow", "Action": [ "iam:CreateInstanceProfile", "iam:DeleteInstanceProfile", "iam:GetInstanceProfile", "iam:AddRoleToInstanceProfile", "iam:RemoveRoleFromInstanceProfile" ], "Resource": "arn:*:iam::*:instance-profile/*" }, { "Sid": "IAM", "Effect": "Allow", "Action": [ "iam:CreateRole", "iam:DeleteRole", "iam:AttachRolePolicy", "iam:DetachRolePolicy", "iam:getRolePolicy", "iam:PutRolePolicy", "iam:DeleteRolePolicy", "iam:GetRole", "iam:TagRole" ], "Resource": "arn:*:iam::*:role/*" }, { "Sid": "SSM", "Effect": "Allow", "Action": [ "ssm:StartAutomationExecution", "ssm:GetDocument", "ssm:GetAutomationExecution", "ssm:ListCommandInvocations", "ssm:GetParameters", "ssm:ListCommands", "ssm:GetCommandInvocation" ], "Resource": "*" }, { "Sid": "SSMSendCommand", "Effect": "Allow", "Action": [ "ssm:SendCommand" ], "Resource": "arn:aws:ssm:*:*:document/AWS-RunPowerShellScript" }, { "Sid": "SSMSendCommandOnlyFsxInstance", "Effect": "Allow", "Action": [ "ssm:SendCommand" ], "Resource": [ "arn:aws:ec2:*:*:instance/*" ], "Condition": { "StringLike": { "ssm:resourceTag/CreatedBy": [ "AWSSupport-ValidateFSxWindowsADConfig" ] } } }, { "Sid": "AllowPassRoleToEC2", "Effect": "Allow", "Action": "iam:PassRole", "Resource": "arn:*:iam::*:role/AWSSupport-ValidateFSxWindowsADConfig-*", "Condition": { "StringEquals": { "iam:PassedToService": [ "ec2.amazonaws.com" ] } } }, { "Effect": "Allow", "Action": [ "s3:GetEncryptionConfiguration", "s3:GetBucketPublicAccessBlock", "s3:GetAccountPublicAccessBlock", "s3:GetBucketPolicyStatus", "s3:GetBucketAcl", "s3:GetBucketLocation" ], "Resource": "*" } ] }

Instruksi

Ikuti langkah-langkah ini untuk mengonfigurasi otomatisasi:

  1. Arahkan ke AWSSupport-ValidateFSxWindowsADConfigSystems Manager di bawah Documents.

  2. Pilih Jalankan otomatisasi.

  3. Untuk memvalidasi iklan yang dikelola sendiri dengan FSx Amazon yang gagal atau salah konfigurasi, masukkan parameter berikut:

    • AutomationAssumeRole (Opsional):

      Nama Sumber Daya Amazon (ARN) dari 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.

    • FSxId (Bersyarat):

      ID Server File Amazon FSx untuk Windows. Ini diperlukan untuk memvalidasi Amazon yang gagal atau salah konfigurasi yang ada. FSx

    • SecretArn (Diperlukan):

      ARN rahasia Secrets Manager Anda yang berisi nama pengguna dan kata sandi akun FSx layanan Amazon. Pastikan nama pengguna dan kata sandi disimpan menggunakan key/value pasangan dalam format{"username":"EXAMPLE-USER","password":"EXAMPLE-PASSWORD"}. CloudFormation Tumpukan membuat instance validasi dengan izin GetSecretValue untuk melakukan ARN ini.

    • FSxSecurityGroupId (Diperlukan):

      ID grup keamanan untuk Amazon FSx untuk Windows File Server.

    • BucketName (Diperlukan):

      Bucket Amazon S3 untuk mengunggah hasil validasi ke. Pastikan bucket dikonfigurasi dengan enkripsi sisi server (SSE) dan kebijakan bucket tidak memberikan read/write izin yang tidak perlu kepada pihak yang tidak perlu mengakses log. Pastikan juga bahwa instans Amazon EC2 Windows memiliki akses yang diperlukan ke bucket Amazon S3.

    Input parameters form for AWS Systems Manager managed Windows Server EC2 instance validation.
  4. Untuk memvalidasi konfigurasi AD yang dikelola sendiri untuk FSx pembuatan Amazon baru, masukkan parameter berikut:

    • AutomationAssumeRole (Opsional):

      Nama Sumber Daya Amazon (ARN) dari 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.

    • SecretArn (Diperlukan):

      ARN rahasia Secrets Manager Anda yang berisi nama pengguna dan kata sandi akun FSx layanan Amazon. Pastikan nama pengguna dan kata sandi disimpan menggunakan key/value pasangan dalam format{"username":"EXAMPLE-USER","password":"EXAMPLE-PASSWORD"}. CloudFormation Tumpukan membuat instance validasi dengan izin GetSecretValue untuk melakukan ARN ini.

    • FSxSecurityGroupId (Diperlukan):

      ID grup keamanan untuk Amazon FSx untuk Windows File Server.

    • BucketName (Diperlukan):

      Bucket Amazon S3 untuk mengunggah hasil validasi ke. Pastikan bucket dikonfigurasi dengan enkripsi sisi server (SSE) dan kebijakan bucket tidak memberikan read/write izin yang tidak perlu kepada pihak yang tidak perlu mengakses log. Pastikan juga bahwa instans Amazon EC2 Windows memiliki akses yang diperlukan ke bucket Amazon S3.

    • FSxPreferredSubnetId(Bersyarat):

      Amazon FSx untuk Windows File Server lebih disukai subnet.

    • DomainName (Bersyarat):

      Nama domain yang sepenuhnya memenuhi syarat dari domain Microsoft AD Anda yang dikelola sendiri.

    • DnsIpAddresses (Bersyarat):

      Daftar hingga dua alamat IP server DNS atau pengontrol domain di domain AD yang dikelola sendiri. Hingga dua IPs, masukkan mereka dipisahkan dengan koma.

    • FSxAdminsGroup (Bersyarat):

      Amazon FSx untuk Windows File Server mendelegasikan grup administrator sistem file. Secara default, ini adalahDomain Admins.

    • FSxOrganizationalUnit(Bersyarat):

      Unit Organisasi (OU) di mana Anda ingin bergabung dengan sistem file Anda. Berikan nama jalur yang dibedakan dari OU. Contoh:OU=org,DC=example,DC=com.

    Form fields for configuring Amazon FSx for Windows File Server and related Layanan AWS.
  5. Pilih Jalankan.

  6. Otomatisasi dimulai.

  7. Dokumen melakukan langkah-langkah berikut:

    • CheckBucketPublicStatus(AWS: ExecuteScript):

      Memeriksa apakah bucket Amazon S3 target berpotensi memberikan akses publik baca and/or tulis ke objeknya.

    • BranchOnInputParameters(aws:cabang):

      Cabang pada parameter input yang disediakan seperti parameter FSx ID Amazon atau Amazon FSx.

    • AssertFileSystemTypeIsWindows(aws: assertAwsResource Properti):

      Jika FSx ID Amazon disediakan, memvalidasi jenis sistem file Amazon FSx untuk Windows File Server.

    • GetValidationInputs(AWS: ExecuteScript):

      Mengembalikan konfigurasi Microsoft AD yang dikelola sendiri yang diperlukan oleh CloudFormation template untuk membuat EC2 instance Amazon.

    • BranchOnInstanceId (aws:cabang):

      Cabang pada input yang disediakanInstanceId. Jika InstanceId disediakan, skrip validasi berjalan pada EC2 instans Amazon target dari otomatisasistep:RunValidationScript.

    • Buat EC2 InstanceStack (AWS:CreateStack):

      Membuat EC2 instance Amazon di subnet pilihan menggunakan AWS CloudFormation tempat AmazonFSxADValidation alat akan dieksekusi

    • DescribeStackResources(aws:executeAwsApi):

      Menjelaskan CloudFormation tumpukan untuk mendapatkan ID EC2 instans Amazon sementara.

    • WaitForEC2InstanceToBeManaged(aws: waitForAwsResourceProperty):

      Menunggu hingga EC2 instans Amazon dikelola oleh Systems Manager untuk menjalankan skrip validasi menggunakan SSM Run Command.

    • GetAmazonFSxADValidationLampiran (aws:executeAwsApi):

      Mendapat URL AmazonFSxADValidation alat dari lampiran runbook.

    • RunValidationScript(AWS:runcommand):

      Menjalankan AmazonFSxADValidation alat pada EC2 instans Amazon sementara dan menyimpan hasilnya di bucket Amazon S3 yang ditentukan dalam parameter. BucketName

    • DescribeErrorsFromStackEvents(AWS: ExecuteScript):

      Menjelaskan peristiwa CloudFormation tumpukan jika runbook gagal membuat tumpukan.

    • BranchOnRetainCloudFormationStack(aws:cabang):

      Cabang pada InstanceId parameter RetainCloudFormationStack dan untuk menentukan apakah CloudFormation tumpukan harus dihapus.

    • DeleteCloudFormationStack(AWS:DeleteStack):

      Menghapus AWS CloudFormation tumpukan.

  8. Setelah selesai, tinjau bagian Output untuk hasil eksekusi:

    Output showing instance details, CloudFormation stack ID, and validation script results with errors.

    Runbook akan mengunggah hasil eksekusi skrip validasi ke bucket Amazon S3.

Referensi

Otomatisasi Systems Manager

AWS dokumentasi layanan