翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
AWSSupport-ResetLinuxUserPassword
説明
AWSSupport-ResetLinuxUserPassword ランブックは、ローカルオペレーティングシステム (OS) ユーザーのパスワードをリセットするのに役立ちます。このランブックは、シリアルコンソールを使用して Amazon Elastic Compute Cloud (Amazon EC2) インスタンスにアクセスする必要があるユーザーに特に役立ちます。ランブックは、自動生成された AWS Identity and Access Management (IAM) ロールまたは指定したカスタム IAM インスタンスプロファイル AWS アカウント を使用して、 に一時的な Amazon EC2 インスタンスを作成します。カスタム (IAM) インスタンスプロファイルには、パスワードを含む AWS Secrets Manager シークレット値を取得するアクセス許可が必要です。
ランブックは、ターゲットの Amazon EC2 インスタンスを停止し、ルート Amazon Elastic Block Store (Amazon EBS) ボリュームをデタッチし、一時の Amazon EC2 インスタンスにアタッチします。Run Command を使用すると、一時インスタンス上でスクリプトが実行され、指定した OS ユーザーのパスワードが設定されます。次に、ルート Amazon EBS ボリュームがターゲットインスタンスに再アタッチされます。ランブックには、自動化の開始時にルートボリュームのスナップショットを作成するオプションも用意されています。
[開始する前に]
OS ユーザーに割り当てるパスワードの値を使用して Secrets Manager シークレットを作成します。値はプレーンテキストである必要があります。詳細については、AWS Secrets Manager ユーザーガイドの「Create an AWS Secrets Manager secret」を参照してください。
考慮事項
-
このランブックを使用する前にインスタンスをバックアップすることをおすすめします。
CreateSnapshotパラメータの値をYesとして設定することを検討してください。 -
ローカルユーザーパスワードを変更すると、ランブックでインスタンスを停止する必要があります。インスタンスが停止すると、メモリまたはインスタンスストアボリュームに保存されているすべてのデータは失われます。また、自動的に割り当てられたパブリック IPv4 アドレスはすべて解放されます。インスタンスを停止するとどうなるかの詳細については、Amazon EC2 ユーザーガイド」の「インスタンスの停止と起動」を参照してください。
-
ターゲット Amazon EC2 インスタンスにアタッチされた Amazon EBS ボリュームがカスタマーマネージド AWS Key Management Service (AWS KMS) キーで暗号化されている場合は、 AWS KMS キーが
deletedまたは でないか、インスタンスの起動に失敗disabledします。 -
カスタム IAM インスタンスプロファイルを使用するには、
AutomationAssumeRoleに検証用の IAM アクセスGetInstanceProfile許可が必要であり、カスタムインスタンスプロファイル自体に Systems Manager および Secrets Manager アクセス許可が含まれている必要があります。ランブックはインスタンスプロファイルの存在を事前に検証しますが、インスタンスプロファイルに必要なアクセスがない場合、ヘルパーインスタンスオペレーション中に失敗します。
ドキュメントタイプ
オートメーション
[所有者]
Amazon
[Platforms] (プラットフォーム)
Linux
パラメータ
-
AutomationAssumeRole
タイプ: 文字列
説明: (オプション) Systems Manager Automation がユーザーに代わってアクションを実行できるようにする AWS Identity and Access Management (IAM) ロールの Amazon リソースネーム (ARN)。ロールを指定しない場合、Systems Manager Automation はこのランブックを開始するユーザーのアクセス許可を使用します。
-
InstanceId
タイプ: 文字列
説明: (必須) リセットする OS ユーザーパスワードを含む Amazon EC2 Linux インスタンスの ID。
-
LinuxUserName
タイプ: 文字列
デフォルト: ec2-ユーザー
説明: (オプション) パスワードをリセットする OS ユーザーアカウント。
-
SecretArn
タイプ: 文字列
説明: (必須) 新しいパスワードを含む Secrets Manager シークレットのARN。
-
SecurityGroupId
タイプ: 文字列
説明: (オプション) Amazon EC2 一時インスタンスにアタッチするセキュリティグループの ID。このパラメータに値を指定しない場合は、デフォルトの Amazon Virtual Private Cloud (Amazon VPC) セキュリティグループが使用されます。
-
SubnetId
タイプ: 文字列
説明: (オプション) Amazon EC2 一時インスタンスを起動するサブネットの ID。デフォルトでは、自動化はターゲットインスタンスと同じサブネットを選択します。別のサブネットを指定する場合は、そのサブネットはターゲットインスタンスと同じアベイラビリティーゾーンに存在し、Systems Manager エンドポイントにアクセスできる必要があります。
-
CreateSnapshot
タイプ: 文字列
有効な値: はい | いいえ
デフォルト: Yes
説明: (オプション) オートメーションを実行する前に、ターゲット Amazon EC2 インスタンスのルートボリュームのスナップショットを作成するかどうかを決定します。
-
StopConsent
タイプ: 文字列
有効な値: はい | いいえ
デフォルト: いいえ
説明:
Yesを入力して、この自動化の間にターゲット Amazon EC2 インスタンスが停止することを確認します。Amazon EC2 インスタンスが停止すると、メモリまたはインスタンスストアボリュームに保存されているデータはすべて失われ、自動パブリック IPv4 アドレスは解放されます。詳細については、「Amazon EC2 ユーザーガイド」の「Amazon EC2 インスタンスの停止と起動」を参照してください。 -
InstanceProfileName
タイプ: 文字列
説明: (オプション) ヘルパー Amazon EC2 インスタンスにアタッチする IAM インスタンスプロファイルの名前。指定しない場合、必要なアクセス許可を持つ一時インスタンスプロファイルが自動的に作成されます。カスタムインスタンスプロファイルには、指定された Secrets Manager シークレットと Systems Manager にアクセスするためのアクセス許可が必要です。
必要な 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 -
iam:GetInstanceProfile
ドキュメントステップ
-
aws:branch— ターゲットの Amazon EC2 インスタンスの停止に同意したかどうかに基づいて分岐します。 -
aws:assertAwsResourceProperty– Amazon EC2 インスタンスのステータスがrunningまたはstopped状態であることを確認します。それ以外の場合、自動化は終了します。 -
aws:executeAwsApi– Amazon EC2 インスタンスのプロパティを取得します。 -
aws:executeAwsApi– ルートボリュームのプロパティを取得します。 -
aws:branch– 一時的な Amazon EC2 インスタンスのサブネット ID が提供されたかどうかに応じて、自動化を分岐します。 -
aws:assertAwsResourceProperty–SubnetIdパラメータで指定したサブネットが、ターゲット Amazon EC2 インスタンスと同じアベイラビリティーゾーンにあることを確認します。 -
aws:assertAwsResourceProperty– ターゲット Amazon EC2 インスタンスのルートボリュームが Amazon EBS ボリュームであることを確認します。 -
aws:assertAwsResourceProperty– Amazon EC2 インスタンスアーキテクチャがarm64または であることを確認しますx86_64。 -
aws:assertAwsResourceProperty– Amazon EC2 インスタンスのシャットダウン動作がstopであり、 ではないことを確認しますterminate。 -
aws:branch– Amazon EC2 インスタンスがスポットインスタンスではないことを確認します。それ以外の場合、自動化は終了します。 -
aws:executeScript– Amazon EC2 インスタンスが Auto Scaling グループに含まれていないことを確認します。インスタンスが Auto Scaling グループの一部である場合、自動化は Amazon EC2 インスタンスがStandbyライフサイクル状態にあることを確認します。 -
aws:branch– カスタム IAM インスタンスプロファイル名が提供されたかどうかに応じて自動化を分岐させます -
aws:assertAwsResourceProperty– カスタム IAM インスタンスプロファイルが存在することを確認し、その名前が入力パラメータと一致することを確認します。 -
aws:createStack– 指定した OS ユーザーのパスワードをリセットするために使用される一時的な Amazon EC2 インスタンスを作成します。 -
aws:waitForAwsResourceProperty– 新しく起動された一時的な Amazon EC2 インスタンスが実行されるまで待ちます。 -
aws:executeAwsApi– 一時的な Amazon EC2 インスタンスの ID を取得します。 -
aws:waitForAwsResourceProperty– 一時的な Amazon EC2 インスタンスが Systems Manager によって管理されるとおりにレポートされるのを待ちます。 -
aws:changeInstanceState– ターゲット Amazon EC2 インスタンスを停止します。 -
aws:changeInstanceState– ターゲット Amazon EC2 インスタンスが停止状態で停止した場合に備えて、ターゲット Amazon EC2 インスタンスを強制的に停止させます。 -
aws:branch– ターゲット Amazon EC2 インスタンスのルートボリュームのスナップショットがリクエストされたかどうかに応じて、自動化を分岐します。 -
aws:executeAwsApi– ターゲット Amazon EC2 インスタンスのルート Amazon EBS ボリュームのスナップショットを作成します。 -
aws:waitForAwsResourceProperty– スナップショットがcompleted状態になるまで待ちます。 -
aws:executeAwsApi– ターゲット Amazon EC2 インスタンスから Amazon EBS ルートボリュームをデタッチします。 -
aws:waitForAwsResourceProperty– Amazon EBS ルートボリュームがターゲット Amazon EC2 インスタンスからデタッチされるのを待ちます。 -
aws:executeAwsApi– ルート Amazon EBS ボリュームを一時的な Amazon EC2 インスタンスにアタッチします。 -
aws:waitForAwsResourceProperty– Amazon EBS ルートボリュームが一時的な Amazon EC2 インスタンスにアタッチされるのを待ちます。 -
aws:runCommand– 一時的な Amazon EC2 インスタンスで Run Command を使用してシェルスクリプトを実行して、ターゲットユーザーのパスワードをリセットします。 -
aws:executeAwsApi– 一時的な Amazon EC2 インスタンスから Amazon EBS ルートボリュームをデタッチします。 -
aws:waitForAwsResourceProperty– Amazon EBS ルートボリュームが一時的な Amazon EC2 インスタンスからデタッチされるのを待ちます。 -
aws:executeAwsApi– エラー発生後、一時的な Amazon EC2 インスタンスから Amazon EBS ルートボリュームをデタッチします。 -
aws:waitForAwsResourceProperty– エラー後に Amazon EBS ルートボリュームが一時的な Amazon EC2 インスタンスからデタッチされるのを待ちます。 -
aws:branch– エラーが発生した場合に復旧パスを決定するためにルートボリュームのスナップショットがリクエストされたかどうかに応じて、自動化を分岐します。 -
aws:executeAwsApi– ルート Amazon EBS ボリュームをターゲット Amazon EC2 インスタンスに再アタッチします。 -
aws:waitForAwsResourceProperty– Amazon EBS ルートボリュームが Amazon EC2 インスタンスにアタッチされるのを待ちます。 -
aws:executeAwsApi– ターゲット Amazon EC2 インスタンスのルートボリュームスナップショットから新しい Amazon EBS ボリュームを作成します。 -
aws:waitForAwsResourceProperty– 新しい Amazon EBS ボリュームがavailable状態になるまで待ちます。 -
aws:executeAwsApi– 新しい Amazon EBS ボリュームをルートボリュームとしてターゲットインスタンスにアタッチします。 -
aws:waitForAwsResourceProperty– Amazon EBS ボリュームがattached状態になるまで待ちます。 -
aws:executeAwsApi– ランブックが CloudFormation スタックの作成または更新に失敗した場合の CloudFormation スタックイベントについて説明します。 -
aws:branch– 以前の Amazon EC2 インスタンスの状態に応じて自動化を分岐します。状態がrunningの場合、インスタンスは起動されます。stopped状態であった場合、自動化は続行されます。 -
aws:changeInstanceState– 必要に応じて Amazon EC2 インスタンスを起動します。 -
aws:waitForAwsResourceProperty– CloudFormation スタックがターミナルステータスになるまで待ってから削除します。 -
aws:executeAwsApi– 一時的な Amazon EC2 インスタンスを含む CloudFormation スタックを削除します。