セッションアクティビティロギングの有効化と無効化 - AWS Systems Manager

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

セッションアクティビティロギングの有効化と無効化

Session Manager は、Systems Manager コンソールで現在のセッションと完了したセッションに関する情報を提供するだけでなく、 AWS アカウント でのセッションアクティビティのログ記録についてのオプションも提供します これにより、次のことが可能になります。

  • アーカイブの目的でセッションログを作成し、保存する。

  • Session Manager を使用して、過去 30 日間にマネージドノードに実行されたすべての接続詳細を示すレポートを生成します。

  • Amazon Simple Notification Service (Amazon SNS) 通知など AWS アカウント、 のセッションアクティビティの通知を生成します。

  • AWS Lambda 関数の実行、 パイプラインの開始 AWS CodePipeline 、 ドキュメントの実行など、セッションアクティビティの結果として AWS リソースに対して別のアクションを自動的に開始します AWS Systems Manager Run Command。

重要

Session Manager の次の要件と制限事項に注意してください。

  • Session Manager は、セッション設定に応じて、セッション中に入力したコマンドとその出力を記録します。パスワードなどの機密データがセッションログに表示されないようにするには、セッション中に機密データを入力するときに次のコマンドを使用することをお勧めします。

    Linux & macOS
    stty -echo; read passwd; stty echo;
    Windows
    $Passwd = Read-Host -AsSecureString
  • Windows Server 2012 またはそれ以前を使用している場合、ログ内のデータが最適にフォーマットされていない可能性があります。最適なログ形式のために、Windows Server 2012 R2 以降の使用をお勧めします。

  • Linux または macOS のマネージドノードを使用している場合は、スクリーンユーティリティがインストールされていることを確認します。インストールされていない場合、ログデータが切り捨てられることがあります。Amazon Linux 1、Amazon Linux 2、AL2023、および ではUbuntu Server、スクリーンユーティリティはデフォルトでインストールされます。スクリーンを手動でインストールするには、Linux のバージョンに応じて、sudo yum install screen または sudo apt-get install screen のいずれかを実行します。

  • ログ記録は、ポート転送または SSH を介して接続する Session Manager セッションでは使用できません。これは、SSH はすべてのセッションデータを暗号化し、Session Manager は SSH 接続のトンネルとしてのみ機能するためです。

セッションデータのログ記録に Amazon S3 または Amazon CloudWatch Logs を使用するために必要なアクセス許可の詳細については、「」を参照してくださいSession Manager、Amazon S3、CloudWatch Logs (コンソール) の許可を持つIAM ロールの作成

Session Manager のログ記録のオプションの詳細については、次のトピックを参照してください。

Amazon CloudWatch Logs を使用したセッションデータのストリーミング (コンソール)

セッションデータログの連続ストリームを Amazon CloudWatch Logs に送信できます。セッションデータのストリーミングには、ユーザーがセッションで実行したコマンド、コマンドを実行したユーザーの ID、セッションデータが CloudWatch Logs にストリーミングされたときのタイムスタンプなど、重要な詳細情報が含まれます。セッションデータをストリーミングする場合、ログは JSON 形式で、既存のログソリューションとの統合に役立ちます。対話型コマンドでは、セッションデータのストリーミングはサポートされていません。

注記

Windows Server のマネージドノードからセッションデータをストリーミングする場合、PowerShell 5.1 以降がインストールされている必要があります。デフォルトでは、Windows Server 2016 以降には必要な PowerShell バージョンがインストールされています。ただし、Windows Server 2012 と 2012 R2 には、デフォルトで必要な PowerShell バージョンがインストールされていません。Windows Server 2012 または 2012 R2 マネージドノードの PowerShell をまだ更新していない場合、Run Command を使用して更新できます。Run Command を使用した PowerShell の更新方法については、「 PowerShell を使用した の更新 Run Command」を参照してください。

重要

Windows Server マネージドノードでPowerShell 文字起こしポリシー設定が構成されている場合、セッションデータをストリーミングすることはできません。

