Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
そもそもAWS Configの設定変えられたらどうするの?Amazon EventBridg...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Satoshi Kaneyasu
April 26, 2025
Programming
1
180
そもそもAWS Configの設定変えられたらどうするの? Amazon EventBridgeでマネコンの操作を監視する
Satoshi Kaneyasu
April 26, 2025
Tweet
Share
More Decks by Satoshi Kaneyasu
See All by Satoshi Kaneyasu
はじめてのカスタムエージェント【GitHub Copilot Agent Mode編】
satoshi256kbyte
0
310
お客様とSIerではじめたスクラム開発(で得た学び)
satoshi256kbyte
0
98
From Pipenv to UV: Migrating to a Monorepoto Tame a Complex Repository
satoshi256kbyte
0
40
複雑化したリポジトリをなんとかした話 pipenvからuvによるモノレポ構成への移行
satoshi256kbyte
1
1.6k
ディレクトリ構成と設定ファイルから考えるSIerのVibe Coding
satoshi256kbyte
0
76
GitHubとGitLabとAWS CodePipelineでCI/CDを組み比べてみた
satoshi256kbyte
4
880
生産性の壁を越えろ! 何がなんでも計測する
satoshi256kbyte
1
63
オープンセミナー2025@広島「君はどこで動かすか?」アンケート結果
satoshi256kbyte
0
320
オープンセミナー2025@広島LT技術ブログを続けるには
satoshi256kbyte
0
220
Other Decks in Programming
See All in Programming
dchart: charts from deck markup
ajstarks
3
1k
Oxlintはいいぞ
yug1224
5
1.4k
インターン生でもAuth0で認証基盤刷新が出来るのか
taku271
0
190
コントリビューターによるDenoのすゝめ / Deno Recommendations by a Contributor
petamoriken
0
210
CSC307 Lecture 09
javiergs
PRO
1
840
プロダクトオーナーから見たSOC2 _SOC2ゆるミートアップ#2
kekekenta
0
230
360° Signals in Angular: Signal Forms with SignalStore & Resources @ngLondon 01/2026
manfredsteyer
PRO
0
140
[KNOTS 2026登壇資料]AIで拡張‧交差する プロダクト開発のプロセス および携わるメンバーの役割
hisatake
0
300
CSC307 Lecture 05
javiergs
PRO
0
500
Package Management Learnings from Homebrew
mikemcquaid
0
230
要求定義・仕様記述・設計・検証の手引き - 理論から学ぶ明確で統一された成果物定義
orgachem
PRO
1
250
2026年 エンジニアリング自己学習法
yumechi
0
140
Featured
See All Featured
Design in an AI World
tapps
0
150
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
11
830
Information Architects: The Missing Link in Design Systems
soysaucechin
0
780
Balancing Empowerment & Direction
lara
5
900
Art, The Web, and Tiny UX
lynnandtonic
304
21k
Fireside Chat
paigeccino
41
3.8k
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.9k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
32
2.1k
Game over? The fight for quality and originality in the time of robots
wayneb77
1
120
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
440
A Modern Web Designer's Workflow
chriscoyier
698
190k
Transcript
そもそもAWS Configの設定変えられ たらどうするの? Amazon EventBridgeでマネコンの 操作を監視する 2024.04.27 JAWS-UG広島 第22回勉強会 SATOSHI
KANEYASU
2 自己紹介 氏名:兼安 聡 所属:株式会社サーバーワークス アプリケーションサービス部 在住:広島(フルリモート) 担当:DevOps、技術支援、PM、SM 2025 AWS
Community Builders 2024 Japan AWS Top Engineers (Database) 2024 Japan AWS All Certifications Engineers 認定スクラムマスター PMP X:@satoshi256kbyte 実はJAWS-UGのオフラインイベントで長尺の発表をするのは今回が初めてです
3 目次 ⚫はじめに ⚫サービス公開時に気にすること ⚫AWS Configによる設定監視 ⚫AWS Config自体の設定変更を防ぐには ⚫AWS Config自体の設定変更の検知
⚫ルートユーザーのログイン検知 ⚫サンプルCloudFormationテンプレートの説明 ⚫まとめ
4 はじめに ⚫サービスを世に出そうとする時、安全性を確保できてないと公開にストップがかか ることがあります ⚫AWS Configの設定監視と、設定監視自体を無効化された時に備えてAWS Config自 体の設定変更を検知・通知する方法について紹介します ⚫本発表で登場するAWSサービスは以下の通りです ⚫AWS
Config ⚫AWS CloudTrail ⚫Amazon EventBridge ⚫Amazon SNS ⚫本発表で出てくる設定内容は、一式を構築するCloudFormationテンプレートを用意 しているので後で試したくなったら使ってみてください
サービス公開時に気にすること
6 サービス公開時に気にすること① 機能 コスト 安全 可用性 セキュリティ 適切な設定 適切な設定の維持
7 サービス公開時に気にすること② 機能 コスト 安全 可用性 セキュリティ 適切な設定 適切な設定の維持 クラウドの導入・サービスの公開
においてここが特に問われる
AWS Configによる設定監視
9 AWS Configとは ⚫AWSリソースの設定変更履歴を記録、評価、監査できるサービス ⚫AWSリソースのインベントリ管理 ⚫インベントリ=在庫 ⚫AWSアカウント上のリソースと変更履歴を管理する ⚫コンプライアンス評価 ⚫リソースの設定がルールに準拠しているチェックして通知に繋げる
10 AWS Configの有効化 ⚫AWS Configの初期画面には2つのボタンがあります ⚫2つのボタンの大きな違いは、途中でコンプライアンス評価ルールの設定を挟むかど うかです
11 AWS Configの無効化 ⚫記録を停止すると、変更の検知や評価が動作しなくなります
12 AWSリソースのインベントリ管理 ⚫リソースの一覧や変更履歴を見ることができます
13 コンプライアンス評価 – ルールの設定 ⚫AWS Configはコンプライアンス評価のルールが設定できます ⚫ルールはマネージドと自作が選べます ⚫例えば、セキュリティグループがSSHのポート(22)が開いていたら非準拠扱いに するルールがあります
14 コンプライアンス評価 – 修復アクション ⚫ルールには修復アクションが設定できます ⚫例えば、セキュリティグループの修復アクションはマネージドのものが存在します ⚫これを使用すると、セキュリティグループでSSHのポートが開けられたら自動で閉 じる(厳密には削除)ようなことができます ⚫ (正直使ったことはありませんが・・・)
15 コンプライアンス評価 – EventBridgeのルールと通知設定 ⚫EventBridgeのルールを作ればコンプライアンス評価の通知が作れます ⚫ただし、状態が変わってないというイベントはないので注意してください
AWS Config自体の設定変更を防ぐ には
17 AWS Config自体の設定変更の検知 ⚫AWS Config自体の設定変更はAWS CloudTrailに記録されます ⚫CloudTrailとEventBridgeのルールで、 AWS Config自体の設定変更は検知すること ができます
18 AWS CloudTrailのイベントレコード ⚫AWS Config自体の設定変更はAWS CloudTrailに記録されます
19 EventBridgeのルールとイベントレコードのJSONビュー ⚫CloudTrailのイベントレコードのJSONビューで内容を見ることができます ⚫JSONビューを元にEventBridgeのルールで引っ掛けるようにします
20 更新系イベントを拾い、一部イベントを除外する ⚫“readOnly”: [false]で更新系イベントだけを拾っています ⚫その上で、コンプライアンス評価による書き込みイベントだけを除外します ⚫コンプライアンス評価は、評価結果の書き込みが発生する更新系イベントに分類さ れる上、日々大量に発生する可能性のあるイベントで、ノイズになるからです
21 通知メッセージの設定
22 通知メッセージのサンプル
23 ルートユーザーのログイン検知 ⚫ルートユーザーのログインもCloudTrail+EventBridgeのルールで検知することがで きます ⚫しかし、ルートユーザーのログインはバージニアリージョンのCloudTrailに記録され るので、EventBridgeのルールもバージニアリージョンに作る必要があります ⚫ 余談ですが、一般ユーザーのログインイベントはもっと複雑です・・・
24 CloudTrailにおけるルートユーザーのログインイベント ⚫ルートユーザーのログインイベントはバージニアリージョンのCloudTrailにしか現れ ません
25 EventBridgeのルールとイベントレコードのJSONビュー ⚫ルートユーザーのログインイベントも、JSONビューを元にEventBridgeのルールで 引っ掛けるようにします
26 通知メッセージのサンプル
サンプルCloudFormationテンプ レートの説明
28 サンプルCloudFormationテンプレートの説明 ⚫サンプルのCloudFormationテンプレートを用意しました ⚫こちらのGitHub Gistからダウンロードできます ⚫解凍すると3つのテンプレートができます 1. config_ssh_security_rule.yaml(コンプライアンス評価 – 修復アクションのサンプル)
2. config_item_change_rule.yaml(AWS Config自体の設定変更の検知サンプル) 3. root_user_signin_rule_us_east_1.yaml(ルートログインの検知サンプル) ⚫テンプレートは3つ用意しています。 ⚫ 1つ目・2つ目は任意のリージョンで実行してください ⚫ AWS Configをゼロから始めるイメージのテンプレートなので、普段使わないリージ ョンの方が試しやすいです ⚫ 3つ目はバージニアリージョンで実行してください
29 サンプルCloudFormationテンプレートの実行方法① ⚫テンプレートはAWSマネジメントコンソールのCloudFormationから実行します
30 サンプルCloudFormationテンプレートの実行方法② ⚫3つのテンプレートは全てパラメータにメールアドレスがあります ⚫入力して実行すると、サブスクリプションの確認メールが飛ぶので中のリンクをク リックして確認します ⚫CloudFormationの実行ができたら、リソースタブからできたリソースに飛べます
まとめ
32 まとめ ⚫サービスを世に出そうとする時、安全性を確保できてないと公開にストップがかか ることがあります ⚫AWS Configを使うと設定監視ができます ⚫AWS Config自体の設定変更はCloudTrail+EventBridgeで検知・通知ができます ⚫設定変更の対策は、AWS OrganizationsでSCPを組むのがより良いと思いますが、
Organizationsの導入はそれはそれで大変なのでまずはできることから始めるのがよ いと思います ⚫今できることをやり、まずは世に出すことが大事です
None