AWS Configを使ってみて出来ることを理解する

2026年6月28日

はじめに

AWSを学んでいると、「リソースの設定が知らないうちに変わっていた」「セキュリティポリシーが守られているか確認したい」という場面に出くわします。そんなときに役立つのが AWS Config です。

本記事では、AWS Configで具体的に何ができるのかを、実際のコンソール画面をもとに解説します。AWS認定試験の学習中に「なんとなくAWSサービスの監査・監視ができるサービス」という印象を持っている方に向けて、実際の動作をイメージしやすいよう説明します。

AWS Configでできること — 主な2つの機能

AWS Configの機能は大きく2つに分けられます。

  • リソースの変更履歴管理:AWSリソースに対してどのような変更が行われたかを記録・追跡する
  • コンプライアンスルールの設定:「パブリックIPを持つEC2を禁止」「30日以上停止しているEC2を検知」など、運用ポリシーに沿ったルールを定義し、違反を自動検知する

以下でそれぞれを詳しく紹介します。

機能①:AWSリソースの変更履歴を管理する

この機能を使うには、まず AWS Config の設定メニューを開き、「記録を有効化」にチェックを入れます。監視対象とするサービスはここで選べるため、EC2・Lambda・DynamoDB など必要なものだけを指定することも可能です。

AWS Config レコーダーメニュー — 記録を有効化のチェックボックス

一般設定メニューでは、どのリソースを管理対象にするかを細かく指定できます。今回はEC2のルール設定をメインに行いますが、筆者の環境では Lambda と DynamoDB も合わせて設定しています。

AWS Config 一般設定 — リソースの記録対象を選択する画面

配信方法のメニューでは、AWS Configのデータ(設定スナップショットや変更履歴)の保存先となる S3 バケットと、通知に使う SNS を設定できます。

AWS Config 配信方法設定 — S3バケットとSNSの設定画面

設定が完了したら「保存」をクリックします。これで設定は完了です。

「リソース」ページへ移動すると、記録対象としたリソースの一覧とその現在の状態を確認できます。なお、変更履歴を残すためには AWS Config の設定で対象リソースを指定しておく必要がある点に注意してください。

AWS Config リソース一覧 — 記録対象リソースと現在の状態

各リソースをクリックすると詳細が表示され、その中の 「リソースタイムライン」 をクリックすることで、そのリソースに対してどのような変更が行われてきたかを時系列で確認できます。

AWS Config リソース詳細画面 — リソースタイムラインボタン
AWS Config リソースタイムライン — 時系列の変更履歴一覧

以上がリソースの設定情報管理機能の説明です。

機能②:コンプライアンスルールを設定して違反を自動検知する

次は、AWSのサービス・リソースに対してルールを設定し、そのルールに違反していないかを自動チェックする機能です。メニューの「ルール」を開きます。最初はルールが何もない状態ですので、ルールを作成していきます。

AWS Config ルールメニュー — ルールが空の初期状態

どのルールを指定するかは以下の画面から選択できます。EC2 でフィルタするだけでも膨大な数のマネージドルールが用意されているため、事前に AWS公式のマネージドルール一覧 を確認してから適用するルールを決めておくのがおすすめです。

AWS Config マネージドルール一覧 — EC2関連ルールのフィルタ結果

今回は「ルール違反になりやすいが守りやすい」ルールを試したいので、「ec2-stopped-instance」 を選びました。これはデフォルトで 30日間起動していない EC2 インスタンスを違反として評価するルールです。

AWS Config ルール選択 — ec2-stopped-instance を選択している画面

ルールの名前などを設定します。わかりやすいのでそのままにします。

AWS Config ルール名設定 — ec2-stopped-instance のルール名入力画面

評価のトリガーを設定します。今回は手動で評価するので特に気にしませんが、デフォルトの24時間としておきます。

AllowedDays パラメータは「EC2 インスタンスが何日間起動していない場合に違反とするか」を指定するもので、デフォルトの30日のままにします。

AWS Config ルールトリガー設定 — 評価タイミングとAllowedDaysパラメータ

補足:トリガーの設定内容はルールによって異なります。たとえば「パブリック IP がインスタンスに紐づいていないか」をチェックする 「ec2-instance-no-public-ip」 ルールでは、時間ではなくリソースの変更タイミングをトリガーに指定できます。

ec2-instance-no-public-ip ルールのトリガー設定 — リソース変更タイミングを選択する画面

設定が終わったら確認画面に進みます。

AWS Config ルール作成確認画面 — 設定内容のレビュー

これでルールの作成は完了です。

AWS Config ルール作成完了 — ルール一覧にec2-stopped-instanceが追加された状態

ルール作成直後は自動で評価が走ります。少し待つと、コンプライアンスの項目に評価結果が表示されました。実際に EC2 インスタンスが3台あり、うち1台を1か月以上停止させていたため、この結果は正しいです。

AWS Config コンプライアンス評価結果 — ルール違反のEC2インスタンスが検出された状態

ルールの詳細画面では、どの EC2 インスタンスがルール違反をしているかを確認できます。

AWS Config ルール詳細 — ルール違反しているEC2インスタンスの一覧

次に EC2 を一時起動して、ルールの評価結果がどう変わるかを確認します。EC2 を1台起動します。

EC2 インスタンスの起動 — 停止していたインスタンスを起動した状態

設定済みのルールを再評価する場合は、対象ルールを選択して「アクション」メニューから「再評価」をクリックします。

AWS Config ルール再評価 — アクションメニューから再評価を選択

再評価の結果、起動したインスタンスについてはルール準拠となっていることが確認できました。

AWS Config 再評価結果 — 起動したEC2インスタンスがルール準拠に変わった状態

これでルールの設定方法と、その結果の確認方法の説明も完了です。

まとめ:AWS Configで実現できるAWS環境のガバナンス管理

本記事では、AWS Config の主な2つの機能を実際のコンソール画面をもとに紹介しました。

  • リソースの変更履歴管理:「記録を有効化」した上でリソースを指定すると、リソースタイムラインでいつ・どんな変更が行われたかを追跡できる
  • コンプライアンスルールの設定:マネージドルールを使うことで、停止中の EC2 検知やパブリック IP 禁止などのポリシーを手軽に運用できる。ルール作成後は自動評価が走り、違反リソースを即座に把握できる

企業でのAWS運用やAWS認定試験の学習において、AWS Configの役割を理解する際の参考になれば幸いです。