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
Satoshi Kaneyasu
April 26, 2025
Programming
1
95
そもそもAWS Configの設定変えられたらどうするの? Amazon EventBridgeでマネコンの操作を監視する
Satoshi Kaneyasu
April 26, 2025
Tweet
Share
More Decks by Satoshi Kaneyasu
See All by Satoshi Kaneyasu
プロジェクトマネージャーがGitHub Copilotのエージェンモードを使い始めました
satoshi256kbyte
1
75
変化の激しい時代における、こだわりのないエンジニアの強さ
satoshi256kbyte
1
1.4k
密集、ドキュメントのコロケーション with AWS Lambda
satoshi256kbyte
1
260
【PHP】破壊的バージョンアップと戦った話〜決断と説得
satoshi256kbyte
0
220
今更聞けないセキュリティ用語の基礎知識 2025新春
satoshi256kbyte
0
170
AWS re:Invent 2024個人的まとめ
satoshi256kbyte
0
290
今年一番支援させていただいたのは認証系サービスでした
satoshi256kbyte
1
560
おもにクラウドの話してます#4 OPスライド
satoshi256kbyte
0
70
AWS認定資格を勉強した先に何があったか
satoshi256kbyte
2
290
Other Decks in Programming
See All in Programming
Practical Domain-Driven Design - Workshop at NDC 2025
mufrid
0
120
インターフェース設計のコツとツボ
togishima
2
200
〜可視化からアクセス制御まで〜 BigQuery×Looker Studioで コスト管理とデータソース認証制御する方法
cuebic9bic
0
210
コードに語らせよう――自己ドキュメント化が内包する楽しさについて / Let the Code Speak
nrslib
4
490
External SecretsのさくらProvider初期実装を担当しています
logica0419
0
190
Rethinking Data Access: The New httpResource in Angular
manfredsteyer
PRO
0
190
TypeScript だけを書いて Tauri でデスクトップアプリを作ろう / Tauri with only TypeScript
tris5572
2
470
データベースの技術選定を突き詰める ~複数事例から考える最適なデータベースの選び方~
nnaka2992
3
3.9k
❄️ tmux-nixの実装を通して学ぶNixOSモジュール
momeemt
1
110
AWS診断200件の分析から見る頻出指摘と対策
shoodagiri
0
110
型安全なDrag and Dropの設計を考える
yudppp
5
620
CRUD から CQRS へ ~ 分離が可能にする柔軟性
tkawae
0
200
Featured
See All Featured
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
45
9.5k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
5
600
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
122
52k
The Cult of Friendly URLs
andyhume
78
6.4k
StorybookのUI Testing Handbookを読んだ
zakiyama
30
5.7k
The Straight Up "How To Draw Better" Workshop
denniskardys
233
140k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Building an army of robots
kneath
306
45k
Scaling GitHub
holman
459
140k
Into the Great Unknown - MozCon
thekraken
38
1.8k
Connecting the Dots Between Site Speed, User Experience & Your Business [WebExpo 2025]
tammyeverts
1
56
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