Amazon CloudWatch Logs を使用してセッションデータをストリーミングするには (コンソール)
  1. https://console.aws.amazon.com/systems-manager/ で AWS Systems Manager コンソールを開きます。

  2. ナビゲーションペインで、Session Manager を選択します。

  3. [設定] タブを選択してから、[編集] を選択します。

  4. CloudWatch ログ記録 を有効にするの横にあるチェックボックスをオンにします。

  5. [Stream session logs (セッションログのストリーム)] オプションを選択します。

  6. (推奨) 暗号化された CloudWatch ロググループのみを許可する の横にあるチェックボックスをオンにします。このオプションが有効になっている場合、ログデータはロググループに指定されたサーバー側の暗号化キーを使用して暗号化されます。 CloudWatch Logs に送信されるログデータを暗号化しない場合は、このチェックボックスをオフにします。ロググループで暗号化が有効になっていない場合も、このチェックボックスをオフにする必要があります。

  7. CloudWatch ログ で、セッション CloudWatch ログをアップロード AWS アカウント する の既存のロググループを指定するには、次のいずれかを選択します。

    • セッションログデータを保存するためにアカウントにすでに作成されているテキストボックスにロググループの名前を入力します。

    • ロググループを参照: セッションログデータを保存するためにアカウントですでに作成されているロググループを選択します。

  8. [Save] を選択します。

Amazon S3 を使用してセッションデータをログ記録する (コンソール)

デバッグおよびトラブルシューティングの目的で、指定した Amazon Simple Storage Service (Amazon S3) バケットにセッションログデータを保存することができます。デフォルトのオプションでは、ログは暗号化された Amazon S3 バケットに送信されます。暗号化は、 AWS KMS key または Amazon S3 サーバー側の暗号化 (SSE) キー (AES-256) のいずれかで、バケットに指定されたキーを使用して実行されます。

重要

仮想ホスティング形式のバケットを Secure Sockets Layer (SSL) で使用する場合、SSL ワイルドカード証明書はピリオドを含まないバケットにのみ一致します。この問題を回避するには、HTTP を使用するか、または独自の証明書検証ロジックを記述します。仮想ホスティング形式のバケットを使用するときは、バケット名にピリオド (「.」) を使用しないことをお勧めします。

Amazon S3 バケットの暗号化

暗号化を使用して Amazon S3 バケットにログを送信するには、バケット上で暗号化を有効にする必要があります。S3 バケットの暗号化の詳細については、「Amazon S3 バケット用の Amazon S3 デフォルト暗号化」を参照してください。

カスタマー管理のキー

ユーザー自身が管理する KMS キーを使用してバケットを暗号化する場合、インスタンスにアタッチされた IAM インスタンスプロファイルには、キーを読み取るための明示的なアクセス許可が必要です。を使用する場合 AWS マネージドキー、インスタンスにはこの明示的なアクセス許可は必要ありません。インスタンスプロファイルに CMK 使用のためのアクセスを提供する方法の詳細については、AWS Key Management Service デベロッパーガイドキーユーザーにキーの使用を許可するを参照してください。

Amazon S3 バケットにセッションログを保存するように Session Manager を設定するには、次の手順に従います。

注記

を使用して AWS CLI 、セッションデータの送信先の Amazon S3 バケットを指定または変更することもできます。詳細については、Session Manager 設定の更新 (コマンドライン) を参照してください。

Amazon S3 を使用してセッションデータをログに記録するには (コンソール)
  1. https://console.aws.amazon.com/systems-manager/ で AWS Systems Manager コンソールを開きます。

  2. ナビゲーションペインで、Session Manager を選択します。

  3. [Preferences (設定)] タブを選択してから、[Edit (編集)] を選択します。

  4. [S3 ロギング] で [有効にする] チェックボックスをオンにします。

  5. (推奨) [Allow only encrypted S3 buckets (暗号化された S3 バケットのみを許可する)] の横にあるチェックボックスをオンにします。このオプションが有効になっている場合、ログデータはバケットに指定されたサーバー側の暗号化キーを使用して暗号化されます。Amazon S3 に送信されるログデータを暗号化しない場合は、このチェックボックスをオフにします。S3 バケットで暗号化が有効になっていない場合も、このチェックボックスをオフにする必要があります。

  6. [S3 bucket name (S3 バケット名)] には、次のいずれかを選択します。

    注記

    仮想ホスティング形式のバケットを使用するときは、バケット名にピリオド (「.」) を使用しないことをお勧めします。Amazon S3 バケット命名規則の詳細については、Amazon Simple Storage Service ユーザーガイドの「バケットの制約と制限」を参照してください。

    • [Choose a bucket name from the list (リストからバケット名を選択)]: アカウントに既に作成された Amazon S3 バケットを選択してセッションログデータを保存します。

    • [Enter a bucket name in the text box (テキストボックスにバケット名を入力)]: セッションログデータを保存するためにアカウントに既に作成されている Amazon S3 バケットの名前を入力します。

  7. (オプション) [S3 key prefix (S3 キープレフィックス)] には、選択したバケットにログを保存する既存のフォルダまたは新しいフォルダの名前を入力します。

  8. [Save] を選択します。

