SSMのセッションマネージャのアイドルタイムアウトとストリームログ出力を試してみた
AWS システムズマネージャ (AWS SSM) のセッションマネージャがアップデート。 アイドル状態のセッションタイムアウト時間の変更と、CloudWatch Logs への ストリームセッションログ出力が可能になりました。
その動作について試す機会がありましたので、紹介させていただきます。
SSM設定
AWS SSM ダッシュボード、セッションマネージャの画面を利用します。
タイムアウト
アイドルセッションのタイムアウト時間、デフォルトの20分を、1~60分に変更可能になりました。
ログ設定
これまでの セッションマネージャも CloudWatch Logs へログ出力する利用が可能でしたが、セッション終了後に操作ログが転送される仕様でした。
今回のアップデートにより、コマンド実行操作毎にログ記録が行われる様になりました。
CloudWatch Logs
ログ出力先として利用するロググループを新規作成して利用しました。
任意のロググループ名と保持期間を指定、暗号化の設定は省略しました。
SSM
CloudWatch logging を以下の指定で設定しました。
- CloudWatch logging を「有効」
- 暗号化の強制 (Enforce encryption) は「無効」
- 先に作成したロググループを出力先として指定
EC2
セッションマネージャー動作確認を行うEC2は、以下の環境を利用しました。
- OS: Amazon Linux 2 AMI (HVM),
- AMI: ami-0ede32f8db20757b3
- amazon-ssm-agentバージョン: 3.0.356.0
- EC2ロール: 管理ポリシー「AmazonSSMManagedInstanceCore」をアタッチ済
確認
セッションマネージャを利用して検証対象のEC2インスタンスに接続、以下のコマンド操作を実施しました。
sh-4.2$ w 13:50:27 up 1 day, 18:24, 0 users, load average: 0.07, 0.03, 0.00 USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT sh-4.2$ echo "hello world" hello world
ログ
セッション履歴より「CloudWatch Logs」を指定
ログ出力先として指定したロググループに、ほぼリアルタイムで操作ログが確認できました。
ログ抜粋(テキスト)
{ "eventVersion": "1.0", "eventTime": "2020-11-19T13:50:27Z", "awsRegion": "ap-northeast-1", "target": { "id": "i-00000000000000000" }, "userIdentity": { "arn": "arn:aws:sts::000000000000:assumed-role/0000/0000" }, "runAsUser": "ssm-user", "sessionId": "0000-00000000000000000", "sessionData": [ "sh-4.2$ sh-4.2$ w", " 13:50:27 up 1 day, 18:24, 0 users, load average: 0.07, 0.03, 0.00", "USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT" ] } { "eventVersion": "1.0", "eventTime": "2020-11-19T13:50:31Z", "awsRegion": "ap-northeast-1", "target": { "id": "i-00000000000000000" }, "userIdentity": { "arn": "arn:aws:sts::000000000000:assumed-role/0000/0000" }, "runAsUser": "ssm-user", "sessionId": "0000-00000000000000000", "sessionData": [ "sh-4.2$ echo hello", "hello" ] }
タイムアウト
セッションマネージャで接続したターミナルを無操作で放置、アイドルタイムアウトの指定時間が経過した後、強制切断される事が確認できました。
まとめ
SSM、セッションマネージャのアップデートにより、PCI DSS などのセキュリティ指針に準拠した利用が実現しやすくなりました。
また、操作ログのストリーミング出力が可能になった事で、ニアリアルタイムな作業内容の把握や操作ログの回収漏れを抑制する効果も期待できると思われますので、ご活用ください。