プライベートサブネットのLinux EC2で、サポート対象の最新SSM Agentが稼働している。ノードのIAMロール、担当者のセッション権限、必要なHTTPS送信経路は準備済みで、踏み台と受信TCP 22は使わない。
通常の対話シェルで実行したコマンドと出力をCloudWatch Logsへ保存したい。保存先のロググループ、書き込み権限と通信経路を準備し、SSH接続やポート転送は対象にしない。
要件を満たす接続方式と設定はどれか。
通常シェルのセッションログを設定し、受信SSHなしの接続と実際のコマンド・出力保存を確認する。
詳細解説
接続権限やログ書き込み権限があるだけでは保存設定の代わりにならない。セッション設定と実際のログ配信を確認する。
CloudTrailのAPI操作履歴とシェル内の操作内容は別である。開始・終了履歴だけではコマンドと出力の保存要件を満たさない。
Session Manager経由でもSSHの操作内容のログ保存は提供されない。SSHをトンネルとして通す接続と通常シェルのログを区別する。
準備済みAgent・IAM・送信経路で受信SSHなしのシェルを開始し、設定した保存先でコマンドと出力を確認する。接続可能なだけで操作内容が自動保存されたとは判断しない。
公式資料で確認する
以下の項目を公式資料の記述と照合して確認します。
承認された検証ノードでAgent・IAM・HTTPS送信経路とセッション設定を確認する。通常シェルで識別できるテスト文字列を出力し、CloudWatch Logsのコマンド・出力とCloudTrailのStartSession・TerminateSessionを別々に確認する。
参考にした公式資料
確認できる内容
受信TCP 22なしで通常シェルへ接続でき、テストのコマンドと出力が指定ロググループに保存される。SSHやポート転送の内容ログ、開始履歴だけで操作内容の保存ができたとは扱わない。
理解のポイント
- Session Manager
- セッションログ
- SSM Agent
確認時の注意
- 確認環境: AWS公式SOA-C03試験ガイドとAWS公式ドキュメントの確認
- AWS公式SOA-C03試験ガイドと各サービスの公式ドキュメントを確認する。
基礎のおさらい
Agent・権限・送信経路を確認する
対応OSとAgent、ノードのIAMロール、担当者のセッション権限を確認する。Agentがssm・ssmmessagesのRegional endpointへHTTPS 443で接続する。プライベートノードでもVPC EndpointまたはNAT等の経路・DNSが必要であり、受信SSHが不要でも送信通信は必要である。ログ保存先の権限と経路も別に準備する。
セッション方式と内容ログの範囲を区別する
通常の対話シェルではセッション設定に応じてコマンドと出力をS3またはCloudWatch Logsへ保存できる。本問は通常シェルを選び保存を有効にする。SSHやポート転送のセッション内容ログは提供されないため、同じ仕組みで全方式の操作内容が記録されるとは説明しない。
API履歴と実際の保存内容を照合する
CloudTrailのStartSession・TerminateSessionはAPI操作の証跡であり、シェルの全コマンドと出力の記録ではない。接続成功、保存設定、実際に配信されたテスト文字列を別々に確認する。Linuxのログが切れる場合はscreenの導入も公式要件に照らして確認する。