Amazon S3 および Amazon S3 バケットの使用の詳細については、Amazon Simple Storage Service ユーザーガイドおよび Amazon Simple Storage Service ユーザーガイドを参照してください。

Amazon CloudWatch Logs を使用したセッションデータのログ記録 (コンソール)

Amazon CloudWatch Logs を使用すると、さまざまな のログファイルをモニタリング、保存、およびアクセスできます AWS のサービス。デバッグおよびトラブルシューティングの目的で、セッションログデータを CloudWatch Logs ロググループに送信できます。デフォルトのオプションでは、KMS キーを使用してログデータを暗号化して送信するように設定されていますが、暗号化の有無にかかわらずデータをロググループに送信できます。

セッションの最後にセッションログデータを CloudWatch Logs ロググループに送信するように を設定するには AWS Systems Manager Session Manager、次の手順に従います。

注記

を使用して AWS CLI 、セッションデータの送信先の CloudWatch Logs ロググループを指定または変更することもできます。詳細については、Session Manager 設定の更新 (コマンドライン) を参照してください。

Amazon CloudWatch Logs を使用してセッションデータをログに記録するには (コンソール)
  1. https://console.aws.amazon.com/systems-manager/ で AWS Systems Manager コンソールを開きます。

  2. ナビゲーションペインで、Session Manager を選択します。

  3. [設定] タブを選択してから、[編集] を選択します。

  4. CloudWatch ログ記録 を有効にするの横にあるチェックボックスをオンにします。

  5. [セッションログをアップロード] オプションを選択します。

  6. (推奨) 暗号化された CloudWatch ロググループのみを許可する の横にあるチェックボックスをオンにします。このオプションが有効になっている場合、ログデータはロググループに指定されたサーバー側の暗号化キーを使用して暗号化されます。 CloudWatch Logs に送信されるログデータを暗号化しない場合は、このチェックボックスをオフにします。ロググループで暗号化が有効になっていない場合も、このチェックボックスをオフにする必要があります。

  7. CloudWatch ログ で、セッション CloudWatch ログをアップロード AWS アカウント する の既存のロググループを指定するには、次のいずれかを選択します。

    • [Choose a log group from the list (リストからロググループを選択する)]: アカウントに既に作成されたロググループを選択してセッションログデータを保存します。

    • [Enter a log group name in the text box (テキストボックスにロググループ名を入力)]: セッションログデータを保存するためにアカウントにすでに作成されているロググループの名前を入力します。

  8. [Save] を選択します。

CloudWatch ログの使用の詳細については、「Amazon CloudWatch Logs ユーザーガイド」を参照してください。

CloudWatch ログと Amazon S3 でのSession Managerアクティビティログ記録の無効化

Systems Manager コンソールまたは を使用して AWS CLI 、アカウントのセッションアクティビティのログ記録を無効にできます。

セッションアクティビティロギングを無効にするには (コンソール)
  1. https://console.aws.amazon.com/systems-manager/ で AWS Systems Manager コンソールを開きます。

  2. ナビゲーションペインで、Session Manager を選択します。

  3. [設定] タブを選択してから、[編集] を選択します。

  4. CloudWatch ログ記録を無効にするには、CloudWatch ログ記録セクションで、有効化チェックボックスをオフにします。

  5. S3 ロギングを無効にするには、[S3 ロギング] セクションで、[有効化] チェックボックスをオフにします。

  6. [保存] を選択します。

セッションアクティビティロギングを無効にするには (AWS CLI)

を使用してセッションアクティビティのログ記録を無効にするには AWS CLI、「」の手順に従いますSession Manager 設定の更新 (コマンドライン)

JSON ファイルで、s3BucketNamecloudWatchLogGroupName の入力には値が含まれないようにしてください。例:

"inputs": { "s3BucketName": "", ... "cloudWatchLogGroupName": "", ... }

代わりに、S3*cloudWatch* の入力をすべて削除してロギングを無効化することもできます。