AWS Systems Manager コンプライアンスは、AWS Systems Managerの機能の一つです。
ステートマネージャーやパッチマネージャーと組み合わせて利用することで、結果を可視化し状況を瞬時に判断することが可能です。これにより、後続対応が早くなり、運用負荷の軽減にもつながります。
本記事では、AWS Systems Manager コンプライアンスの概要について紹介します。
AWS Systems Manager
AWS Systems Managerは、安全かつスケーラブルにAWS環境を運用するサービスです。今回メインで取り上げるコンプライアンス以外にも、様々な機能があります。
No | カテゴリ | 機能 | 説明 |
1 | Quick Setup(高速セットアップ) | Quick Setup | 頻繁に使用するAWSのサービスと機能を推奨されるベストプラクティスを使用して設定可能 |
2 | 運用管理 | エクスプローラー | 利用しているAWSリソースの情報を統合した、カスタマイズ可能なダッシュボードを提供 |
OpsCenter | AWSリソースに関する問題の確認/調査/解決を一元的に実施 | ||
CloudWatchダッシュボード | CloudWatchのコンソールにあるダッシュボード | ||
インシデントマネージャー | インシデント発生時の対応プランやエスカレーション先の連絡を登録できる | ||
3 | アプリケーション管理 | アプリケーションマネージャー | CloudFormation/ECS/EKSの状態が確認可能 |
AppConfig | EC2/Lambda/コンテナなどにデプロイするアプリや環境変数の設定を事前決定しておく | ||
パラメータストア | パスワード/DB文字列の設定データや機密情報を保存し外部アプリケーションから参照 | ||
4 | 変更管理系 | Change Manager | アプリケーション設定やインフラストラクチャに対する運用上の変更に確認や承認を行う |
オートメーション | Machine Imagesの作成/更新,OSパッチ又はアプリ更新プログラムの適用を自動化 | ||
Change Calendar | EventBridgeと連携してリソースの起動停止スケジューリングが可能 | ||
メンテナンスウィンドウ | 管理やメンテナンスタスクを実行するためのスケジュール設定が可能 | ||
5 | ノード管理系 | フリートマネージャー | SSM AgentがインストールされたEC2及びオンプレサーバを一元管理できる機能 |
コンプライアンス | マネージドインスタンスに対してスキャン実行しパッチ適用が正しく行われているか・否かの把握が可能 | ||
イベントリ | マネージドインスタンスのアプリケーション/ファイル/適用パッチなどに関するデータの収集 | ||
ハイブリッドアクティベーション | オンプレサーバや仮想マシン等のデバイスを管理するための登録インターフェースを提供 | ||
セッションマネージャー | WindowsやEC2にSSHやRDPをしないで操作可能なインターフェース | ||
Run Command | 事前にコマンドを定めて特定のサーバに実行、セキュアなサーバ管理可能 | ||
ステートマネージャー | マネージドインスタンスの状態を定義し設定内容を制御できる | ||
パッチマネージャー | 選択したOSとアプリケーション両方に対するパッチを自動適用できる | ||
ディストリビューター | 独自のソフトウェアをパッケージ化し、マネージドインスタンスに適用できる | ||
6 | 共有リソース | ドキュメント | JSONやYAML形式でステートマネージャーやRunCommandでいつ何を行うか定義できる |
※ 上記表の引用元はこちらです
コンプライアンスとは
AWS Systems Managerで管理しているリソースの中で、コンプライアンスに準拠していないものを特定することが可能なダッシュボードです。
デフォルトでは、以下がAWS Systems Managerのコンプライアンス機能として定義済みとなっています。
- パッチ適用状況(Patch)
- SSMパッチマネージャーのScan結果を集計
- SSM Explorerのダッシュボードにも
- ステートマネージャーの関連付け状況(Association)
- SSMステートマネージャーの稼働状況を集計
また、「ソフトウェアXのバージョン4.0以外のインスタンスは非準拠とする」といったカスタムコンプライアンスタイプの定義も可能です。
コンプライアンスの利用に料金はかかりません。
コンプライアンスの確認方法
[非常事態], [高], [中<], [低], [未指定], [全て]など重要度の設定を、ステートマネージャーやパッチマネージャーの作成画面から設定が可能です。
画面下部にはコンプライアンス対象のリソースが表示されます。
コンプライアンスの重要度別にリソースを確認したい場合は、対象の重要度をクリックすると、画面下部に選択した重要度の対象リソースが表示されます。
また、リソースIDをクリックするとリソースの詳細画面に遷移するので、より詳細に状況を確認することが可能です。
AWS Configで関連付けのコンプライアンス履歴を追跡
AWS Configを利用することで、パッチ適用の関連付けによるコンプライアンス履歴と、変更の追跡を表示することが可能です。
docs.aws.amazon.com
AWS Configのリソース設定
AWS Configで以下リソースを有効にする必要があります。
- SSM:PatchCompliance
- SSM:AssociationCompliance
リソース有効の手順は以下リンクを参照してください。
コンプライアンスデータの表示
AWS Config画面からコンプライアンス履歴を確認することができます。
リソース間の関係と設定の履歴が含まれるため、時間の経過と共に設定と関係がどのように変わるかを確認できます。
おわりに
特に、既にステートマネージャーやパッチマネージャーを利用している場合は、コンプライアンスを使うと複雑な設定無しで簡単に状況が確認できるのでお勧めです。
また、Configなど他AWSサービスと組み合わせることで、より詳細な情報を可視化することも可能です。コンプライアンスの標準機能だけでは足りない場合は、組み合わせも試してみてください。