AWS re:Postを使用することにより、以下に同意したことになります AWS re:Post 利用規約

AWS Systems Manager Session Managerの問題をトラブルシューティングするにはどうすればよいですか?

所要時間3分
0

AWS Systems Manager Session Manager を使用しようとすると、セッションが失敗します。

解決策

Amazon Elastic Compute Cloud (Amazon EC2) インスタンスがマネージドインスタンスとして表示されないためにセッションが失敗した場合は、マネージドインスタンスが表示されない原因をトラブルシューティングします

セッションが失敗し、Amazon EC2 インスタンスがマネージドインスタンスとして使用できる場合は、セッションマネージャーをトラブルシューティング して次の問題を解決してください。

  • セッションマネージャーには、セッションを開始する権限がありません。
  • セッションマネージャーには、セッション設定を変更する権限がありません。
  • マネージドノードが表示されないか、セッションマネージャー 用に設定されていません。
  • コマンドラインパス (Windows) に セッションマネージャープラグインが追加されていません。
  • システムから「TargetNotConnected」というエラーが送信されます。
  • セッションを開始すると、セッションマネージャーに空白の画面が表示されます。

セッションが失敗し、次のいずれかのエラーメッセージが表示された場合は、適切なトラブルシューティング手順を適用してください。

「Your session has been terminated for the following reasons: ----------ERROR------- Encountered error while initiating handshake.Fetching data key failed: Unable to retrieve data key, Error when decrypting data key AccessDeniedException: The ciphertext refers to a AWS KMS key that does not exist, does not exist in this region, or you are not allowed to access. status code: 400, request id: nnnnnnnnnnnn」

このエラーは、必要な AWS Key Management Service (AWS KMS) のキーへのアクセス許可がアカウント内のユーザーおよび EC2 インスタンスにない場合に表示されます。このエラーを解決するには、セッション データの AWS KMS 暗号化を有効にして、次の手順を完了してください。

  1. セッションを開始するユーザーと、セッションが接続するインスタンスに、必要な AWS KMS キーへのアクセス許可を付与します。
  2. セッションマネージャー で KMS キーを使用できるアクセス許可をユーザーとインスタンスに付与するように、AWS Identity and Access Management (AWS IAM) を設定します:
    ユーザーに AWS KMS キー権限を追加するには、「セッションマネージャーのサンプル IAM ポリシー」を参照してください。
    インスタンスに AWS KMS キー権限を追加するには、「セッションマネージャー のインスタンス権限の確認または追加」を参照してください。
    デフォルトのホスト管理設定については、AWS KMS キーへのアクセス許可を提供するポリシーを IAM ロールに追加します

注: AWS Systems Manager Agent (SSM Agent) のバージョン 3.2.582.0 以降では、デフォルトのホスト管理設定は IAM インスタンスプロファイルがなくても EC2 インスタンスを自動的に管理します。インスタンスはインスタンスメタデータサービスのバージョン 2 (IMDSv2) を使用する必要があります。

「Error - Fleet Manager is unable to start the session because the WebSocket connection closed unexpectedly during the handshake.Verify that your instance profile has sufficient Sessions Manager and AWS KMS permissions.For a more detailed message, visit the Session Manager console」

このエラーは、対象インスタンスにアタッチされているインスタンスプロファイルロールに次の権限が欠けている場合に発生する可能性があります。AWS Systems Manager で AWS KMS を使用するには、セッションデータの暗号化と復号化を許可するために、kms:Decrypt 権限が必要です。

{
    "Effect":   "Allow",
    "Action":  [
          "kms:Decrypt"
    ],
    "Resource": "key-name"
}

このエラーを解決するには、インスタンスにアタッチされているインスタンスプロファイルロールの権限を更新してください。セッションマネージャー権限の例については、「既存の IAM ロールへのセッションマネージャー権限の追加」を参照してください。

「Your session has been terminated for the following reasons: Couldn't start the session because we are unable to validate encryption on Amazon S3 bucket.Error: AccessDenied: Access Denied status code: 403」

セッションマネージャーの設定で S3 ログ記録暗号化された S3 バケットのみを許可することを選択すると、このエラーが発生します。このエラーを解決するには、次の手順を実行します。

  1. AWS Systems Manager コンソールを開きます。
  2. [セッションマネージャー][環境設定] を選択し、[編集] を選択します。
  3. [S3 ログ記録] で、[暗号化された S3 バケットのみを許可すること] をクリアし、変更を保存します。
    詳細については、「Amazon S3 を使用したセッションデータのログ記録 (コンソール)」を参照してください。
  4. IAM インスタンスプロファイルで管理されているインスタンスの場合、暗号化されたログを Amazon S3 にアップロードするための権限を付与するポリシーをインスタンスプロファイルに追加してください。手順については、「セッションマネージャー、Amazon S3、Amazon CloudWatch Logs(コンソール)用の権限を持つIAMロールの作成」を参照してください。
  5. デフォルトのホスト管理設定を使用して管理するインスタンスの場合は、暗号化されたログを Amazon S3 にアップロードできるアクセス許可を付与するポリシーを、IAM ロールに追加します。詳細については、「セッションマネージャー、Amazon S3、CloudWatch Logs(コンソール)用の権限を持つ IAM ロールの作成」を参照してください。

「Your session has been terminated for the following reasons: We couldn't start the session because encryption is not set up on the selected CloudWatch Logs log group.Either encrypt the log group or choose an option to enable logging without encryption」

このエラーは、セッションマネージャー の設定で [CloudWatch のログ記録][暗号化されたCloudWatchロググループのみを許可すること] を選択している場合に表示されます。このエラーを解決するには、次の手順を実行します。

  1. AWS Systems Manager コンソールを開きます。
  2. [セッションマネージャー][環境設定] を選択し、[編集] を選択します。
  3. [CloudWatch のログ記録] で、[暗号化されたCloudWatchロググループのみを許可すること] をオフにし、変更を保存します。
    詳細については、「Amazon CloudWatch Logsを使用したセッション データのログ記録 (コンソール)」を参照してください。
  4. IAM インスタンスプロファイルで管理されているインスタンスの場合、暗号化されたログを Amazon CloudWatch にアップロードするための権限を付与するポリシーをインスタンスプロファイルに追加してください。手順については、「セッションマネージャー、Amazon S3、CloudWatch Logs(コンソール)用の権限を持つIAMロールの作成」を参照してください。
  5. デフォルトのホスト管理設定を使用して管理するインスタンスの場合は、暗号化されたログを CloudWatch にアップロードできるアクセス許可を付与するポリシーを、IAM ロールに追加します。手順については、「セッションマネージャー、Amazon S3、CloudWatch Logs(コンソール)用の権限を持つIAMロールの作成」を参照してください。

「Your session has been terminated for the following reasons: ----------ERROR------- Unable to start command: Failed to create user ssm-user: Instance is running active directory domain controller service.Disable the service to continue to use session manager」

このエラーは、Windows Server で AWS Systems Manager を使用する際に発生する可能性があります。このエラーの原因は、インスタンスで実行されている SSM エージェントのバージョンによって異なります。

関連情報

Amazon EC2 インスタンス上のインスタンスプロファイルをアタッチまたは置き換えるにはどうすればよいですか?

セッションロギングの有効化と無効化

セッションマネージャーのセットアップ

AWS公式
AWS公式更新しました 2ヶ月前
コメントはありません