SSH を介して Session Manager で接続した際にセッションの接続ログは取得できますか?

SSH を介して Session Manager で接続した際にセッションの接続ログは取得できますか?

Clock Icon2024.11.07

困っていた内容

Session Manager のセッションロギング機能を使って、実行コマンドの履歴を取得したいです。
Session Manager 越しに SSH 接続している場合や、Session Manager を使ってポートフォワードでの SSH 接続をしている場合でも、セッションログは取得できますか?

どう対応すればいいの?

残念ながら、下記に記載の仕様により取得できません。

セッションロギングの有効化と無効化 - AWS Systems Manager

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

代替案としては、コマンド履歴が確認可能な OS 上のログを CloudWatch Agent で収集する方法が考えられます。
取得対象のログファイルには、.bash_history や、script コマンドを使ってコマンド履歴を出力したファイルなどが利用可能です。対象の環境や要件に合わせて検討してください。

参考情報

Share this article

facebook logohatena logotwitter logo

© Classmethod, Inc. All rights reserved.